/** Shopify CDN: Minification failed

Line 3606:11 Expected identifier but found whitespace
Line 3606:12 Unexpected "not("

**/
:root {
    --color-background: var(--color-base-background);
    --color-background-2: var(--color-base-background);
    --color-foreground: var(--color-base-text);
    --color-border: var(--color-foreground)/ 0.1;
    --color-border-dark: var(--color-foreground)/ 0.4;
    --color-border-light: var(--color-foreground)/ 0.06;
    --color-highlight: var(--color-base-highlight);
    --color-button-background: var(--color-base-button);
    --color-button-gradient: var(--color-base-button-gradient);
    --color-button-border: var(--color-base-button);
    --color-button-text: var(--color-base-button-text);
    --font-normal: 400;
    --font-medium: 500;
    --font-bold: 700;
    --font-family-01: 'Univers LT Pro', sans-serif;
    --font-family-02: 'Univers LT Pro', sans-serif;
    --font-family-03: 'Univers LT Pro', sans-serif;
    --color-title-01: #FFDF97;
    --animation-nav: 0.5s cubic-bezier(0.6, 0, 0.4, 1);
    --animation-primary: 0.5s cubic-bezier(0.3, 1, 0.3, 1);
    --animation-smooth: 0.7s cubic-bezier(0.7, 0, 0.3, 1);
    --animation-fast: 0.3s cubic-bezier(0.7, 0, 0.3, 1);
    --animation-short: 0.2s cubic-bezier(0.7, 0, 0.3, 1);
    --fluid-2xl-to-4xl: clamp(var(--text-2xl), 0.6307rem + 1.3636vw, var(--text-4xl));
    --fluid-xl-to-3xl: clamp(var(--text-xl), 0.4966rem + 1.1818vw, var(--text-3xl));
    --fluid-lg-to-2xl: clamp(var(--text-lg), 0.9722rem + 0.4444vw, var(--text-2xl));
    --fluid-base-to-xl: clamp(var(--text-base), 0.873rem + 0.3175vw, var(--text-xl));
    --fluid-base-to-2xl: clamp(var(--text-base), 0.746rem + 0.6349vw, var(--text-2xl));
    --fluid-sm-to-lg: clamp(var(--text-sm), 0.748rem + 0.3174vw, var(--text-lg));
    --fluid-sm-to-base: clamp(var(--text-sm), 0.8115rem + 0.1587vw, var(--text-base));
    --fluid-xs-to-sm: clamp(var(--text-xs), 0.7297rem + 0.1013vw, var(--text-sm));
    --border-radius: clamp(var(--sp-4), 1.578vw, var(--sp-7d5));
    --border-radius-medium: calc(clamp(1em, 1.7vw, 1.7em)*1.2);
    --border-radius-small: calc(clamp(1em, 1.7vw, 1.7em)*0.5);
    --rounded-full: 9999px;
    --input-height: var(--sp-13);
    --input-padding-inline: var(--sp-6d5);
    --transform-logical: 1;
    --transform-origin-start: left;
    --transform-origin-end: right;
    --text-h0: var(--sp-16);
    --text-h1: var(--sp-9);
    --text-h2: var(--sp-6);
    --text-h3: var(--sp-5);
    --text-h4: var(--sp-4d5);
    --text-h5: var(--sp-4);
    --text-h6: var(--sp-4d5);
    --title-sm: clamp(var(--text-2xl), 2.526vw, var(--text-5xl));
    --title-md: clamp(var(--sp-8), 3.368vw, var(--sp-16));
    --title-lg: clamp(var(--sp-10), 3.368vw, var(--sp-16));
    --title-xl: clamp(var(--sp-12), 7.813vw, var(--sp-20));
    --color-red-200: 254 202 202;
    --color-red-300: 252 165 165;
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-ring-inset: inset;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgba(59, 130, 246, .5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --screen-height: 100vh;
    --topbar-height: 0px;
    --header-height: 0px;
    --sticky-header-height: 0px;
    --mobile-dock-height: 0px;
    --scrollbar-width: 0px;
    --ratio-percent: 56.25%;
    @media screen and (min-width: 768px) {
        --text-h1: var(--sp-12);
        --text-h2: var(--sp-7d5);
        --text-h3: var(--sp-6);
        --text-h4: var(--sp-5d5);
        --text-h5: var(--sp-4d5);
        --text-h6: var(--sp-4);
    }
    @media screen and (min-width: 1024px) {
        --title-lg: clamp(var(--sp-12), 4.73vw, var(--sp-23));
        --title-xl: clamp(var(--sp-20), 6.737vw, var(--sp-32));
        --text-h1: var(--sp-14);
        --text-h2: var(--sp-9);
        --text-h3: var(--sp-7d5);
        --text-h4: var(--sp-6);
        --text-h5: var(--sp-5);
    }
}


  
/*! base */

@keyframes fade-in {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@keyframes fade-out {
    0% {
        opacity: 1
    }
    to {
        opacity: 0
    }
}

@keyframes appear-down {
    0% {
        opacity: 0;
        transform: translateY(-1rem)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes appear-up {
    0% {
        opacity: 0;
        transform: translateY(1rem)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

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

html {
    touch-action: manipulation;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
    font-feature-settings: normal
}

.no-js:not(html) {
    display: none !important;
}

.no-js .no-js:not(html) {
    display: block !important;
}

.no-js .no-js-hidden {
    display: none !important;
}

body {
    background-color: rgb(var(--color-background));
    color: rgb(var(--color-foreground));
    font-family: var(--font-family-01);
    font-style: var(--font-body-style);
    font-weight: var(--font-body-weight);
    font-size: var(--text-base);
    line-height: var(--font-body-line-height);
    letter-spacing: var(--font-body-letter-spacing);
    overflow-x: hidden;
    line-height: 1.7333333333;
    margin: 0;
}

hr {
    color: inherit;
    height: 0;
    border-block-end: 0;
    border-block-start: 1px solid rgb(var(--color-border));
}

abbr:where([title]) {
    text-decoration: underline dotted
}

blockquote,
.heading,
h1,
h2,
h3,
h4,
h5,
h6,
.h0,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: "UniversLTPro Bold";
    font-family: UniversLTPro Roman;
    font-style: var(--font-heading-style);
    font-weight: var(--font-heading-weight);
    letter-spacing: var(--font-heading-letter-spacing);
    line-height: var(--font-heading-line-height);
    text-transform: var(--font-heading-text-transform);
    color: rgb(var(--color-foreground));
    word-break: break-word;
}

.h0 {
    font-size: var(--text-h0);
    line-height: 1
}

.h1,
.rte h1:not(.h0, .h1, .h2, .h3, .h4, .h5, .h6) {
    font-size: var(--text-h1);
    line-height: 1.1
}

.h2,
.rte h2:not(.h0, .h1, .h2, .h3, .h4, .h5, .h6) {
    font-size: var(--text-h2);
    line-height: 1.3
}

.h3,
.rte h3:not(.h0, .h1, .h2, .h3, .h4, .h5, .h6) {
    font-size: var(--text-h3);
    line-height: 1.4
}

.h4,
.rte h4:not(.h0, .h1, .h2, .h3, .h4, .h5, .h6) {
    font-size: var(--text-h4);
    line-height: 1.4
}

.h5,
.rte h5:not(.h0, .h1, .h2, .h3, .h4, .h5, .h6) {
    font-size: var(--text-h5);
    line-height: 1.5
}

.h6,
.rte h6:not(.h0, .h1, .h2, .h3, .h4, .h5, .h6) {
    font-size: var(--text-h6);
    line-height: 1.5
}

@media screen and (max-width: 1023px) {
    .h2,
    .rte h2:not(.h0, .h1, .h2, .h3, .h4, .h5, .h6) {
        line-height: 1.1
    }
    .h3,
    .rte h3:not(.h0, .h1, .h2, .h3, .h4, .h5, .h6) {
        line-height: 1.3
    }
}

@media screen and (min-width: 768px) {
    .h1,
    .rte h1:not(.h0, .h1, .h2, .h3, .h4, .h5, .h6) {
        line-height: 1
    }
}

.rte blockquote,
.rte blockquote p {
    font-size: var(--text-h2);
    line-height: 1.3;
}

.rte blockquote {
    position: relative;
    --quote-icon-width: 48px;
    --quote-icon-height: 48px;
}

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

b,
strong {
    font-weight: bolder
}

code,
kbd,
pre,
samp {
    font-family: UniversLTPro Roman, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
    font-size: 1em
}

small {
    font-size: 80%
}

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

sub {
    inset-block-end: -.25em
}

sup {
    inset-block-start: -.5em
}

table {
    border-collapse: collapse;
    border-color: inherit;
    text-indent: 0
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font-family: "UniversLTPro Roman";
    font-size: 100%;
    font-weight: inherit;
    line-height: inherit;
    border: none;
    margin: 0;
    padding: 0
}

button,
select {
    text-transform: none
}

[type=button],
[type=reset],
[type=submit],
button {
    appearance: button;
    background-color: transparent;
    background-image: none
}

:-moz-focusring {
    outline: auto
}

:-moz-ui-invalid {
    box-shadow: none
}

progress {
    vertical-align: baseline
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    appearance: textfield;
    outline-offset: -2px
}

::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

summary {
    display: list-item
}

blockquote,
dd,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
p,
pre {
    margin: 0
}

fieldset {
    margin: 0
}

fieldset,
legend {
    padding: 0
}

menu,
ol,
ul {
    list-style: none;
    margin: 0;
    padding: 0
}

textarea {
    resize: vertical
}

[role=button],
button {
    cursor: pointer
}

:disabled {
    cursor: default
}

audio,
canvas,
embed,
iframe,
img,
object,
svg,
video {
    display: block;
    vertical-align: middle
}

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

:focus:not(:focus-visible) {
    outline: none;
}

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

.api-only {
    position: absolute;
    height: 1px;
    width: 1px
}

.pointer-events-none {
    pointer-events: none
}

.pointer-events-auto {
    pointer-events: auto
}

.visible {
    visibility: visible
}

.static {
    position: static
}

.fixed {
    position: fixed
}

.absolute {
    position: absolute
}

.relative {
    position: relative
}

.sticky {
    position: sticky
}

.box-border {
    box-sizing: border-box
}

.cursor-default {
    cursor: default
}

.cursor-pointer {
    cursor: pointer
}

.table-cell {
    display: table-cell;
}

.block {
    display: block
}

.inline-block {
    display: inline-block
}

.inline {
    display: inline
}

.flex {
    display: flex
}

.inline-flex {
    display: inline-flex
}

.grid {
    display: grid
}

.contents {
    display: contents
}

.hidden,
[hidden] {
    display: none
}

.overflow-hidden {
    overflow: hidden
}

.overflow-visible {
    overflow: visible
}

.p-0 {
    padding: 0
}

.py-0 {
    padding-block: 0;
}

.px-0 {
    padding-inline: 0;
}

.rounded-full {
    border-radius: var(--rounded-full)
}

.uppercase {
    text-transform: uppercase
}

.normal-case {
    text-transform: none
}

.text-left {
    text-align: start
}

.text-center {
    text-align: center
}

.text-right {
    text-align: end
}

.text-inherit {
    text-align: inherit
}

.text-8xl {
    font-size: var(--text-8xl);
    line-height: 1.6
}

.text-6xl {
    font-size: var(--text-6xl);
    line-height: 1.6
}

.text-5xl {
    font-size: var(--text-5xl);
    line-height: 1.6
}

.text-4xl {
    font-size: var(--text-4xl);
    line-height: 1.6
}

.text-3xl {
    font-size: var(--text-3xl);
    line-height: 1.6
}

.text-2xl {
    font-size: var(--text-2xl);
    line-height: 1.6
}

.text-xl {
    font-size: var(--text-xl);
    line-height: 1.6
}

.text-lg {
    font-size: var(--text-lg);
    line-height: 1.6
}

.text-base {
    font-size: var(--text-base);
    line-height: 1.6
}

.text-2sm {
    font-size: var(--text-2sm);
    line-height: 1.6
}

.text-sm {
    font-size: var(--text-sm);
    line-height: 1.6
}

.text-xs {
    font-size: var(--text-xs);
    line-height: 1.6
}

.text-3xs {
    font-size: var(--text-3xs);
}

.text-sm-base {
    font-size: var(--fluid-sm-to-base);
}

.text-sm-lg {
    font-size: var(--fluid-sm-to-lg);
}

.text-base-xl {
    font-size: var(--fluid-base-to-xl);
}

.text-base-2xl {
    font-size: var(--fluid-base-to-2xl);
}

.text-lg-2xl {
    font-size: var(--fluid-lg-to-2xl);
}

.text-xl-3xl {
    font-size: var(--fluid-xl-to-3xl);
}

.font-bold {
    font-weight: var(--font-bold)
}

.font-medium {
    font-weight: var(--font-medium)
}

.font-normal {
    font-weight: var(--font-normal)
}

.italic {
    font-style: italic
}

.not-italic {
    font-style: normal
}

.list-none {
    list-style-type: none
}

.list-disc {
    list-style-type: disc
}

.list-decimal {
    list-style-type: decimal
}

.list-disc,
.list-decimal {
    list-style-position: inside
}

.top-0 {
    inset-block-start: 0;
}

.top-100 {
    inset-block-start: 100%;
}

.left-0 {
    inset-inline-start: 0;
}

.left-100 {
    inset-inline-start: 100%;
}

.bottom-0 {
    inset-block-end: 0;
}

.bottom-100 {
    inset-block-end: 100%;
}

.right-0 {
    inset-inline-end: 0;
}

.right-100 {
    inset-inline-end: 100%;
}

.h-auto {
    height: auto
}

.h-full {
    height: 100%
}

.h-screen {
    height: 100vh
}

.h-fit {
    height: fit-content
}

.w-auto {
    width: auto
}

.w-full {
    width: 100%
}

.w-screen {
    width: 100vw
}

.w-fit {
    width: fit-content
}

.z-1 {
    z-index: 1
}

.z-2 {
    z-index: 2
}

.z-3 {
    z-index: 3
}

.z-10 {
    z-index: 10
}

.z-15 {
    z-index: 15
}

.z-20 {
    z-index: 20
}

.z-25 {
    z-index: 25
}

.z-30 {
    z-index: 30
}

.z-35 {
    z-index: 35
}

.z-40 {
    z-index: 40
}

.z-45 {
    z-index: 45
}

.z-50 {
    z-index: 50
}

.z-100 {
    z-index: 100
}

.max-w-full {
    max-width: 100%
}

.visible {
    visibility: visible
}

.invisible {
    visibility: hidden
}

.opacity-0 {
    opacity: 0
}

.js .js-invisible {
    visibility: hidden
}

.transform {
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

@keyframes spin {
    to {
        transform: rotate(1turn)
    }
}

.animate-spin {
    animation: spin 1s linear infinite
}

@keyframes rotator {
    0% {
        transform: rotate(0)
    }
    to {
        transform: rotate(270deg)
    }
}

.animate-rotator {
    animation: rotator 1.4s infinite linear
}

.select-none {
    user-select: none
}

.resize {
    resize: both
}

.col-span-6 {
    grid-column: span 6/span 6
}

.col-span-full {
    grid-column: 1/-1
}

.grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr))
}

.grid-cols-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr))
}

.flex-row {
    flex-direction: row;
}

.flex-row-reverse {
    flex-direction: row-reverse;
}

.flex-col {
    flex-direction: column;
}

.flex-col-reverse {
    flex-direction: column-reverse;
}

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

.flex-nowrap {
    flex-wrap: nowrap;
}

.items-start {
    align-items: flex-start;
}

.items-end {
    align-items: flex-end;
}

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

.items-baseline {
    align-items: baseline
}

.justify-start {
    justify-content: flex-start;
}

.justify-end {
    justify-content: flex-end;
}

.justify-center {
    justify-content: center;
}

.justify-between {
    justify-content: space-between;
}

.place-self-start {
    place-self: start
}

.place-self-end {
    place-self: end
}

.place-self-center {
    place-self: center
}

.justify-self-start {
    justify-self: flex-start
}

.justify-self-end {
    justify-self: flex-end
}

.justify-self-center {
    justify-self: center
}

.align-self-start {
    align-self: flex-start
}

.align-self-end {
    align-self: flex-end
}

.align-self-center {
    align-self: center
}

.align-self-stretch {
    align-self: stretch
}

.shrink {
    flex-shrink: 1
}

.shrink-0 {
    flex-shrink: 0
}

.grow {
    flex-grow: 1
}

.grow-0 {
    flex-grow: 0
}

.gap-0 {
    gap: 0
}

.gap-0d5 {
    gap: var(--sp-0d5)
}

.gap-1 {
    gap: var(--sp-1)
}

.gap-1d5 {
    gap: var(--sp-1d5)
}

.gap-2 {
    gap: var(--sp-2)
}

.gap-2d5 {
    gap: var(--sp-2d5)
}

.gap-3 {
    gap: var(--sp-3)
}

.gap-3d5 {
    gap: var(--sp-3d5)
}

.gap-4 {
    gap: var(--sp-4)
}

.gap-4d5 {
    gap: var(--sp-4d5)
}

.gap-5 {
    gap: var(--sp-5)
}

.gap-5d5 {
    gap: var(--sp-5d5)
}

.gap-6 {
    gap: var(--sp-6)
}

.gap-6d5 {
    gap: var(--sp-6d5)
}

.gap-7 {
    gap: var(--sp-7)
}

.gap-7d5 {
    gap: var(--sp-7d5)
}

.gap-8 {
    gap: var(--sp-8)
}

.gap-9 {
    gap: var(--sp-9)
}

.gap-10 {
    gap: var(--sp-10)
}

.gap-12 {
    gap: var(--sp-12)
}

.gap-14 {
    gap: var(--sp-14)
}

@media screen and (min-width: 640px) {
    .sm\:hidden {
        display: none
    }
    .sm\:block {
        display: block
    }
    .sm\:flex {
        display: flex
    }
    .sm\:flex-row {
        flex-direction: row;
    }
    .sm\:text-base {
        font-size: var(--text-base);
        line-height: 1.6
    }
    .sm\:text-sm {
        font-size: var(--text-sm);
        line-height: 1.6
    }
    .sm\:relative {
        position: relative;
    }
}

@media screen and (min-width: 768px) {
    .md\:sticky {
        position: sticky
    }
    .md\:left-0 {
        inset-inline-start: 0;
    }
    .md\:right-0 {
        inset-inline-end: 0;
    }
    .md\:overflow-hidden {
        overflow: hidden
    }
    .md\:overflow-visible {
        overflow: visible
    }
    .md\:text-left {
        text-align: start
    }
    .md\:text-center {
        text-align: center
    }
    .md\:text-right {
        text-align: end
    }
    .md\:text-inherit {
        text-align: inherit
    }
    .md\:table-cell {
        display: table-cell;
    }
    .md\:block {
        display: block
    }
    .md\:inline-block {
        display: inline-block
    }
    .md\:inline {
        display: inline
    }
    .md\:flex {
        display: flex
    }
    .md\:inline-flex {
        display: inline-flex
    }
    .md\:grid {
        display: grid
    }
    .md\:hidden {
        display: none;
    }
    .md\:col-span-5 {
        grid-column: span 5/span 5
    }
    .md\:col-span-6 {
        grid-column: span 6/span 6
    }
    .md\:col-span-7 {
        grid-column: span 7/span 7
    }
    .md\:grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
    .md\:grid-cols-12 {
        grid-template-columns: repeat(12, minmax(0, 1fr))
    }
    .md\:text-base {
        font-size: var(--text-base);
        line-height: 1.6
    }
    .md\:flex-row {
        flex-direction: row;
    }
    .md\:flex-row-reverse {
        flex-direction: row-reverse;
    }
    .md\:flex-col {
        flex-direction: column;
    }
    .md\:flex-col-reverse {
        flex-direction: column-reverse;
    }
    .md\:flex-wrap {
        flex-wrap: wrap;
    }
    .md\:flex-nowrap {
        flex-wrap: nowrap;
    }
    .md\:items-start {
        align-items: flex-start;
    }
    .md\:items-end {
        align-items: flex-end;
    }
    .md\:items-center {
        align-items: center;
    }
    .md\:justify-start {
        justify-content: flex-start;
    }
    .md\:justify-end {
        justify-content: flex-end;
    }
    .md\:justify-center {
        justify-content: center;
    }
    .md\:justify-between {
        justify-content: space-between;
    }
    .md\:shrink {
        flex-shrink: 1
    }
    .md\:grow {
        flex-grow: 1
    }
    .md\:grow-0 {
        flex-grow: 0
    }
    .md\:gap-0 {
        gap: 0
    }
    .md\:gap-1 {
        gap: var(--sp-1)
    }
    .md\:gap-1d5 {
        gap: var(--sp-1d5)
    }
    .md\:gap-2 {
        gap: var(--sp-2)
    }
    .md\:gap-3 {
        gap: var(--sp-3)
    }
    .md\:gap-4 {
        gap: var(--sp-4)
    }
    .md\:gap-5 {
        gap: var(--sp-5)
    }
    .md\:gap-6 {
        gap: var(--sp-6)
    }
    .md\:gap-7 {
        gap: var(--sp-7)
    }
    .md\:gap-7d5 {
        gap: var(--sp-7d5)
    }
    .md\:gap-8 {
        gap: var(--sp-8)
    }
    .md\:gap-9 {
        gap: var(--sp-9)
    }
    .md\:gap-10 {
        gap: var(--sp-10)
    }
    .md\:gap-12 {
        gap: var(--sp-12)
    }
    .md\:gap-14 {
        gap: var(--sp-14)
    }
    .md\:text-5xl {
        font-size: var(--text-5xl);
        line-height: 1.6
    }
    .md\:text-4xl {
        font-size: var(--text-4xl);
        line-height: 1.6
    }
    .md\:text-3xl {
        font-size: var(--text-3xl);
        line-height: 1.6
    }
    .md\:text-2xl {
        font-size: var(--text-2xl);
        line-height: 1.6
    }
    .md\:text-xl {
        font-size: var(--text-xl);
        line-height: 1.6
    }
    .md\:text-lg {
        font-size: var(--text-lg);
        line-height: 1.6
    }
    .md\:text-base {
        font-size: var(--text-base);
        line-height: 1.6
    }
    .md\:text-sm {
        font-size: var(--text-sm);
        line-height: 1.6
    }
    .md\:text-xs {
        font-size: var(--text-xs);
        line-height: 1.6
    }
    .md\:font-bold {
        font-weight: var(--font-bold)
    }
    .md\:font-medium {
        font-weight: var(--font-medium)
    }
    .md\:opacity-0 {
        opacity: 0
    }
    .md\:w-full {
        width: 100%
    }
    .md\:w-fit {
        width: fit-content
    }
}

@media screen and (min-width: 1024px) {
    .lg\:sticky {
        position: sticky
    }
    .lg\:left-0 {
        inset-inline-start: 0;
    }
    .lg\:right-0 {
        inset-inline-end: 0;
    }
    .lg\:overflow-hidden {
        overflow: hidden
    }
    .lg\:overflow-visible {
        overflow: visible
    }
    .lg\:text-left {
        text-align: start
    }
    .lg\:text-center {
        text-align: center
    }
    .lg\:text-right {
        text-align: end
    }
    .lg\:text-inherit {
        text-align: inherit
    }
    .lg\:table-cell {
        display: table-cell;
    }
    .lg\:block {
        display: block
    }
    .lg\:inline-block {
        display: inline-block
    }
    .lg\:inline {
        display: inline
    }
    .lg\:flex {
        display: flex
    }
    .lg\:inline-flex {
        display: inline-flex
    }
    .lg\:grid {
        display: grid
    }
    .lg\:hidden {
        display: none;
    }
    .lg\:col-span-5 {
        grid-column: span 5/span 5
    }
    .lg\:col-span-6 {
        grid-column: span 6/span 6
    }
    .lg\:col-span-7 {
        grid-column: span 7/span 7
    }
    .lg\:grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
    .lg\:grid-cols-12 {
        grid-template-columns: repeat(12, minmax(0, 1fr))
    }
    .lg\:text-base {
        font-size: var(--text-base);
        line-height: 1.6
    }
    .lg\:flex-row {
        flex-direction: row;
    }
    .lg\:flex-row-reverse {
        flex-direction: row-reverse;
    }
    .lg\:flex-col {
        flex-direction: column;
    }
    .lg\:flex-col-reverse {
        flex-direction: column-reverse;
    }
    .lg\:flex-wrap {
        flex-wrap: wrap;
    }
    .lg\:flex-nowrap {
        flex-wrap: nowrap;
    }
    .lg\:items-start {
        align-items: flex-start;
    }
    .lg\:items-end {
        align-items: flex-end;
    }
    .lg\:items-center {
        align-items: center;
    }
    .lg\:justify-start {
        justify-content: flex-start;
    }
    .lg\:justify-end {
        justify-content: flex-end;
    }
    .lg\:justify-center {
        justify-content: center;
    }
    .lg\:justify-between {
        justify-content: space-between;
    }
    .lg\:shrink {
        flex-shrink: 1
    }
    .lg\:grow {
        flex-grow: 1
    }
    .lg\:grow-0 {
        flex-grow: 0
    }
    .lg\:gap-0 {
        gap: 0
    }
    .lg\:gap-1 {
        gap: var(--sp-1)
    }
    .lg\:gap-1d5 {
        gap: var(--sp-1d5)
    }
    .lg\:gap-2 {
        gap: var(--sp-2)
    }
    .lg\:gap-3 {
        gap: var(--sp-3)
    }
    .lg\:gap-4 {
        gap: var(--sp-4)
    }
    .lg\:gap-5 {
        gap: var(--sp-5)
    }
    .lg\:gap-6 {
        gap: var(--sp-6)
    }
    .lg\:gap-7 {
        gap: var(--sp-7)
    }
    .lg\:gap-7d5 {
        gap: var(--sp-7d5)
    }
    .lg\:gap-8 {
        gap: var(--sp-8)
    }
    .lg\:gap-9 {
        gap: var(--sp-9)
    }
    .lg\:gap-10 {
        gap: var(--sp-10)
    }
    .lg\:gap-12 {
        gap: var(--sp-12)
    }
    .lg\:gap-14 {
        gap: var(--sp-14)
    }
    .lg\:text-5xl {
        font-size: var(--text-5xl);
        line-height: 1.6
    }
    .lg\:text-4xl {
        font-size: var(--text-4xl);
        line-height: 1.6
    }
    .lg\:text-3xl {
        font-size: var(--text-3xl);
        line-height: 1.6
    }
    .lg\:text-2xl {
        font-size: var(--text-2xl);
        line-height: 1.6
    }
    .lg\:text-xl {
        font-size: var(--text-xl);
        line-height: 1.6
    }
    .lg\:text-lg {
        font-size: var(--text-lg);
        line-height: 1.6
    }
    .lg\:text-base {
        font-size: var(--text-base);
        line-height: 1.6
    }
    .lg\:text-sm {
        font-size: var(--text-sm);
        line-height: 1.6
    }
    .lg\:text-xs {
        font-size: var(--text-xs);
        line-height: 1.6
    }
    .lg\:font-bold {
        font-weight: var(--font-bold);
    }
    .lg\:font-medium {
        font-weight: var(--font-medium);
    }
    .lg\:font-heading {
        font-weight: var(--font-heading-weight);
    }
    .lg\:opacity-0 {
        opacity: 0;
    }
    .lg\:w-full {
        width: 100%
    }
    .lg\:w-fit {
        width: fit-content
    }
}

@media screen and (min-width: 1280px) {
    .xl\:sticky {
        position: sticky
    }
    .xl\:left-0 {
        inset-inline-start: 0;
    }
    .xl\:right-0 {
        inset-inline-end: 0;
    }
    .xl\:overflow-hidden {
        overflow: hidden
    }
    .xl\:overflow-visible {
        overflow: visible
    }
    .xl\:text-left {
        text-align: start
    }
    .xl\:text-center {
        text-align: center
    }
    .xl\:text-right {
        text-align: end
    }
    .xl\:text-inherit {
        text-align: inherit
    }
    .xl\:table-cell {
        display: table-cell;
    }
    .xl\:block {
        display: block
    }
    .xl\:inline-block {
        display: inline-block
    }
    .xl\:inline {
        display: inline
    }
    .xl\:flex {
        display: flex
    }
    .xl\:inline-flex {
        display: inline-flex
    }
    .xl\:grid {
        display: grid
    }
    .xl\:hidden {
        display: none;
    }
    .xl\:grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
    .xl\:grid-cols-12 {
        grid-template-columns: repeat(12, minmax(0, 1fr))
    }
    .xl\:flex-row {
        flex-direction: row;
    }
    .xl\:flex-row-reverse {
        flex-direction: row-reverse;
    }
    .xl\:flex-col {
        flex-direction: column;
    }
    .xl\:flex-col-reverse {
        flex-direction: column-reverse;
    }
    .xl\:flex-wrap {
        flex-wrap: wrap;
    }
    .xl\:flex-nowrap {
        flex-wrap: nowrap;
    }
    .xl\:items-start {
        align-items: flex-start;
    }
    .xl\:items-end {
        align-items: flex-end;
    }
    .xl\:items-center {
        align-items: center;
    }
    .xl\:justify-start {
        justify-content: flex-start;
    }
    .xl\:justify-end {
        justify-content: flex-end;
    }
    .xl\:justify-center {
        justify-content: center;
    }
    .xl\:justify-between {
        justify-content: space-between;
    }
    .xl\:shrink {
        flex-shrink: 1
    }
    .xl\:grow {
        flex-grow: 1
    }
    .xl\:grow-0 {
        flex-grow: 0
    }
    .xl\:gap-0 {
        gap: 0
    }
    .xl\:gap-1 {
        gap: var(--sp-1)
    }
    .xl\:gap-1d5 {
        gap: var(--sp-1d5)
    }
    .xl\:gap-2 {
        gap: var(--sp-2)
    }
    .xl\:gap-3 {
        gap: var(--sp-3)
    }
    .xl\:gap-4 {
        gap: var(--sp-4)
    }
    .xl\:gap-5 {
        gap: var(--sp-5)
    }
    .xl\:gap-6 {
        gap: var(--sp-6)
    }
    .xl\:gap-7 {
        gap: var(--sp-7)
    }
    .xl\:gap-7d5 {
        gap: var(--sp-7d5)
    }
    .xl\:gap-8 {
        gap: var(--sp-8)
    }
    .xl\:gap-9 {
        gap: var(--sp-9)
    }
    .xl\:gap-10 {
        gap: var(--sp-10)
    }
    .xl\:gap-12 {
        gap: var(--sp-12)
    }
    .xl\:gap-14 {
        gap: var(--sp-14)
    }
    .xl\:text-5xl {
        font-size: var(--text-5xl);
        line-height: 1.6
    }
    .xl\:text-4xl {
        font-size: var(--text-4xl);
        line-height: 1.6
    }
    .xl\:text-3xl {
        font-size: var(--text-3xl);
        line-height: 1.6
    }
    .xl\:text-2xl {
        font-size: var(--text-2xl);
        line-height: 1.6
    }
    .xl\:text-xl {
        font-size: var(--text-xl);
        line-height: 1.6
    }
    .xl\:text-lg {
        font-size: var(--text-lg);
        line-height: 1.6
    }
    .xl\:text-base {
        font-size: var(--text-base);
        line-height: 1.6
    }
    .xl\:text-sm {
        font-size: var(--text-sm);
        line-height: 1.6
    }
    .xl\:text-xs {
        font-size: var(--text-xs);
        line-height: 1.6
    }
    .xl\:font-bold {
        font-weight: var(--font-bold)
    }
    .xl\:font-medium {
        font-weight: var(--font-medium)
    }
    .xl\:opacity-0 {
        opacity: 0
    }
    .xl\:w-full {
        width: 100%
    }
    .xl\:w-fit {
        width: fit-content
    }
}

.leading-none {
    line-height: 1
}

.leading-tight {
    line-height: 1.25
}

.leading-normal {
    line-height: 1.6
}

.tracking-none {
    letter-spacing: 0;
}

.tracking-tighter {
    letter-spacing: -.05em
}

.tracking-tight {
    letter-spacing: -.025em
}

.tracking-wide {
    letter-spacing: .025em
}

.tracking-wider {
    letter-spacing: .05em
}

.tracking-widest {
    letter-spacing: .1em
}

.tracking-heading {
    letter-spacing: -.04em
}

.whitespace-nowrap {
    white-space: nowrap
}

a:empty,
ul:empty,
dl:empty,
div:empty,
section:empty,
article:empty,
p:empty,
h1:empty,
h2:empty,
h3:empty,
h4:empty,
h5:empty,
h6:empty {
    display: none;
}


/*! rte */

.rte :where(p):not(:where([class~=not-rte] *)) {
    margin-block: var(--sp-4)
}

@media screen and (min-width: 1024px) {
    .rte :where(p):not(:where([class~=not-rte] *)) {
        margin-block: var(--sp-5)
    }
}

@media screen and (min-width: 1280px) {
    .rte :where(p):not(:where([class~=not-rte] *)) {
        margin-block: var(--sp-4d5)
    }
}

.rte :where(.rte>:first-child):not(:where([class~=not-rte] *)) {
    margin-block-start: 0
}

.rte :where(.rte>:last-child):not(:where([class~=not-rte] *)) {
    margin-block-end: 0
}

.rte :where(.h0, .h1, h1):not(:where([class~=not-rte] *)) {
    margin-block-end: var(--sp-8d5);
    margin-block-start: 0
}

@media screen and (min-width: 1024px) {
    .rte :where(.h0, .h1, h1):not(:where([class~=not-rte] *)) {
        margin-block-end: var(--sp-10)
    }
}

@media screen and (min-width: 1280px) {
    .rte :where(.h0, .h1, h1):not(:where([class~=not-rte] *)) {
        margin-block-end: var(--sp-12)
    }
}

.rte :where(.h2, h2):not(:where([class~=not-rte] *)) {
    margin-block-end: var(--sp-6);
    margin-block-start: var(--sp-12)
}

@media screen and (min-width: 1280px) {
    .rte :where(.h2, h2):not(:where([class~=not-rte] *)) {
        margin-block-end: var(--sp-8d5);
        margin-block-start: var(--sp-14)
    }
}

.rte :where(.h3, h3):not(:where([class~=not-rte] *)) {
    margin-block-end: var(--sp-3);
    margin-block-start: var(--sp-8)
}

@media screen and (min-width: 1024px) {
    .rte :where(.h3, h3):not(:where([class~=not-rte] *)) {
        margin-block-end: var(--sp-4);
        margin-block-start: var(--sp-10)
    }
}

@media screen and (min-width: 1280px) {
    .rte :where(.h3, h3):not(:where([class~=not-rte] *)) {
        margin-block-end: var(--sp-5);
        margin-block-start: var(--sp-12)
    }
}

.rte :where(.h4, h4):not(:where([class~=not-rte] *)) {
    margin-block-end: var(--sp-3);
    margin-block-start: var(--sp-10)
}

@media screen and (min-width: 1024px) {
    .rte :where(.h4, h4):not(:where([class~=not-rte] *)) {
        margin-block-end: var(--sp-2d5);
        margin-block-start: var(--sp-10)
    }
}

@media screen and (min-width: 1280px) {
    .rte :where(.h4, h4):not(:where([class~=not-rte] *)) {
        margin-block-end: var(--sp-3d5);
        margin-block-start: var(--sp-10d5)
    }
}

.rte :where(hr):not(:where([class~=not-rte] *)) {
    margin-block: var(--sp-10)
}

@media screen and (min-width: 1024px) {
    .rte :where(hr):not(:where([class~=not-rte] *)) {
        margin-block: var(--sp-12)
    }
}

@media screen and (min-width: 1536px) {
    .rte :where(hr):not(:where([class~=not-rte] *)) {
        margin-block: var(--sp-14)
    }
}

.rte :where(h2+*, h3+*, h4+*, hr+*):not(:where([class~=not-rte] *)) {
    margin-block-start: 0
}

.rte :where(img):not(:where([class~=not-rte] *)) {
    margin-block: var(--sp-12)
}

.rte :where(video):not(:where([class~=not-rte] *)) {
    margin-block: var(--sp-12)
}

.rte :where(figure):not(:where([class~=not-rte] *)) {
    margin-block: var(--sp-8)
}

@media screen and (min-width: 1024px) {
    .rte :where(figure):not(:where([class~=not-rte] *)) {
        margin-block: var(--sp-12)
    }
}

.rte :where(figure>*):not(:where([class~=not-rte] *)) {
    margin-block: 0
}

.rte :where(figcaption):not(:where([class~=not-rte] *)) {
    color: rgb(var(--color-foreground)/ 0.7);
    font-size: var(--text-sm);
    font-style: italic;
    line-height: 1.375;
    margin-block-start: var(--sp-4d5)
}

.rte :where(figcaption a):not(:where([class~=not-rte] *)) {
    color: rgb(var(--color-foreground))
}

.rte :where(ul):not(:where([class~=not-rte] *)) {
    list-style-type: disc
}

.rte :where(ul):not(:where([class~=not-rte] *)) ::marker {
    color: rgb(var(--color-foreground)/ 0.25)
}

.rte :where(ul):not(:where([class~=not-rte] *))::marker {
    color: rgb(var(--color-foreground)/ 0.25)
}

.rte :where(ul, ol):not(:where([class~=not-rte] *)) {
    margin-block: var(--sp-5);
    padding-inline-start: var(--sp-7)
}

@media screen and (min-width: 1024px) {
    .rte :where(ul, ol):not(:where([class~=not-rte] *)) {
        margin-block: var(--sp-6);
        padding-inline-start: var(--sp-8)
    }
}

.rte :where(li):not(:where([class~=not-rte] *)) {
    margin-block-start: var(--sp-2)
}

@media screen and (min-width: 1024px) {
    .rte :where(li):not(:where([class~=not-rte] *)) {
        margin-block-start: var(--sp-2d5)
    }
}

@media screen and (min-width: 1536px) {
    .rte :where(li):not(:where([class~=not-rte] *)) {
        margin-block-start: var(--sp-3)
    }
}

.rte :where(ul>li, ol>li):not(:where([class~=not-rte] *)) {
    padding-inline-start: var(--sp-1d5)
}

@media screen and (min-width: 1024px) {
    .rte :where(ul>li, ol>li):not(:where([class~=not-rte] *)) {
        padding-inline-start: var(--sp-2)
    }
}

.rte :where(.rte>ul>li>:first-child, .rte>ol>li>:first-child):not(:where([class~=not-rte] *)) {
    margin-block-start: var(--sp-5d5)
}

.rte :where(.rte>ul>li>:last-child, .rte>ol>li>:last-child):not(:where([class~=not-rte] *)) {
    margin-block-end: var(--sp-5d5)
}

.rte :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~=not-rte] *)) {
    margin-block: var(--sp-5)
}

@media screen and (min-width: 1024px) {
    .rte :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~=not-rte] *)) {
        margin-block: var(--sp-4)
    }
}

.rte :where(blockquote):not(:where([class~=not-rte] *)) {
    display: block;
    margin-block: var(--sp-8);
    padding-block-start: var(--sp-20);
    text-align: center
}

@media screen and (min-width: 1024px) {
    .rte :where(blockquote):not(:where([class~=not-rte] *)) {
        margin-block: var(--sp-12);
    }
}

.rte :where(blockquote):not(:where([class~=not-rte] *))::before {
    content: '';
    -webkit-mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 54 54'%3E%3Cpath d='M41.625 47.25a12.375 12.375 0 1 0 0-24.75c-.357 0-.706.024-1.055.054a35.775 35.775 0 0 1 5.384-15.208A1.126 1.126 0 0 0 45 5.625h-2.25a1.125 1.125 0 0 0-.816.35c-5.785 6.086-12.684 16.04-12.684 28.9A12.39 12.39 0 0 0 41.625 47.25Zm-29.25 0a12.375 12.375 0 1 0 0-24.75c-.357 0-.707.024-1.055.054a35.775 35.775 0 0 1 5.384-15.208 1.126 1.126 0 0 0-.954-1.721H13.5a1.125 1.125 0 0 0-.816.35C6.9 12.06 0 22.015 0 34.875A12.39 12.39 0 0 0 12.375 47.25Z' fill='currentColor'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 54 54'%3E%3Cpath d='M41.625 47.25a12.375 12.375 0 1 0 0-24.75c-.357 0-.706.024-1.055.054a35.775 35.775 0 0 1 5.384-15.208A1.126 1.126 0 0 0 45 5.625h-2.25a1.125 1.125 0 0 0-.816.35c-5.785 6.086-12.684 16.04-12.684 28.9A12.39 12.39 0 0 0 41.625 47.25Zm-29.25 0a12.375 12.375 0 1 0 0-24.75c-.357 0-.707.024-1.055.054a35.775 35.775 0 0 1 5.384-15.208 1.126 1.126 0 0 0-.954-1.721H13.5a1.125 1.125 0 0 0-.816.35C6.9 12.06 0 22.015 0 34.875A12.39 12.39 0 0 0 12.375 47.25Z' fill='currentColor'/%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: var(--quote-icon-width) var(--quote-icon-height);
    mask-size: var(--quote-icon-width) var(--quote-icon-height);
    position: absolute;
    inset-block-start: 0;
    inset-inline-start: 50%;
    transform: translateX(calc(-50% * var(--transform-logical)));
    width: var(--quote-icon-width);
    height: var(--quote-icon-height);
    background-color: currentColor;
}

.rte :where(blockquote>*):not(:where([class~=not-rte] *)) {
    margin-block: 0;
}

.rte :where(blockquote cite):not(:where([class~=not-rte] *)) {
    display: block;
    text-transform: none;
    font-size: var(--text-base);
    font-weight: var(--font-medium);
    letter-spacing: 0;
    line-height: 1.6;
    margin-block-start: var(--sp-8d5)
}

@media screen and (min-width: 1280px) {
    .rte :where(blockquote cite):not(:where([class~=not-rte] *)) {
        font-size: var(--text-lg);
        line-height: 1.6
    }
}

.page-width {
    margin: 0 auto;
    padding-inline: var(--page-padding);
}

@media screen and (min-width: 1536px) {
    .page-width--full {
        --page-padding: var(--sp-12);
        --page-container: calc(100vw - var(--scrollbar-width) - var(--page-padding) * 2);
    }
}

.spacing-section {
    min-height: var(--spacing-height-mobile);
}

@media screen and (min-width: 768px) {
    .spacing-section {
        min-height: var(--spacing-height-desktop);
    }
}

@media screen and (min-width: 1024px) {
    .page-width--narrow {
        --page-padding: var(--sp-12);
        max-width: 70rem;
    }
}

summary {
    list-style-type: none
}

.scroll-area {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none
}

.scroll-area::-webkit-scrollbar {
    display: none
}

.icon {
    stroke-width: var(--icon-weight);
    width: var(--sp-5d5);
    height: var(--sp-5d5);
}

.icon-2xs {
    width: var(--sp-3);
    height: var(--sp-3);
}

.icon-xs {
    width: var(--sp-4);
    height: var(--sp-4);
}

.icon-sm {
    width: var(--sp-5);
    height: var(--sp-5);
}

.icon-lg {
    width: var(--sp-6);
    height: var(--sp-6);
}

.icon-xl {
    width: var(--sp-8);
    height: var(--sp-8);
}

.icon-custom {
    width: auto;
    height: auto;
}

.icon-light {
    stroke-width: calc(var(--icon-weight) - 0.3px);
}

.icon .fill {
    stroke: none;
    fill: rgb(var(--color-foreground)/ 0.1);
}

.icon-rotator .path {
    stroke-dasharray: 280;
    stroke-dashoffset: 0;
    transform-origin: center;
    animation: dash 1.4s infinite ease;
}

.stroke-1 {
    stroke-width: 1
}

.stroke-2 {
    stroke-width: 2
}

@keyframes dash {
    0% {
        stroke-dashoffset: 280
    }
    50% {
        stroke-dashoffset: 75;
        transform: rotate(135deg)
    }
    to {
        stroke-dashoffset: 280;
        transform: rotate(450deg)
    }
}

[role=main] .shopify-section {
    --section-is-first: 0;
    position: relative
}

[role=main] .shopify-section:not(.contents) {
    display: flow-root
}

[role=main] .shopify-section:empty {
    display: none
}

[role=main] .shopify-section:first-child {
    --section-is-first: 1
}

.js [role=main] .shopify-section:last-child {
    border-end-end-radius: var(--border-radius);
    border-end-start-radius: var(--border-radius);
    position: relative;
}

.js [role=main] .shopify-section:last-child .section::before {
    height: 100%;
}

.no-js .loading-bar {
    display: none;
}

.loading-bar {
    background-color: rgb(var(--color-foreground));
    z-index: 50
}

.loading-bar .icon {
    color: rgb(var(--color-background));
    inset-block-end: var(--gap-padding);
    inset-inline-end: var(--gap-padding);
}

@media (prefers-reduced-motion: reduce) {
    .loading-bar {
        display: none;
    }
}

.page-container {
    background-color: rgb(var(--color-background));
}

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

*:focus {
    outline: 0;
    box-shadow: none;
}

*:focus-visible {
    outline: 2px solid rgb(var(--color-keyboard-focus));
    outline-offset: 3px;
}


/*! button */

.button,
.shopify-challenge__button,
button.shopify-payment-button__button--unbranded,
.shopify-payment-button [role=button],
.additional-checkout-buttons [role=button],
.additional-checkout-buttons iframe {
    --shadow-horizontal-offset: var(--buttons-shadow-horizontal-offset);
    --shadow-vertical-offset: var(--buttons-shadow-vertical-offset);
    --shadow-opacity: var(--buttons-shadow-opacity);
    --border-opacity: var(--buttons-border-opacity);
}

.shopify-payment-button__button--branded {
    z-index: auto;
    font-family: "UniversLTPro Roman";
    border-radius: var(--buttons-radius) !important;
    overflow: hidden !important;
}

.shopify-payment-button__more-options {
    margin-block-start: var(--sp-3) !important;
    font-size: var(--text-sm) !important;
    line-height: 1.25 !important;
}

shopify-accelerated-checkout,
shopify-accelerated-checkout-cart {
    --shopify-accelerated-checkout-button-block-size: 50px;
    --shopify-accelerated-checkout-button-border-radius: var(--buttons-radius, 0);
    --shopify-accelerated-checkout-button-box-shadow: none;
}

.additional-checkout-buttons iframe {
    box-shadow: var(--shadow-horizontal-offset) var(--shadow-vertical-offset) rgb(var(--color-shadow)/ var(--shadow-opacity));
}

.button,
.shopify-challenge__button,
button.shopify-payment-button__button--unbranded {
    cursor: pointer;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    line-height: 1;
    font-family: "UniversLTPro Roman";
    font-size: var(--font-button-size);
    font-weight: var(--font-button-weight);
    text-transform: var(--font-button-text-transform);
    padding: clamp(var(--sp-4d5), 1.2vw, var(--sp-5d5)) clamp(var(--sp-6d5), 1.473vw, var(--sp-7d5));
    color: rgb(var(--color-button-text));
    background: var(--color-button-gradient);
    background-color: rgb(var(--color-button-background));
    border-radius: var(--buttons-radius);
    box-shadow: var(--shadow-horizontal-offset) var(--shadow-vertical-offset) rgb(var(--color-shadow)/ var(--shadow-opacity));
    max-height: 3.75rem;
    border: none;
    height: auto;
}

button.shopify-payment-button__button--unbranded {
    min-width: var(--sp-48);
}

.button::after,
.shopify-challenge__button::after,
button.shopify-payment-button__button--unbranded::after {
    content: '';
    pointer-events: none;
    position: absolute;
    inset: 0;
    border-radius: var(--buttons-radius);
    border: var(--buttons-border-width) solid rgb(var(--color-button-border)/ var(--border-opacity));
}

.button.icon-with-text .btn-text {
    align-items: center;
    display: flex;
    gap: 0.75rem;
}

@media screen and (max-width: 767px) {
    .button.icon-with-text .icon-arrow-right {
        width: var(--sp-4d5);
        height: var(--sp-4d5);
    }
}

.button .btn-text {
    color: currentColor;
}

.button .btn-fill {
    display: block;
    border-radius: 50%;
    width: 150%;
    height: 200%;
    inset-block-start: -50%;
    inset-inline-start: -25%;
    position: absolute;
    transform: translate3d(0, -76%, 0);
}

.button--primary .btn-fill {
    background-color: rgb(var(--color-button-text));
}

.button--secondary .btn-fill {
    background: var(--color-button-gradient);
    background-color: rgb(var(--color-button-background));
}

.button[disabled],
button.shopify-payment-button__button--unbranded[disabled] {
    opacity: 0.6;
    cursor: not-allowed;
}

.button[disabled] .btn-fill {
    display: none;
}

.button--fixed {
    min-width: var(--sp-48);
}

.button--fixed.link {
    min-width: unset;
}

.button--sm {
    padding: clamp(var(--sp-3), 1.2vw, var(--sp-4)) clamp(var(--sp-5), 1.473vw, var(--sp-6));
}

.button--lg {
    padding: clamp(var(--sp-6), 1.2vw, var(--sp-7)) clamp(var(--sp-8), 1.473vw, var(--sp-9));
    max-height: 4.25rem;
}

.button--small {
    font-size: var(--text-sm);
    padding: clamp(var(--sp-2), .526vw, var(--sp-2d5)) clamp(var(--sp-3), .842vw, var(--sp-4));
}

.button--small.icon-with-text {
    font-size: var(--fluid-xs-to-sm);
}

.button--small.icon-with-text .btn-text {
    gap: var(--sp-2);
}

.button--small.icon-with-text .btn-text .icon {
    width: var(--sp-4);
    height: var(--sp-4);
}

input.button--primary {
    border: var(--buttons-border-width) solid rgb(var(--color-button-border)/ var(--border-opacity));
}

.button--secondary,
button.shopify-payment-button__button--unbranded {
    color: rgb(var(--color-button-background));
    background: none;
    backdrop-filter: blur(12px);
}

.button--close {
    --shadow-opacity: 0;
    --border-opacity: 0.1;
    --buttons-border-width: 1px;
    --buttons-radius: var(--rounded-full);
    padding: 0;
}

.button--close .icon:first-child {
    --tw-rotate: 0deg;
    transform: rotate(var(--tw-rotate));
}

.button--blur {
    --button-backdrop-blur: blur(12px);
}

.button--blur .btn-fill {
    background-color: rgb(var(--color-overlay)/ 0.6);
}

@media screen and (pointer: fine) {
    .button,
    .shopify-challenge__button,
    button.shopify-payment-button__button--unbranded {
        --button-transition: box-shadow var(--animation-primary), opacity var(--animation-fast);
        transition: var(--button-transition);
    }
    button.shopify-payment-button__button--unbranded {
        transition-property: box-shadow, color, background-color;
    }
    .button::after,
    .shopify-challenge__button::after,
    button.shopify-payment-button__button--unbranded::after {
        transition: border var(--animation-primary);
    }
    .button .btn-text {
        transition: color var(--animation-primary);
        transition-delay: 0.1s;
    }
    .button .btn-fill {
        transition: background-color var(--animation-primary);
    }
    input.button--primary {
        transition-property: color, background, border;
    }
    .button--close .icon:first-child {
        transition: transform var(--animation-primary), opacity var(--animation-fast);
    }
    .button--close:hover .icon:first-child {
        --tw-rotate: 90deg;
    }
    .button--blur {
        --button-transition: box-shadow var(--animation-primary), background-color var(--animation-primary) 0.2s, backdrop-filter var(--animation-primary) 0.2s;
    }
    [data-button-hover=standard] .button:not([disabled]) .btn-fill {
        display: block;
    }
    .js [data-button-hover=standard] .button--primary:hover:not([disabled],
    .self-button),
    .js [data-button-hover=standard] .button--secondary:hover:not([disabled],
    .self-button),
    .js [data-button-hover=standard] .shopify-payment-button__button--unbranded:hover:not([disabled]) {
        --shadow-horizontal-offset: 0;
        --shadow-vertical-offset: 0;
    }
    .js [data-button-hover=standard] .button--primary:hover:not([disabled],
    .self-button) {
        color: rgb(var(--color-button-background));
    }
    .js [data-button-hover=standard] input.button--primary:hover:not([disabled],
    .self-button) {
        background: none;
    }
    .js [data-button-hover=standard] .button--secondary:hover:not([disabled],
    .self-button),
    .js [data-button-hover=standard] .shopify-payment-button__button--unbranded:hover:not([disabled]) {
        color: rgb(var(--color-button-text));
    }
    .js [data-button-hover=standard] .shopify-payment-button__button--unbranded:hover:not([disabled]) {
        background-color: rgb(var(--color-button-background));
    }
    .js [data-button-hover=standard] .button--blur:hover:not([disabled],
    .self-button) {
        --color-button-border: var(--color-foreground);
        background: none;
        background-color: transparent;
        color: rgb(var(--color-foreground));
        backdrop-filter: var(--button-backdrop-blur);
    }
    .js [data-button-hover=none] .shopify-payment-button__button--unbranded:hover:not([disabled]) {
        background-color: transparent;
    }
}

@media screen and (hover: none) {
    .js .shopify-payment-button__button--unbranded:hover:not([disabled]) {
        background: none;
    }
}

.btn-text {
    position: relative;
    pointer-events: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    z-index: 1
}

.btn-loader {
    position: absolute;
    inset: 0;
    opacity: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--sp-2);
    pointer-events: none;
}

.btn-loader span {
    width: 5px;
    height: 5px;
    border-radius: var(--rounded-full);
    background: currentColor;
}

.indicators[hidden] {
    display: none;
}

.indicators .button {
    --buttons-border-width: 1px;
    --buttons-radius: var(--rounded-full);
    --buttons-width: var(--sp-12);
    padding: 0;
    box-shadow: none;
    height: var(--buttons-width);
    width: var(--buttons-width);
}

@media screen and (min-width: 1280px) {
    .indicators .button {
        --buttons-width: var(--sp-14);
    }
}

.indicators .button[hidden] {
    display: none;
}

.indicators .button[disabled] {
    opacity: .3;
    pointer-events: none;
}

.indicators--small .button {
    --buttons-width: var(--sp-9);
}

.slider .indicators {
    gap: clamp(var(--sp-4), 2.105vw, var(--sp-10));
    transition: opacity var(--animation-primary);
}

.slider .indicators::before,
.slider .indicators::after {
    content: '';
}

.slider .indicators .button:first-child {
    margin-inline-end: auto;
}

.slider .indicators .button:last-child {
    margin-inline-start: auto;
}

.slider .indicators .button {
    opacity: 0.7;
}

.slider .indicators .button[disabled] {
    opacity: 0;
}

@media screen and (pointer: fine) {
    .slider:hover .indicators {
        opacity: 1;
    }
}

.mouse-cursor {
    --tw-translate-x: -50%;
    --tw-translate-y: -60%;
    color: rgb(var(--color-foreground));
    background-color: rgb(var(--color-background));
    transform: translate(calc(var(--tw-translate-x) * var(--transform-logical)), var(--tw-translate-y));
    inset-block-start: var(--y);
    inset-inline-start: var(--x);
}

.mouse-cursor,
.mouse-cursor .icon {
    width: 0;
    height: 0;
    transition: width var(--animation-fast), height var(--animation-fast);
}

.no-touch .mouse-cursor.active {
    height: clamp(var(--sp-16), 4.21vw, var(--sp-20));
    width: clamp(var(--sp-16), 4.21vw, var(--sp-20))
}

.no-touch .mouse-cursor.active .icon {
    height: clamp(var(--sp-5), 1.68vw, var(--sp-8));
    width: clamp(var(--sp-5), 1.68vw, var(--sp-8))
}

.no-touch .mouse-cursor.active.pressed {
    height: calc(clamp(var(--sp-16), 4.21vw, var(--sp-20))*1.5);
    width: calc(clamp(var(--sp-16), 4.21vw, var(--sp-20))*1.5)
}

.no-touch .mouse-cursor.active.pressed .icon {
    height: calc(clamp(var(--sp-5), 1.68vw, var(--sp-8))*1.5);
    width: calc(clamp(var(--sp-5), 1.68vw, var(--sp-8))*1.5)
}

.button-wrapper,
.title-wrapper {
    margin-block-end: clamp(var(--sp-8), 2.526vw, var(--sp-12));
}

.title-wrapper-lg {
    margin-block-end: var(--sp-16);
}

@media screen and (min-width: 1024px) {
    .title-wrapper-lg {
        margin-block-end: var(--sp-28);
    }
}

@media screen and (max-width: 767px) {
    .title-wrapper .button {
        max-height: 2.75rem;
        font-size: var(--text-xs);
        padding: var(--sp-3d5) var(--sp-4);
    }
    .title-wrapper .button.icon-with-text .btn-text {
        gap: 6px;
    }
    .title-wrapper .button.icon-with-text .icon {
        width: var(--sp-4);
        height: var(--sp-4);
    }
}

.title-wrapper>:is(.heading,
p) {
    flex: 0 0 auto;
}

.title-wrapper .heading+.description {
    margin-block-start: var(--sp-2);
}

@media screen and (min-width: 768px) {
    .title-wrapper .description {
        max-width: 42rem;
    }
    .title-wrapper.text-center .description {
        justify-self: center;
    }
}

@media screen and (min-width: 1280px) {
    .title-wrapper .description {
        max-width: 56rem;
    }
}

.title-sm {
    font-size: var(--title-sm);
}

.title-sm2x {
    font-size: calc(2 * var(--title-sm));
}

.title-md {
    font-size: var(--title-md);
}

.title-md2x {
    font-size: calc(2 * var(--title-md));
}

.title-lg {
    font-size: var(--title-lg);
}

.title-lg2x {
    font-size: calc(2 * var(--title-lg));
}

.title-xl {
    font-size: var(--title-xl);
}

.title-xl2x {
    font-size: calc(2 * var(--title-xl));
}


/*! media */

.media--fit {
    width: var(--media-width-mobile);
    height: var(--media-height-mobile);
}

.image-fit {
    max-width: 100%;
    width: var(--image-max-width-mobile);
}

@media screen and (min-width: 768px) {
    .media--fit {
        width: var(--media-width);
        height: var(--media-height);
    }
    .image-fit {
        width: var(--image-max-width);
    }
}

.media {
    background-color: rgb(var(--color-placeholder));
}

.media--transparent:not(.loading) {
    background-color: transparent;
}

.media>img {
    backface-visibility: hidden;
    object-fit: cover;
    object-position: center center;
}

@media screen and (pointer: fine) {
    .media>img {
        transition: var(--animation-primary);
        transition-property: opacity, transform;
    }
}

.media[easing]>img {
    transition: none;
}

.media>.mobile\:img+:is(img,
svg) {
    display: none;
}

.media--contain>img {
    object-fit: contain;
}

.media--rounded {
    border-radius: 50%;
}

.media--rounded>:is(img,
svg,
video-media),
.media--square>:is(img,
svg,
video-media),
.aspect-square {
    aspect-ratio: 1 / 1;
}

.media--portrait>:is(img,
svg,
video-media),
.aspect-portrait {
    aspect-ratio: 4 / 5;
}

.media--landscape>:is(img,
svg,
video-media),
.aspect-landscape {
    aspect-ratio: 4 / 3;
}

.media--wide>:is(img,
svg,
video-media),
.aspect-wide {
    aspect-ratio: 16 / 9;
}

.media--height>:is(img,
svg,
video-media) {
    inset: 0;
    position: absolute;
    max-width: 100%;
    width: 100%;
    height: 100%;
}

.media--400px {
    height: 260px
}

.media--450px {
    height: 292.5px
}

.media--500px {
    height: 325px
}

.media--550px {
    height: 357.5px
}

.media--600px {
    height: 390px
}

.media--650px {
    height: 422.5px
}

.media--700px {
    height: 455px
}

.media--750px {
    height: 487.5px
}

.media--800px {
    height: 520px
}

.media--850px {
    height: 552.5px
}

.media--900px {
    height: 585px
}

.media--100vh {
    height: 100vh
}

@supports (height: 100svh) {
    .media--100vh {
        height: 100svh
    }
}

@media screen and (min-width: 768px) {
    .media>.mobile\:img {
        display: none;
    }
    .media>.mobile\:img+:is(img,
    svg) {
        display: block;
    }
    .media--400px {
        height: 340px
    }
    .media--450px {
        height: 382.5px
    }
    .media--500px {
        height: 425px
    }
    .media--550px {
        height: 567.5px
    }
    .media--600px {
        height: 510px
    }
    .media--650px {
        height: 552.5px
    }
    .media--700px {
        height: 595px
    }
    .media--750px {
        height: 637.5px
    }
    .media--800px {
        height: 680px
    }
    .media--850px {
        height: 722.5px
    }
    .media--900px {
        height: 765px
    }
}

@media screen and (min-width: 1536px) {
    .media--400px {
        height: 400px
    }
    .media--450px {
        height: 450px
    }
    .media--500px {
        height: 500px
    }
    .media--550px {
        height: 550px
    }
    .media--600px {
        height: 600px
    }
    .media--650px {
        height: 650px
    }
    .media--700px {
        height: 700px
    }
    .media--750px {
        height: 750px
    }
    .media--800px {
        height: 800px
    }
    .media--850px {
        height: 850px
    }
    .media--900px {
        height: 900px
    }
}

@media screen and (max-width: 767px) {
    .mobile\:media--200px {
        height: 200px
    }
    .mobile\:media--250px {
        height: 250px
    }
    .mobile\:media--300px {
        height: 300px
    }
    .mobile\:media--400px {
        height: 400px
    }
    .mobile\:media--500px {
        height: 500px
    }
    .mobile\:media--600px {
        height: 600px
    }
    .mobile\:media--100vh {
        height: 90vh
    }
    @supports (height: 100svh) {
        .mobile\:media--100vh {
            height: 90svh
        }
    }
    .mobile\:media--rounded>:is(img,
    svg,
    video-media),
    .mobile\:media--square>:is(img,
    svg,
    video-media),
    .mobile\:aspect-square {
        aspect-ratio: 1 / 1;
    }
    .mobile\:media--portrait>:is(img,
    svg,
    video-media),
    .mobile\:aspect-portrait {
        aspect-ratio: 4 / 5;
    }
    .mobile\:media--landscape>:is(img,
    svg,
    video-media),
    .mobile\:aspect-landscape {
        aspect-ratio: 4 / 3;
    }
    .mobile\:media--wide>:is(img,
    svg,
    video-media),
    .mobile\:aspect-wide {
        aspect-ratio: 16 / 9;
    }
    .mobile\:aspect-adapt {
        aspect-ratio: var(--aspect-ratio, auto);
    }
}

svg.placeholder {
    background-color: rgb(var(--color-base-text)/ 0.3);
    fill: rgb(var(--color-base-text)/ 0.7);
    color: rgb(var(--color-base-text)/ 0.7);
    display: block;
    width: 100%;
    height: 100%;
}

svg.placeholder--transparent {
    background-color: transparent;
}


/*! table */

table {
    overflow: hidden;
    box-shadow: 0 0 0 1px rgb(var(--color-border-light));
    border-radius: var(--rounded-block);
}

table th,
table td {
    width: auto;
    text-align: start;
    line-height: 1.6;
    font-size: var(--text-lg);
    padding: var(--sp-6) var(--sp-7d5);
}

thead th {
    font-weight: var(--font-medium);
    background-color: rgb(var(--color-foreground)/ 0.025);
}

tfoot tr:not(:last-child) td {
    padding-block: var(--sp-1);
}

tfoot tr:first-child td {
    padding-block-start: var(--sp-6);
}

tbody tr,
tfoot tr:first-child {
    border-block-start: 1px solid rgb(var(--color-border-light));
}


/*! inputs */

.field {
    --border-opacity: var(--inputs-border-opacity);
    position: relative;
    text-align: start
}

.input,
.select,
.textarea {
    appearance: none;
    text-align: start;
    width: 100%;
    height: var(--input-height);
    font-size: var(--text-sm);
    line-height: 1.25;
    padding-inline: var(--input-padding-inline);
    color: rgb(var(--color-foreground));
    background-color: rgb(var(--color-foreground)/ 0.025);
    border: var(--inputs-border-width) solid rgb(var(--color-foreground)/ var(--border-opacity));
    border-radius: var(--inputs-radius);
    transition: var(--animation-primary);
    transition-property: border-color, background-color;
}

@media screen and (min-width: 768px) {
    .input,
    .select,
    .textarea {
        font-size: var(--text-base);
        line-height: 1.6
    }
}

@supports (-webkit-overflow-scrolling: touch) {
    .input:focus,
    .select:focus-visible,
    .textarea:focus {
        font-size: max(var(--text-sm), 16px);
    }
}

.select option {
    color: rgb(var(--color-foreground));
    background-color: rgb(var(--color-background));
}

.input--fill {
    border-style: none
}

.input:focus,
.select:focus-visible,
.textarea:focus {
    box-shadow: none;
    border-color: rgb(var(--color-foreground));
    background-color: rgb(var(--color-foreground)/ 0.045);
    outline: none;
}

.input.is-floating,
.select.is-floating {
    height: calc(var(--input-height) + var(--sp-2d5))
}

.input.is-floating::-moz-placeholder,
.select.is-floating::-moz-placeholder {
    color: transparent
}

.input.is-floating::placeholder,
.select.is-floating::placeholder {
    color: transparent
}

.input.is-floating,
.select.is-floating {
    padding-block-start: var(--sp-4)
}

.textarea.is-floating {
    padding-block-end: var(--sp-2);
    padding-block-start: var(--sp-8)
}

.textarea {
    height: auto;
    vertical-align: top
}

.label {
    display: block;
    margin-block-end: var(--sp-2d5);
    font-size: var(--text-sm);
    line-height: 1.6;
}

@media screen and (min-width: 768px) {
    .label {
        font-size: var(--text-base);
    }
}

.label.is-floating {
    position: absolute;
    inset-block-start: 0;
    display: flex;
    align-items: center;
    gap: var(--sp-2);
    pointer-events: none;
    inset-inline-start: 1px;
    opacity: 0.6;
    height: calc(var(--input-height) + var(--sp-2d5));
    margin-block-end: 0;
    margin-inline-start: var(--input-padding-inline);
    transform-origin: var(--transform-origin-start);
    transition: all var(--animation-primary);
}

.select[required]:valid~.label,
.select[selected]~.label,
:is(.input,
.textarea):focus~.label,
:is(.input,
.textarea):not(:placeholder-shown)~.label,
:is(.input,
.textarea,
.select):-webkit-autofill~.label {
    --tw-translate-y: calc(var(--sp-2d5) * -1);
    --tw-scale-x: .80;
    --tw-scale-y: .80;
    transform: translateY(var(--tw-translate-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

:is(.input,
.textarea,
.select):-webkit-autofill~.label {
    color: #000
}

@media screen and (min-width: 768px) {
    .select[required]:valid~.label,
    .select[selected]~.label,
     :is(.input,
    .textarea):focus~.label,
     :is(.input,
    .textarea):not(:placeholder-shown)~.label,
     :is(.input,
    .textarea,
    .select):-webkit-autofill~.label {
        --tw-scale-x: .70;
        --tw-scale-y: .70;
    }
}

.select~.icon,
.input[type=date]~.icon {
    inset-block-start: calc(50% - 10px);
    inset-inline-end: var(--input-padding-inline);
}

.select~.icon {
    transform: scaleY(-1);
}

.self-submit-button {
    inset-block-start: 50%;
    inset-inline-end: var(--sp-4);
    transform: translateY(-50%);
    width: var(--sp-10);
    height: var(--sp-10);
}

.self-submit-button button {
    padding: 0;
    width: 100%;
    height: 100%;
    border-radius: var(--rounded-full);
}

input:is([type=checkbox],
[type=radio]) {
    --active: rgb(var(--color-foreground));
    --active-inner: rgb(var(--color-background));
    --focus: 3px hsla(0, 0%, 9%, .1);
    --border: rgb(var(--color-border-dark));
    --border-radius: 5px;
    --border-hover: rgb(var(--color-foreground));
    --background: rgb(var(--color-background));
    --disabled: rgb(var(--color-border-light));
    --disabled-inner: rgb(var(--color-border));
    appearance: none;
    background: var(--b, var(--background));
    border: 1px solid var(--bc, var(--border));
    cursor: pointer;
    display: inline-block;
    height: 20px;
    margin: 0;
    outline: none;
    position: relative;
    transition: background-color .3s, border-color .3s, box-shadow .2s;
    vertical-align: top
}

input:is([type=checkbox],
[type=radio]):focus-visible+label {
    outline: 2px solid rgb(var(--color-keyboard-focus));
    outline-offset: 3px;
}

input:is([type=checkbox],
[type=radio]).sr-only {
    clip: rect(0, 0, 0, 0);
    border-width: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px
}

input:is([type=checkbox],
[type=radio])::after {
    content: '';
    display: block;
    position: absolute;
    inset-inline-start: 0;
    inset-block-start: 0;
    transition: transform var(--d-t, .3s) var(--d-t-e, ease), opacity var(--d-o, .2s)
}

input:is([type=checkbox],
[type=radio]):checked {
    --b: var(--active);
    --bc: var(--active);
    --d-o: 0.3s;
    --d-t: 0.6s;
    --d-t-e: cubic-bezier(0.2, 0.85, 0.32, 1.2)
}

input:is([type=checkbox],
[type=radio]):is(:disabled,
.disabled) {
    --b: var(--disabled);
    cursor: not-allowed;
    opacity: .9
}

input:is([type=checkbox],
[type=radio]):is(:disabled,
.disabled):checked {
    --b: var(--disabled-inner);
    --bc: var(--border)
}

input:is([type=checkbox],
[type=radio]):is(:disabled,
.disabled)+label {
    cursor: not-allowed
}

input:is([type=checkbox],
[type=radio]):hover:not(:checked,
 :disabled,
.disabled) {
    --bc: var(--border-hover)
}

input:is([type=checkbox],
[type=radio]):focus {
    box-shadow: 0 0 0 var(--focus)
}

input:is([type=checkbox],
[type=radio]):not(.switch) {
    flex: 0 0 auto;
    width: 20px
}

input:is([type=checkbox],
[type=radio]):not(.switch)::after {
    opacity: var(--o, 0)
}

input:is([type=checkbox],
[type=radio]):not(.switch):checked {
    --o: 1
}

input:is([type=checkbox],
[type=radio])+label {
    cursor: pointer;
    display: inline-block;
    vertical-align: top
}

input[type=radio]:not(.switch) {
    border-radius: var(--rounded-full)
}

input[type=checkbox]:not(.switch) {
    border-radius: var(--border-radius)
}

input[type=checkbox]:not(.switch)::after {
    border: 1.5px solid var(--active-inner);
    border-inline-start: 0;
    border-block-start: 0;
    width: 4px;
    height: 8px;
    inset-inline-start: 7px;
    inset-block-start: 4px;
    transform: rotate(calc(var(--r, 20deg) * var(--transform-logical)));
}

input[type=checkbox]:not(.switch):checked {
    --r: 43deg
}

input[type=checkbox].switch {
    border-radius: 11px;
    width: 38px
}

input[type=checkbox].switch::after {
    background: var(--ab, var(--border));
    border-radius: 50%;
    width: 15px;
    height: 15px;
    inset-inline-start: 2px;
    inset-block-start: 1.5px;
    transform: translateX(calc(var(--x, 0) * var(--transform-logical)));
}

input[type=checkbox].switch:checked {
    --ab: var(--active-inner);
    --x: 17px;
}

input[type=checkbox].switch:is(:disabled,
.disabled):not(:checked)::after {
    opacity: .6
}


/*! details-summary */

.details {
    border-block-end: 1px solid rgb(var(--color-border-light));
    box-sizing: content-box
}

.details summary::-webkit-details-marker {
    display: none
}

.details .details__summary {
    padding-block: clamp(var(--sp-5), 1.473vw, var(--sp-7));
}

.details .details__summary>.icon {
    --tw-scale-y: -1;
    width: var(--sp-5);
    height: var(--sp-5);
    transform: scaleY(var(--tw-scale-y)) rotate(var(--tw-rotate));
    transition: transform var(--animation-primary);
}

.details[aria-expanded=true] .details__summary>.icon {
    --tw-scale-y: 1;
}

.details .details__helptext {
    max-height: 0;
    transition: max-height var(--animation-primary);
}

.details[open] .details__helptext {
    max-height: calc(var(--text-sm) * 1.6);
    transition-duration: 0s;
}

.details .details__content::after {
    content: '';
    display: block;
    pointer-events: none;
    padding-block-end: var(--sp-7)
}

.details:last-child .details__content::after {
    content: none;
}

.details :is(.list,
.swatches) li label {
    display: flex;
}

.details:first-child .details__summary,
.details[hidden]+.details .details__summary {
    padding-block-start: 0
}

.details:last-child {
    border-block-end-width: 0
}

.details:last-child .details__content {
    padding-block-end: 0
}


/*! links */

.link.icon-with-text,
.reversed-link.icon-with-text {
    align-items: center;
    display: inline-flex;
    gap: var(--sp-1d5);
    background: none;
}

.link.icon-with-text .link-text,
.reversed-link,
.rte a {
    --reversed-link-gap: min(100%, 1.35em);
    background: linear-gradient(to var(--transform-origin-end), currentColor, currentColor) 0 var(--reversed-link-gap)/0 1px no-repeat;
    background-position-x: var(--transform-origin-end);
    transition: background-size var(--animation-primary)
}

@media screen and (pointer: fine) {
    .link.icon-with-text:not([aria-disabled]):hover .link-text,
    .reversed-link:not([aria-disabled]):hover,
    .rte a:hover {
        background-position-x: var(--transform-origin-start);
        background-size: 100% 1px
    }
}

.reversed-link.icon-with-text .link-text,
.link,
.rte a:not(.button,
.reversed-link) {
    background: linear-gradient(currentColor, currentColor) 0 min(100%, 1.35em)/100% 1px no-repeat;
    background-position-x: var(--transform-origin-start);
    position: relative;
    text-decoration-line: none;
    transition: background-size var(--animation-primary), color .3s var(--animation-primary)
}

@media screen and (pointer: fine) {
     :is(.link,
    .rte a: not(.button, .reversed-link)):hover, .reversed-link.icon-with-text:hover .link-text {
        background-position-x: var(--transform-origin-end);
        background-size: 0 1px
    }
    .text-opacity :is(.link,
    .rte a:not(.button,
    .reversed-link)):hover {
        color: rgb(var(--color-foreground))
    }
}

.text-opacity {
    color: rgb(var(--color-foreground)/ 0.6)
}

ol {
    list-style-type: decimal
}


/*! corners */

.corner {
    width: var(--border-radius);
    height: var(--border-radius);
    color: rgb(var(--color-background));
    transform: rotate(var(--tw-rotate)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

@media screen and (pointer: fine) {
    .corner {
        transition: all var(--animation-nav);
    }
}

.corner path:last-child {
    stroke-width: 0.225em;
    stroke: rgb(var(--color-foreground)/ 0.115);
    opacity: 0;
    transition: opacity var(--animation-nav);
}

.corner.top {
    inset-block-end: 100%;
}

.corner.bottom {
    inset-block-start: 100%;
}

.corner.left {
    left: 0;
}

.corner.right {
    right: 0;
}

.corner.bottom.right {
    --tw-scale-x: -1;
}

.corner.top.left {
    --tw-rotate: -90deg;
}

.corner.top.right {
    --tw-scale-y: -1;
    --tw-rotate: -90deg;
}

.cutout {
    z-index: -1;
    height: 1px;
    background-color: rgb(var(--color-foreground)/ 0.115);
    transition: opacity var(--animation-nav)
}


/*! sections */

.section {
    position: relative;
    color: rgb(var(--color-foreground));
    background: var(--gradient-background);
    background-color: rgb(var(--color-background));
}

.section::before {
    content: '';
    pointer-events: none;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background: var(--gradient-background);
    background-color: rgb(var(--color-background));
}

.js [role=main] .shopify-section .section::before,
.js .shopify-section-group-header-group .section::before {
    height: calc(100% + var(--border-radius));
}

.js .shopify-section-group-header-group .section.header::before,
.js .shopify-section-group-header-group .section.section--last-rounded::before,
.js .shopify-section-group-header-group .section.section--next-rounded.header::before {
    height: 100%;
}

.js .shopify-section-group-header-group .section.section--next-rounded::before {
    height: calc(100% + var(--border-radius));
}

.js .shopify-section-group-header-group .section.section--first-rounded {
    border-start-end-radius: 0;
    border-start-start-radius: 0;
}

.section--padding {
    padding-block-start: calc(var(--section-padding-top) * 0.75);
    padding-block-end: calc(var(--section-padding-bottom) * 0.75);
}

@media screen and (min-width: 768px) {
    .section--padding {
        padding-block-start: var(--section-padding-top);
        padding-block-end: var(--section-padding-bottom);
    }
}

.section--rounded {
    border-start-end-radius: var(--border-radius);
    border-start-start-radius: var(--border-radius);
}

.js .section--rounded::before {
    height: calc(100% + var(--border-radius));
    border-start-end-radius: var(--border-radius);
    border-start-start-radius: var(--border-radius);
}

.footer-group .section--next-rounded,
.footer-group .section--next-rounded::before,
.footer-group .section--next-rounded :is(.banner__map,
.banner__media) {
    border-end-end-radius: var(--border-radius);
    border-end-start-radius: var(--border-radius);
}

.section--divider::after {
    content: '';
    inset-block-start: 0;
    inset-inline-start: 0;
    position: absolute;
    width: 100%;
    border-block-start: 1px solid rgb(var(--color-border));
}

.section--plain {
    background-image: none;
    background-color: rgb(var(--color-base-background));
}

.section--plain::before {
    background-image: none;
    background-color: rgb(var(--color-base-background));
}


/*! drawer */

.modal-scrollbar-measure {
    display: block;
    position: absolute;
    inset-block-start: -100rem;
    width: 5rem;
    height: 5rem;
    overflow: scroll;
}

.has-modal-opening,
.has-modal-open {
    overflow: hidden;
    padding-inline-end: var(--scrollbar-width);
}

.touch .has-modal-open {
    touch-action: none
}

.drawer {
    --color-foreground: var(--color-drawer-text);
    --color-background: var(--color-drawer-background);
    --color-overlay: var(--color-drawer-overlay);
    --color-button-background: var(--color-drawer-button-background);
    --color-button-gradient: var(--color-drawer-button-gradient);
    --color-button-border: var(--color-drawer-button-background);
    --color-button-text: var(--color-drawer-button-text);
    --color-border: var(--color-foreground)/ 0.1;
    --color-border-dark: var(--color-foreground)/ 0.4;
    --color-border-light: var(--color-foreground)/ 0.06;
    --section-background: initial;
}

.section__color-wrapper {
    display: flow-root;
    /* Modern clearfix */
    background: rgb(var(--section-background, var(--background)));
}

.drawer[hidden] {
    content-visibility: hidden;
}

.drawer .overlay {
    cursor: none;
    transition: .8s cubic-bezier(.7, 0, .2, 1);
    transition-property: opacity, visibility, background-color;
}

.drawer--start .overlay {
    background: linear-gradient(to var(--transform-origin-start), rgb(var(--color-overlay)/ 0.2) 20%, rgb(var(--color-overlay)/ 0.5) 60%)
}

.drawer--end .overlay {
    background: linear-gradient(to var(--transform-origin-end), rgb(var(--color-overlay)/ 0.2) 20%, rgb(var(--color-overlay)/ 0.5) 60%)
}

@media screen and (min-width: 1280px) {
    .drawer--start .overlay {
        background: linear-gradient(to var(--transform-origin-start), rgb(var(--color-overlay)/ 0.2) 40%, rgb(var(--color-overlay)/ 0.5) 80%)
    }
    .drawer--end .overlay {
        background: linear-gradient(to var(--transform-origin-end), rgb(var(--color-overlay)/ 0.2) 40%, rgb(var(--color-overlay)/ 0.5) 80%)
    }
}

.drawer__header {
    border-block-end: 1px solid rgb(var(--color-border-light));
    padding: var(--sp-8) var(--sp-5) var(--sp-6);
    transition: var(--animation-primary) .1s;
    transition-property: opacity, visibility;
}

@media screen and (min-width: 1024px) {
    .drawer__header {
        padding-inline: var(--sp-12)
    }
}

@media screen and (min-width: 1536px) {
    .drawer__header {
        padding-block-end: var(--sp-8);
        padding-block-start: var(--sp-10)
    }
}

.drawer__close {
    height: var(--sp-12);
    width: var(--sp-12);
    flex: 0 0 auto;
    margin-inline-start: auto;
}

.drawer__close .icon+.icon {
    transition: var(--animation-fast);
    transition-property: opacity, visibility;
}

.drawer.loading .drawer__close {
    --border-opacity: 0;
}

.drawer.loading .drawer__close .icon:first-child {
    opacity: 0;
}

.drawer.loading .drawer__close .icon+.icon {
    opacity: 1;
    visibility: visible;
    transition-delay: 0.1s;
}

.drawer__content {
    overflow-x: hidden;
    overflow-y: auto;
    transition: var(--animation-primary) .1s;
    transition-property: opacity, visibility;
}

.drawer__inner {
    max-width: 36rem;
    color: rgb(var(--color-foreground));
    background-color: rgb(var(--color-background));
    transform: translateX(calc(var(--tw-translate-x) * var(--transform-logical)));
}

.drawer--start .drawer__inner {
    --tw-translate-x: -100%;
    inset-inline-start: 0;
}

[data-rounded-block=round] .drawer--start .drawer__inner {
    border-end-end-radius: var(--sp-8d5);
    border-start-end-radius: var(--sp-8d5);
}

.drawer--end .drawer__inner {
    --tw-translate-x: 100%;
    inset-inline-end: 0;
}

[data-rounded-block=round] .drawer--end .drawer__inner {
    border-end-start-radius: var(--sp-8d5);
    border-start-start-radius: var(--sp-8d5);
}

.loaded .drawer__inner {
    transition: transform .6s cubic-bezier(.7, 0, .2, 1)
}

.drawer[open] {
    pointer-events: auto
}

.drawer[active]>.drawer__inner {
    --tw-translate-x: 0;
}

.drawer[active]>.drawer__inner>:is(.drawer__content,
.drawer__header) {
    opacity: 1;
    visibility: visible;
    transition: var(--animation-primary) .35s;
    transition-property: opacity, visibility;
}

.drawer[active]>.overlay {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.loaded .drawer[open=immediate]>.drawer__inner,
.drawer[open=immediate]>.overlay,
.drawer[open=immediate]>.drawer__inner>:is(.drawer__content,
.drawer__header) {
    transition: none;
    opacity: 1;
    visibility: visible;
    transform: none;
}

@media screen and (max-width: 639px) {
    .js .drawer .overlay {
        background: none
    }
    .js .drawer__header::before {
        --tw-translate-x: -50%;
        content: '';
        background-color: rgb(var(--color-border));
        border-radius: var(--rounded-full);
        height: var(--sp-1);
        width: var(--sp-12);
        position: absolute;
        inset-block-start: var(--sp-2d5);
        inset-inline-start: 50%;
        transform: translateX(calc(var(--tw-translate-x) * var(--transform-logical)));
    }
    .js .drawer__close {
        --buttons-border-width: 0;
        position: absolute;
        inset-block-start: var(--sp-1);
        inset-inline-end: var(--sp-1);
        backdrop-filter: none;
        opacity: 0;
        pointer-events: none;
    }
    .js .drawer__close:focus-visible {
        opacity: 1;
        pointer-events: visible;
    }
    .js .drawer .drawer__inner {
        border-end-end-radius: 0;
        border-end-start-radius: 0;
        border-start-end-radius: var(--sp-5);
        border-start-start-radius: var(--sp-5);
        height: 100%;
        width: 100%;
        max-height: calc(100% - 60px);
        max-width: none;
        inset-block-start: auto;
        inset-block-end: 0;
        transform: translate3d(0, 100%, 0);
        top: unset !important;
    }
    .js .drawer[active]>.drawer__inner {
        transform: translateZ(0)
    }
    .js .drawer[active]>.overlay {
        background: none;
        background-color: rgb(var(--color-overlay)/ 0.7);
        transform: translateZ(0)
    }
    .drawer[active]>.drawer__inner>:is(.drawer__content,
    .drawer__header) {
        transition-delay: 0s;
    }
}

@media (prefers-reduced-motion: reduce) {
    .loaded .drawer__inner {
        transition: opacity var(--animation-primary);
    }
    .drawer .overlay {
        transition: var(--animation-primary);
        transition-property: opacity, visibility;
    }
    .drawer__inner {
        opacity: 0;
    }
     :is(.drawer--start,
    .drawer--end) .drawer__inner {
        transform: translateZ(0)
    }
    .drawer[active]>.drawer__inner {
        opacity: 1;
    }
    .drawer[active]>.drawer__inner>:is(.drawer__content,
    .drawer__header) {
        transition-delay: 0s;
    }
}


/*! modal */

.x-modal .overlay {
    background: rgb(var(--color-overlay)/ 0.7);
}

.x-modal .drawer__scrollable>* {
    padding-block-end: var(--sp-9)
}

.x-modal .drawer__scrollable>:last-child {
    padding-block-end: 0
}

@media screen and (min-width: 640px) {
    .x-modal:not([hidden]) {
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .x-modal .drawer__header {
        border-block-end: 0;
        padding-block-end: 0;
    }
    .x-modal .drawer__inner {
        position: static;
        height: auto;
        max-height: 90vh;
        max-width: 60rem;
        margin-inline: var(--gap-padding);
        transform: scale(0.8);
        opacity: 0;
        border-radius: var(--rounded-block);
    }
    .x-modal[active]>.drawer__inner {
        opacity: 1;
        transform: scale(1);
    }
    .loaded .x-modal .drawer__inner {
        transition-property: transform, opacity;
    }
}

@media (prefers-reduced-motion: reduce) {
    .x-modal .drawer__inner {
        transform: scale(1);
    }
}

.x-modal table {
    width: 100%;
    table-layout: fixed;
}


/*! no-js */

.no-js details[is=details-dropdown]>.dropdown,
.no-js details[is=details-mega]>.mega-menu {
    inset-block-start: 100%;
}

.no-js details[is=details-dropdown][open]>.dropdown,
.no-js details[is=details-mega][open]>.mega-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.no-js details[is=details-mega]>.mega-menu .mega-menu__container {
    visibility: visible;
    transform: translateY(0px);
}

.no-js :is(details[is=details-dropdown],
details[is=details-mega])[open]>summary .menu__item [data-text]:has(~.btn-duplicate) {
    opacity: 0;
    transform: translateY(-10%) scale(.6);
}

.no-js :is(details[is=details-dropdown],
details[is=details-mega])[open]>summary .menu__item .btn-duplicate {
    --tw-scale: 1;
    --tw-translate-y: 0%;
}

.no-js .dropdown .dropdown__nav li,
.no-js .mega-menu .mega-menu__nav li,
.no-js .mega-menu .mega-menu__nav-item {
    --tw-translate-x: 0;
    opacity: 1;
}

.no-js .mega-menu .mega-menu__item {
    --tw-translate-y: 0;
    --tw-translate-x: 0;
    opacity: 1;
}


/*! card-grid */

.card-grid {
    --card-grid-per-row: 2;
    --card-grid-template: auto-flow dense/repeat(var(--card-grid-per-row), minmax(0, 1fr));
    --card-grid-gap: var(--sp-3);
    grid: var(--card-grid-template);
    gap: var(--card-grid-gap);
}

@media screen and (max-width: 639px) {
    .mobile\:card-grid--1 {
        --card-grid-per-row: 1;
    }
    .collection .mobile\:card-grid--1 .card {
        grid-column: 1/-1;
    }
}

@media screen and (min-width: 768px) {
    .card-grid {
        --card-grid-per-row: 3;
        --card-grid-gap: clamp(var(--sp-4), 1.263vw, var(--sp-6));
    }
    .card-grid--1 {
        --card-grid-per-row: 1
    }
    .card-grid--2 {
        --card-grid-per-row: 2
    }
}

@media screen and (min-width: 1280px) {
    .card-grid--3 {
        --card-grid-per-row: 3
    }
    .card-grid--4,
    .card-grid--5 {
        --card-grid-per-row: 4
    }
}

@media screen and (min-width: 1536px) {
    .card-grid--5 {
        --card-grid-per-row: 5
    }
}

.card-grid .media-card--overlap {
    --color-foreground: 255 255 255;
    --color-overlay: 0 0 0;
    --overlay-opacity: 0.3;
}

.card-grid .media-card__text {
    --tw-translate-x: 0;
}

@media screen and (min-width: 1280px) {
    .collection.with-sidebar :is(.card-grid--4,
    .card-grid--5) {
        --card-grid-per-row: 3;
    }
}

@media screen and (min-width: 1536px) {
    .collection.with-sidebar .card-grid--5 {
        --card-grid-per-row: 4;
    }
}


/*! badge */

.badges {
    --badge-padding: clamp(var(--sp-6), 2.105vw, var(--sp-10));
    inset-block-start: var(--sp-3);
    inset-inline-start: var(--sp-3);
}

@media screen and (min-width: 768px) {
    .badges {
        inset-block-start: var(--sp-5);
        inset-inline-start: var(--sp-5);
    }
}

.badge {
    --badge-background: rgb(var(--color-foreground));
    --badge-foreground: rgb(var(--color-background));
    background-color: var(--badge-background);
    color: var(--badge-foreground);
    padding: var(--sp-1d5) var(--sp-2d5);
    font-size: var(--text-2xs);
    width: max-content;
}

@media screen and (min-width: 768px) {
    .badge {
        padding: var(--sp-2d5) var(--sp-4);
        font-size: var(--text-sm);
    }
    .discounts .badge {
        padding-block: var(--sp-2);
    }
}

.badge.badge--onsale {
    --badge-background: rgb(var(--color-sale-tag));
    --badge-foreground: rgb(var(--color-sale-tag-text));
}

.badge.badge--highlight {
    --badge-background: rgb(var(--color-sale-tag)/ 0.1);
    --badge-foreground: rgb(var(--color-sale-tag));
}


/*! shopify-challenge, shopify-policy */

.main-content .shopify-challenge__container,
.main-content .shopify-policy__container {
    margin: 0 auto;
    max-width: var(--page-width);
    padding-inline: var(--page-padding);
}

.shopify-challenge__container,
.shopify-policy__container {
    display: grid;
    gap: var(--sp-8);
    padding-block: var(--sp-16);
}

.shopify-challenge__message {
    font-size: var(--text-lg);
    line-height: 1.6
}

.shopify-challenge__container form {
    display: grid;
    gap: var(--sp-5);
}

.shopify-challenge__button {
    min-width: var(--sp-48);
}

@media screen and (min-width: 1024px) {
    .main-content .shopify-challenge__container,
    .main-content .shopify-policy__container {
        --page-padding: var(--sp-12);
        max-width: 70rem;
        padding-block: var(--sp-28);
        font-family: 'Univers LT Pro';

        h1 {
            color: #000;
            leading-trim: both;
            text-edge: cap;
            font-size: 24px !important;
            font-weight: 400;
            line-height: 100%;
            letter-spacing: -1.2px !important;
            text-align:left;
          }
    }
    .shopify-challenge__message {
        font-size: var(--text-2xl);
    }
}


/*! alert */

.alert {
    padding: var(--sp-5);
}

[data-rounded-block=round] .alert {
    border-radius: var(--inputs-radius);
}

.alert--success {
    color: rgb(var(--color-success-text));
    background-color: rgb(var(--color-success-background));
}

.alert--error {
    color: rgb(var(--color-error-text));
    background-color: rgb(var(--color-error-background));
}

.alert--info {
    color: rgb(var(--color-info-text));
    background-color: rgb(var(--color-info-background));
}

.alert--transparent {
    padding: 0;
    background-color: transparent;
}


/*! 404 */

.page-404 {
    gap: var(--sp-23);
}

.page-404 .text-lg {
    line-height: 1.4;
}

.page-404 .button-group {
    max-width: 38rem;
    margin: 0 auto;
    width: 100%;
    padding-inline: var(--gap-padding);
}

@media screen and (min-width: 768px) {
    .page-404 {
        gap: var(--sp-14);
    }
    .page-404 .button-group .button {
        min-height: 3.75rem;
    }
}


/*! slider-element */

.slider {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.slider::-webkit-scrollbar {
    height: 10px;
    width: 10px;
    display: none;
}

.no-js .slider {
    -ms-overflow-style: auto;
    scrollbar-width: auto;
}

.no-js .slider::-webkit-scrollbar {
    display: initial;
}

@media screen and (max-width: 1023px) {
    .slider--tablet {
        overflow-y: hidden;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        overscroll-behavior-x: contain;
        scroll-behavior: smooth;
        padding-inline: var(--page-padding);
        margin-inline: calc(var(--page-padding) * -1);
        scroll-padding-inline: var(--page-padding);
        padding-block-end: var(--card-shadow-vertical-offset);
    }
    .slider--tablet .card-grid {
        --slider-item-width: 36vw;
        --slider-grid: auto / auto-flow var(--slider-item-width);
        grid: var(--slider-grid);
    }
}

@media screen and (max-width: 639px) {
    .slider--tablet .mobile\:card-grid--1 {
        --slider-item-width: 74vw;
    }
}

@media screen and (min-width: 1024px) {
    .slider--desktop {
        overflow-y: hidden;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        overscroll-behavior-x: contain;
        scroll-behavior: smooth;
        padding-inline: var(--page-padding);
        margin-inline: calc(var(--page-padding) * -1);
        scroll-padding-inline: var(--page-padding);
        padding-block-end: var(--card-shadow-vertical-offset);
    }
    .slider--desktop .card-grid {
        --slider-item-width: calc(calc(var(--page-container) / var(--card-grid-per-row)) - var(--card-grid-gap) * calc(var(--card-grid-per-row) - 1) / var(--card-grid-per-row));
        --slider-grid: auto / auto-flow var(--slider-item-width);
        grid: var(--slider-grid);
    }
}

@media (prefers-reduced-motion) {
    .slider {
        scroll-behavior: auto;
    }
}

.slider .card {
    scroll-snap-align: start;
}

.slider+ :is(p,
.indicators) {
    text-align: center;
    justify-content: center;
    margin-block-start: clamp(var(--sp-8), 2.526vw, var(--sp-12));
}


/*! Shopify Cookie banner */

#shopify-pc__banner {
    display: none !important;
}



/*! theme-base: global extras */
@keyframes preloading {
    0%,
    44%,
    88.1%,
    to {
        transform-origin: var(--transform-origin-start)
    }
    0%,
    to,
    88% {
        transform: scaleX(0)
    }
    44.1%,
    88% {
        transform-origin: var(--transform-origin-end)
    }
    33%,
    44% {
        transform: scaleX(1)
    }
}

[data-lazy-image] .media.loading::before,
[data-lazy-image] .media.loading::after {
    content: '';
    z-index: 1;
    position: absolute;
    width: min(50px, 34%);
    height: 2px;
    box-shadow: none;
    inset-inline-start: 50%;
    inset-block-start: 50%;
    margin-block-start: -1px;
    margin-inline-start: max(-25px, -17%);
    background-color: rgb(var(--color-base-text));
}

[data-lazy-image] .media.loading::before {
    background-color: rgb(var(--color-base-background));
}

[data-lazy-image] .media.loading::after {
    animation: preloading 1.2s infinite ease;
}

[data-lazy-image] .media.loading>img {
    opacity: 0;
}
[data-page-rendering] #MainContent .shopify-section+.shopify-section~.shopify-section {
    content-visibility: auto;
}

.shopify-design-mode [data-page-rendering] #MainContent .shopify-section+.shopify-section~.shopify-section,
.no-js [data-page-rendering] #MainContent .shopify-section+.shopify-section~.shopify-section,
.no-touch [data-page-rendering] #MainContent .shopify-section+.shopify-section~.shopify-section {
    content-visibility: visible;
}

[data-page-rendering] .media.loading::after {
    animation: none;
}

[data-page-rendering] .label-swatch,
[data-page-rendering] .label-swatch::after,
[data-page-rendering] .color-swatch::after,
[data-page-rendering] .product__info.lg\:sticky,
[data-page-rendering] .product__gallery-container.lg\:sticky {
    transition-property: none;
}
.visually-hidden {
    position: absolute !important;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
}
