/** Shopify CDN: Minification failed

Line 4302:0 Unexpected "3"

**/
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
}

html {
    scroll-behavior: smooth;
    padding-bottom: 0 !important;
}

/* Removed background color of menu close button */
button.button-close::after {
  background: none !important;
  background-color: transparent !important;
  content: none !important;
  display: none !important;
}

button.button-close {
  background: white !important;
  background-color: white !important;
  border: none !important;
  box-shadow: none !important;
}

button.button-close svg {
  fill: black !important;
}

/* Add spacing to logo and menu icon */
.header__heading,
.header__inline-menu,
.header__icon,
.header__menu {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

/* If above doesn’t affect both sides, apply to container */
.header__wrapper,
.shopify-section-header,
.header {
  padding-left: 16px !important;
  padding-right: 16px !important;
  box-sizing: border-box;
}


body {
    overflow-x: hidden;
    word-break: break-word;
    position: relative;
    width: 100vw;
    background-color: rgb(var(--layout-background-color));
}
body::after {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: -1;
    background-color: rgb(var(--layout-background-color));
}
body.hidden {
    overflow: clip !important;
    touch-action: none !important;
    -ms-touch-action: none !important;
    overscroll-behavior-y: none;
}
.body-accent-selection ::selection {
    background-color: rgba(var(--accent-button-color), .4);
}
.body.disable-selection:not(.gift-card) {
    user-select: none !important;
    -webkit-user-select: none !important;
}

/* #region Fade in */

.fade-in:not(.body) {
    position: relative;
}

.fade-in::before {
    content: "";
    position: absolute;
    inset: 0; 
    display: var(--fade-in-element-display, block);
    background-color: rgb(var(--layout-background-color));
    opacity: 1;
    will-change: opacity;
    transition: opacity var(--fade-in-duration) ease-out;
    pointer-events: none; 
    z-index: 9999; 
}

.fade-in:not(.body)::before {
    top: var(--header-group-height, 0);
}

.body.loaded .fade-in::before,
.body.loaded.fade-in::before {
    opacity: 0;
}

@media screen and (min-width: 921px) {
    html:has(.fade-in):has(.overlapping-section--first) {
        .fade-in::before {
            all: unset;
        }

        .body::before {
            content: "";
            position: absolute;
            inset: 0; 
            top: var(--header-group-height, 0);
            display: var(--fade-in-element-display, block);
            background-color: rgb(var(--layout-background-color));
            opacity: 1;
            will-change: opacity;
            transition: opacity var(--fade-in-duration) ease-out;
            pointer-events: none; 
            z-index: 9999; 
        }

        .body.loaded::before {
            opacity: 0;
        }
    }
}

/* #endregion */

html[dir="ltr"] #shop-hcaptcha-badge-container {
    left: calc(100% - 56px) !important;
}

html[dir="rtl"] #shop-hcaptcha-badge-container {
    left: unset !important;
    border-top-left-radius: unset !important;
    border-bottom-left-radius: unset !important;
    inset-inline-start: calc(100% - 56px);
    border-start-start-radius: 12px;
    border-end-start-radius: 12px ; 

    &:hover {
        transform: translateX(calc(100% - 56px)) !important;
    }
}

.no-user-select {
    user-select: none;
    -webkit-user-select: none;
}

object {
    overflow: visible !important;
    padding: 0;
    display: block;
    height: fit-content;
}

a {
    color: inherit;
    text-decoration: none;
}
a, button {
    cursor: pointer;
}
a, button, label, dialog, p, a:focus, button:focus, input, input:focus, select, [role="button"] {
    -webkit-tap-highlight-color: transparent!important;
    -webkit-appearance: none;
    appearance: none;
    -webkit-text-fill-color: inherit;
    -moz-appearance: none;
}
a:not(.focused), button:not(.focused), label:not(.focused), dialog:not(.focused), p, a:not(.focused):focus, input:not(.focused), input:not(.focused):focus, select:not(.focused),
input:not(.focused):active, textarea:not(.focused),textarea:not(.focused):focus,textarea:active {
    outline: none;
}
input.focused + label {
    outline: -webkit-focus-ring-color auto 1px;
}

button {
    border: none;
    background-color: transparent;
}

li {
    list-style-type: none;
}

img {
    object-fit: cover;
}

h1, h2, h3, h4, h5, h6 {
    word-break: break-word;
}
input[type='number']::-webkit-outer-spin-button,
input[type='number']::-webkit-inner-spin-button {
    -webkit-appearance: none;
    appearance: none;
}
input[type='number'] {
    -moz-appearance: textfield;
    appearance: textfield;
    border: none;
}
input[type='number']:focus {
    border: none;
}

input {
    caret-color: rgb(var(--layout-text-color));
}

.theme-content {
    display: flex;
    background-color: rgb(var(--layout-background-color));
    position: relative;
    width: 100vw;
    max-width: 100%;
    z-index: 1;
    min-height: 100vh;
}
.inside-content {
    display: flex;
    flex-direction: column;
    width: 100%;
    position: relative;
}

[hidden] {
    display: none !important;
}

body.body--contain .inside-content main section:not(.slideshow-section) *:not(.thumbnail-slider *):not(.product__info-container *):not(.rich-text *):not(.media-with-text *):not(.card__content *):not(.events *):not(.slider__grid.product__media-list *) {
    contain: layout style;
}
body.body--contain.hidden .inside-content main *,
body.body--contain.quick-view-open .inside-content main * {
    contain: none !important;
}

@media screen and (min-width: 921px) {
    @supports selector(:has(+ *)) {
        .inside-content:has(main .shopify-section:first-child .overlapping-section) .header-section,
        .inside-content:has(main .shopify-section:first-child .overlapping-section) .header-group__sections {
            margin-bottom: -100%;
        }
        .inside-content:has(main .shopify-section:first-child .overlapping-section) .shopify-section-header-hidden:not(.header--static) .header-section {
            transform: translateY(-100%);
        }
    }
    overlap-navigation:not(.loaded) .shopify-section:first-child .overlapping-container-js + div {
        opacity: 0;
    }
    overlap-navigation:not(.loaded) .shopify-section:first-child .overlapping-section .slideshow__controls,
    overlap-navigation:not(.loaded) .shopify-section:first-child .overlapping-section .slideshow__controls-button {
        opacity: 0;
    }
}
@media screen and (max-width: 920px) {
    @supports selector(:has(+ *)) {
        .inside-content:has(main .shopify-section:first-child .overlapping-section) .mobile-header-section,
        .inside-content:has(main .shopify-section:first-child .overlapping-section) .header-group__sections {
            margin-bottom: -100%;
        }
        .inside-content:has(main .shopify-section:first-child .overlapping-section) .shopify-section-mobile-header-hidden:not(.header--static) .mobile-header-section {
            transform: translateY(-100%);
        }
    }
}

.header-group {
    position: relative;
}

.inside-content main {
    flex: 1 1 auto;
    max-width: 100%;
}
.page-width {
    max-width: var(--page-width);
    margin: 0 auto;
}
.grid {
    display: grid;
}

.section-padding--spacious {
    padding-inline-start: 48px;
    padding-inline-end: 48px;
}
.section-padding--compact {
    padding-inline-start: 24px;
    padding-inline-end: 24px;
}

section[id^="shopify-section-"]:first-of-type .ordinal-section {
    padding-top: max(calc(24px + var(--padding-top)), 0px);
}

section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
    padding-bottom: max(calc(160px + var(--padding-bottom)), 0px);
}

section[id^="shopify-section-"]:last-of-type .ordinal-section--compact {
    padding-bottom: max(calc(48px + var(--padding-bottom)), 0px);
}

.ordinal-section--spacious {
    --section-padding: 96px;
}
.ordinal-section--spacious.ordinal-section--lines {
    --section-padding: 64px;
}
.ordinal-section--compact {
    --section-padding: 32px
}
.ordinal-section {
    padding-top: max(calc(var(--section-padding) + var(--padding-top)), 0px);
    padding-bottom: max(calc(var(--section-padding) + var(--padding-bottom)), 0px);
}

.app {
    font-family: var(--base-font-family);
    font-style: var(--base-font-style);
    font-weight: var(--base-font-weight);
}

input {
    border: none;
    background-color: transparent;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    border-radius: 0;
}
input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill {
    transition-delay: 300s;
}
html[dir="rtl"] input:is([type="email"], [type="tel"], [type="number"], [type="url"])::placeholder {
    text-align: var(--placeholder-align); 
}
input[type="checkbox"], 
input[type="radio"] {
    border: var(--outline-thickness) solid rgb(var(--accent-button-color));
    background: transparent;
    width: 24px;
    height: 24px;
    cursor: pointer;
}
.no-default-color input[type="checkbox"] {
    border-color: rgb(var(--layout-text-color));
}
input[type="checkbox"] {
    border-radius: 3px;
}
input[type="checkbox"]:focus {
    outline-offset: -1px;
}
input[type="checkbox"]:checked {
    background-color: rgb(var(--accent-button-color));
    position: relative;
}
.no-default-color input[type="checkbox"]:checked {
    background-color: rgb(var(--layout-text-color));
}
input[type="checkbox"]:checked::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    z-index: 5;
    -webkit-mask-position: center;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: 90%;
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: 90%;
    background-color: rgb(var(--layout-background-color));
    -moz-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTcuNjcyNDIgMTYuMzUwOEwwLjgzMzI1MiA5LjUxMTY1TDIuMDExNTkgOC4zMzMzM0w3LjY3MjQyIDEzLjk5NDFMMTcuNDk5OSA0LjE2NjY2TDE4LjY3ODMgNS4zNDQ5OUw3LjY3MjQyIDE2LjM1MDhaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
    -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTcuNjcyNDIgMTYuMzUwOEwwLjgzMzI1MiA5LjUxMTY1TDIuMDExNTkgOC4zMzMzM0w3LjY3MjQyIDEzLjk5NDFMMTcuNDk5OSA0LjE2NjY2TDE4LjY3ODMgNS4zNDQ5OUw3LjY3MjQyIDE2LjM1MDhaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
    mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTcuNjcyNDIgMTYuMzUwOEwwLjgzMzI1MiA5LjUxMTY1TDIuMDExNTkgOC4zMzMzM0w3LjY3MjQyIDEzLjk5NDFMMTcuNDk5OSA0LjE2NjY2TDE4LjY3ODMgNS4zNDQ5OUw3LjY3MjQyIDE2LjM1MDhaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
}
input[type="radio"] {
    border-radius: 50%;
}
input[type="radio"]:checked {
    background-image: radial-gradient(rgb(var(--layout-background-color)) 0px, rgb(var(--layout-background-color)) 20%, rgb(var(--accent-button-color)) 20%, rgb(var(--accent-button-color)) 100%);
}
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  -webkit-appearance:none;
}
input[disabled="disabled"] {
    cursor: default;
    background-color: rgb(var(--layout-background-color));
    border: var(--outline-thickness) solid rgba(var(--layout-text-color), 0.8);
}

textarea {
    background-color: transparent;
    border-radius: var(--textarea-radius);
    color: rgb(var(--layout-text-color));
}

.select {
    position: relative;
}
select {
    border: var(--outline-thickness) solid rgb(var(--layout-text-color));
    border-radius: var(--field-radius);
    background: transparent;
    padding-inline: 12px 32px;
    padding-block: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    min-height: 44px;
}
.select svg {
    fill: rgb(var(--layout-text-color));
}
.select select {
    -webkit-appearance: none;
    appearance: none;
    -webkit-text-fill-color: rgb(var(--layout-text-color));
    -moz-appearance: none;
    line-height: calc(44px - var(--outline-thickness));
}
.select-icon {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    inset-inline-end: 12px;
    display: flex;
    align-items: center;
    z-index: 3;
    pointer-events: none;
}
.select-icon svg {
    width: auto;
    height: 100%;
}

.solid-button, 
.outlined-button,
.link-button {
    width: fit-content;
    transition: all var(--animation-duration) var(--transition-timing-function);
}
.solid-button, 
.outlined-button {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 200px;
}
.link-button {
    display: inline;
}
.big-button,
.shopify-challenge__button,
.solid-button,
body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-accept,
body .shopify-pc__prefs__header-actions > button.primary {
    position: relative;
    color: rgb(var(--base-button-color));
    background-color: rgb(var(--accent-button-color));
    border-radius: var(--button-radius);
    -webkit-border-radius: var(--button-radius);
    z-index: 3;
}
shopify-accelerated-checkout {
    --shopify-accelerated-checkout-button-block-size: 44px;
    --shopify-accelerated-checkout-button-border-radius: var(--button-radius);
    --shopify-accelerated-checkout-button-box-shadow: none;
    --shopify-accelerated-checkout-skeleton-background-color: #dedede;
    --shopify-accelerated-checkout-skeleton-animation-opacity-start: 1;
    --shopify-accelerated-checkout-skeleton-animation-opacity-end: 0.5;
    --shopify-accelerated-checkout-skeleton-animation-duration: 4s;
    --shopify-accelerated-checkout-skeleton-animation-timing-function: ease;
}

shopify-accelerated-checkout-cart {
    --shopify-accelerated-checkout-button-block-size: 42px;
    --shopify-accelerated-checkout-button-inline-size: 54px;
    --shopify-accelerated-checkout-button-border-radius: var(--button-radius);
    --shopify-accelerated-checkout-button-box-shadow: none;
    --shopify-accelerated-checkout-inline-alignment: flex-start;
    --shopify-accelerated-checkout-row-gap: 8px;
    --shopify-accelerated-checkout-skeleton-background-color: #dedede;
    --shopify-accelerated-checkout-skeleton-animation-opacity-start: 1;
    --shopify-accelerated-checkout-skeleton-animation-opacity-end: 0.5;
    --shopify-accelerated-checkout-skeleton-animation-duration: 4s;
    --shopify-accelerated-checkout-skeleton-animation-timing-function: ease;
}
.big-button,
.shopify-challenge__button {
    padding: 12px 32px;
    min-height: 64px;
    transition: background-color var(--animation-duration) var(--transition-timing-function);
}
.solid-button,
.outlined-button,
body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-accept,
body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-decline,
body .shopify-pc__prefs__header-actions > button {
    padding: 6px 24px;
    min-height: 44px;
}
.outlined-button::after,
.buttons-zoom.elem-hover--outlined:not(.disabled)::after,
.solid-button::after, 
.big-button::after, 
.shopify-challenge__button::after,
body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-accept::after,
body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-decline::after,
body .shopify-pc__prefs__header-actions > button::after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: transparent;
    border-radius: var(--button-radius);
    -webkit-border-radius: var(--button-radius);
}
.buttons-zoom.elem-hover--outlined:not(.disabled) a {
    z-index: 1;
}
.outlined-button::after,
.buttons-zoom.elem-hover--outlined:not(.disabled)::after,
body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-decline::after,
body .shopify-pc__prefs__header-actions > button:not(.primary)::after  {
    border: var(--outline-thickness) solid rgb(var(--accent-button-color));
    transition: transform var(--animation-duration) var(--transition-timing-function), border var(--animation-duration) var(--transition-timing-function);
}
.buttons-zoom.elem-hover--outlined:not(.disabled) .outlined-button::after {
    display: none;
}
.elem-hover {
    width: fit-content;
}
.solid-button::after, 
.big-button::after, 
.shopify-challenge__button::after,
body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-accept:after,
body .shopify-pc__prefs__header-actions > button.primary::after {
    border: var(--outline-thickness) solid transparent;
}
.no-default-color .big-button, 
.no-default-color .solid-button, 
.no-default-color .shopify-challenge__button {
    color: rgb(var(--layout-background-color));
    background-color: rgb(var(--layout-text-color));
    will-change: opacity;
    transition: opacity var(--animation-duration) var(--transition-timing-function);
}
.no-default-color .big-button[disabled], 
.no-default-color .solid-button[disabled], 
.no-default-color .shopify-challenge__button[disabled] {
    color: rgb(var(--layout-background-color));
    background-color: rgba(var(--layout-text-color), 0.8);
}
.big-button svg
.solid-button svg {
    fill: rgb(var(--base-button-color));
}
.big-button[disabled] svg
.solid-button[disabled] svg {
    fill: rgba(var(--layout-text-color), 0.8);
}
.buttons-zoom.elem-hover {
    position: relative;
}
.buttons-zoom .solid-button:not([disabled])::before,
.buttons-zoom .big-button:not([disabled])::before,
.buttons-zoom.elem-hover--solid:not(.disabled)::before {
    content: "";
    position: absolute;
    background-color: rgb(var(--accent-button-color));
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: var(--button-radius);
    overflow: hidden;
    transition: transform var(--animation-duration) var(--transition-timing-function), background-color var(--animation-duration) var(--transition-timing-function);
}
.buttons-zoom .solid-button:not([disabled])::before,
.buttons-zoom .big-button:not([disabled])::before {
    z-index: -1;
}
.buttons-zoom.elem-hover--solid:not(.disabled)::before {
    z-index: 0;
}
.no-default-color .buttons-zoom .solid-button:not([disabled])::before,
.no-default-color .buttons-zoom .big-button:not([disabled])::before,
.no-default-color .buttons-zoom.elem-hover--solid:not(.disabled)::before {
    background-color: rgb(var(--layout-text-color));
}

.big-button[disabled],
.solid-button[disabled] {
    color: rgb(var(--layout-background-color));
    background-color: rgba(var(--layout-text-color), 0.8);
}
.big-button[disabled],
.solid-button[disabled],
.outlined-button[disabled],
.link-button[disabled],
button[disabled] {
    cursor: default;
    pointer-events: none;
}
.outlined-button {
    position: relative;
    color: rgb(var(--accent-button-color));
    background-color: transparent;
    border-radius: var(--button-radius);
    -webkit-border-radius: var(--button-radius);
}

.outlined-button svg {
    fill: rgb(var(--accent-button-color));
}
.outlined-button[disabled],
.no-default-color .outlined-button[disabled],
.link-button[disabled] {
    color: rgba(var(--layout-text-color), 0.8);
}
.outlined-button[disabled]::after, 
.no-default-color .outlined-button[disabled]::after {
    border: var(--outline-thickness) solid rgba(var(--layout-text-color), 0.8);
}
.outlined-button[disabled] svg {
    fill: rgba(var(--layout-text-color), 0.8);
}
.no-default-color .outlined-button,
.no-default-color .link-button {
    color: rgb(var(--layout-text-color));
}
.no-default-color .outlined-button::after,
.no-default-color .buttons-zoom.elem-hover--outlined:not(.disabled)::after {
    border: var(--outline-thickness) solid rgb(var(--layout-text-color));
}
.no-default-color .outlined-button svg {
    fill: rgb(var(--layout-background-color));
}
.no-default-color .outlined-button[disabled] svg {
    fill: rgba(var(--layout-background-color), 0.8);
}
.link-button {
    color: rgb(var(--accent-button-color));
    background-color: transparent;
}

@media (hover: hover) {
    .big-button:hover, 
    .solid-button:hover, 
    .shopify-challenge__button:hover,
    body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-accept:hover,
    body .shopify-pc__prefs__header-actions > button.primary:hover {
        background-color: rgb(var(--hover-button-color));
    }
    .buttons-zoom .big-button:hover::before, 
    .buttons-zoom .solid-button:hover::before,
    .buttons-zoom.elem-hover--solid:hover::before {
        transform: scale3d(1.02,1.1,1);
        background-color: rgb(var(--hover-button-color));
    }
    .no-default-color .big-button:hover,
    .no-default-color .solid-button:hover, 
    .no-default-color .shopify-challenge__button:hover {
        color: rgb(var(--layout-background-color));
        background-color: rgb(var(--layout-text-color));
        opacity: .7;
    }
    .no-default-color .buttons-zoom .big-button:hover::before,
    .no-default-color .buttons-zoom .solid-button:hover::before, 
    .no-default-color .buttons-zoom .elem-hover--solid:hover::before,
    .no-default-color .buttons-zoom.elem-hover--solid:hover::before {
        background-color: rgb(var(--layout-text-color));
    }
    .outlined-button:hover,
    body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-decline:hover,
    body .shopify-pc__prefs__header-actions > button:not(.primary):hover {
        color: rgb(var(--hover-button-color));
    }
    .outlined-button:hover svg {
        fill: rgb(var(--hover-button-color));
    }
    .no-default-color .outlined-button:hover {
        color: rgb(var(--layout-text-color));
        opacity: .7;
    }
    .outlined-button:hover::after,
    .buttons-zoom .outlined-button:hover::after,
    .buttons-zoom.elem-hover--outlined:hover::after,
    body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-decline:hover::after,
    body .shopify-pc__prefs__header-actions > button:not(.primary):hover::after {
        border: var(--outline-thickness) solid rgb(var(--hover-button-color));
    }
    .buttons-zoom .outlined-button:hover::after,
    .buttons-zoom.elem-hover--outlined:hover::after {
        transform: scale3d(1.02,1.1,1);
    }
    .no-default-color .outlined-button:hover::after, 
    .no-default-color .buttons-zoom .outlined-button:hover::after, 
    .no-default-color .buttons-zoom.elem-hover--outlined:hover::after {
        border: var(--outline-thickness) solid rgba(var(--layout-text-color), 0.7);
    }
    .link-button:hover {
        color: rgb(var(--hover-button-color));
    }
    .no-default-color .link-button:hover {
        color: rgb(var(--layout-text-color)); 
        opacity: .7;
    }
}

.ltr-text {
    direction: ltr;
    unicode-bidi: embed; 
}

.richtext p:not(:last-child) {
    padding-bottom: 1em;
    display: block;
}
.richtext *:not(p):not(:first-child):not(strong):not(em):not(a):not(.table-block__col):not(li):not(.table-block__col *):not(span) {
    padding-top: 1em;
    display: block;
}
.richtext *:not(p):not(:last-child):not(strong):not(em):not(a):not(.table-block__col):not(:only-child):not(.table-block__col *):not(span) {
    padding-bottom: .5em;
    display: block;
}
.richtext ul {
    display: inline-block;
}
.richtext ul li {
    list-style-type: disc;
}
.richtext ol li {
    list-style-type: auto;
}
.richtext ul, .richtext ol {
    width: fit-content;
}
.center .richtext ul, .center .richtext ol {
    margin-inline-start: auto;
    margin-inline-end: auto;
}
.field--checkbox .richtext ul, .field--checkbox  .richtext ol {
    margin-inline-start: 0;
    margin-inline-end: 0;
}
.richtext ul li, .richtext ol li {
    display: list-item !important;
    list-style-position: inside;
    text-align: start;
    width: fit-content;
}

.richtext:not(.text-block__item) h1 {
    font-size: 48px;
    line-height: 64px;
    letter-spacing: -0.01em;
    font-weight: inherit;
}
.richtext:not(.text-block__item) h2 {
    font-size: 40px;
    line-height: 54px;
    letter-spacing: normal;
    font-weight: inherit;
}
.richtext:not(.text-block__item) h3 {
    font-size: 32px;
    line-height: 46px;
    letter-spacing: normal;
    font-weight: inherit;
}
.richtext:not(.text-block__item) h4 {
    font-size: 28px;
    line-height: 36px;
    letter-spacing: normal;
    font-weight: inherit;
}
.richtext:not(.text-block__item) h5 {
    font-size: 24px;
    line-height: 36px;
    letter-spacing: normal;
    font-weight: inherit;
}
.richtext:not(.text-block__item) h6 {
    font-size: 20px;
    line-height: 32px;
    letter-spacing: normal;
    font-weight: inherit;
}

.richtext.text-block__item h1,
.richtext.text-block__item h2,
.richtext.text-block__item h3,
.richtext.text-block__item h4,
.richtext.text-block__item h5,
.richtext.text-block__item h6 {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    font-weight: inherit;
}

/* Swiper */

.swiper {
    --swiper-theme-color: rgb(var(--layout-text-color));
    --swiper-pagination-bullet-horizontal-gap: 0;
    --swiper-pagination-bullet-border-radius: 0;
    --swiper-pagination-bullet-width: calc(100% / var(--total-slides));
    --swiper-pagination-bullet-height: 3px;
    --swiper-pagination-bullet-size: 3px;
    --swiper-pagination-bullet-inactive-color: transparent;
}

.swiper-pagination-bullets {
    display: flex;
    top: unset !important;
    --swiper-pagination-bottom: 0;
    background-color: rgba(var(--layout-text-color), .15);
}

.swiper-pagination-bullet {
    position: relative;
    background-color: transparent;
    width: calc(100% / var(--total-slides));
    transition: none;
    animation: none;
}

.swiper-pagination-bullet-active {
    background-color: rgb(var(--layout-text-color));
}

@media screen and (max-width: 768px) {
    .swiper {
        --swiper-pagination-color: rgb(var(--layout-text-color));
    }
    .swiper-pagination-bullet-active::after {
        width: 100%;
    }
    .slider__slide--two-wide {
        flex: 0 0 100%;
    }
}

.swiper-gallery .swiper-button-lock {
    display: flex;
}

.swiper-gallery .swiper-pagination-bullet:only-child {
    display: block !important;
}

@media screen and (min-width: 769px) {
    .swiper-pagination--hidden {
        visibility: hidden;
    }
}

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

/* Animation for links */

.link-animation {
    position: relative;
    will-change: opacity;
    transition: opacity var(--animation-duration) var(--transition-timing-function);
}
.link-animation--underline span,
.link-animation span,
.menu__list--secondary-sidebar .link-animation--underline span {
    background-color: transparent;
    background-image: linear-gradient(to top,rgb(var(--layout-text-color)) 0px,rgb(var(--layout-text-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    background-repeat: no-repeat;
    transition: background-size var(--animation-duration) var(--transition-timing-function);
}
.link--highlighted .link-animation--underline span,
.link--highlighted .link-animation span,
.menu__list--secondary-sidebar .link--highlighted .link-animation--underline span {
    background-color: transparent;
    background-image: linear-gradient(to top,rgb(var(--highlight-color)) 0px,rgb(var(--highlight-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    background-repeat: no-repeat;
    transition: background-size var(--animation-duration) var(--transition-timing-function);
}
.link-animation--underline span,
.link-animation span {
    background-position: right bottom, right bottom;
    background-size: 0% 1px, 100% 1px;

    [dir="rtl"] & {
        background-position: left bottom, left bottom;
    }
}
.link-animation--underline.underline-active span,
.link-animation.underline-active span {
    background-size: 100% 1px, 100% 1px;
}
.menu__list--secondary-sidebar .link-animation--underline span,
.menu__list--secondary-sidebar .link-animation span {
    background-position: bottom left, bottom left;
    background-size: 1px 0%, 1px 100%;

    [dir="rtl"] & {
        background-position: top left, top left;
    }
}
.menu__item.color-accent .link-animation--underline span,
.menu__item.color-accent .link-animation span {
    background-image: linear-gradient(to top,rgb(var(--accent-button-color)) 0px,rgb(var(--accent-button-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
}
.underline-active {
    cursor: default;
}
.link-animation--slide span {
    line-height: 135% !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
    transition: transform var(--animation-duration) .1s;
    position: relative;
}
.link-animation--slide:not(.underline-active) span::before {
    content: attr(data-hover);
    line-height: 135% !important;
    position: absolute;
    top: 100%;
    display: flex;
    align-items: flex-start;
    overflow-y: hidden;
    transform: translate3d(0, 0, 0);
    will-change: opacity;
    transition: opacity 0.1s var(--transition-timing-function) 0.1s;
}
.secondary-sidebar .link-animation--slide:not(.underline-active) span::before {
    top: 0;
    left: -100%;
}
.transparent-sidebar.invert-sidebar .link-animation--slide:not(.underline-active) span::before {
    content: attr(data-hover);
    background: inherit;
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
}
.menu__list--secondary-sidebar .underline-active {
    background-color: transparent;
    background-image: linear-gradient(to top,rgb(var(--layout-text-color)) 0px,rgb(var(--layout-text-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    background-repeat: no-repeat;
}
.underline-active {
    background-position: right bottom, right bottom;
    background-size: 100% 1px, 100% 1px;
}
.menu__list--secondary-sidebar .underline-active {
    background-position: left top, left top;
    background-size: 1px 100%, 1px 100%;
    transition: background-size var(--animation-duration) var(--transition-timing-function);
}
.richtext a,
.link-button,
.icon-button.link-button .icon-button__title,
.shopify-pc__banner__body p a,
.shopify-pc__banner__btn-manage-prefs span {
    color: rgb(var(--accent-button-color));
    position: relative;
    background-color: transparent;
    background-image: linear-gradient(to top,rgb(var(--accent-button-color)) 0px,rgb(var(--accent-button-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    background-repeat: no-repeat;
    background-position: right bottom, right bottom;
    background-size: 100% 1px, 100% 1px;
    will-change: color;
    transition: color var(--animation-duration) var(--transition-timing-function);

    [dir="rtl"] & {
        background-position: left bottom, left bottom;
    }
}

.link-button[disabled], 
.icon-button.link-button[disabled] .icon-button__title {
    background-image: linear-gradient(to top,rgba(var(--layout-text-color), 0.8) 0px,rgba(var(--layout-text-color), 0.8) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    color: rgba(var(--layout-text-color), 0.8);
}

.no-default-color .richtext a,
.no-default-color .link-button,
.no-default-color .icon-button.link-button .icon-button__title {
    will-change: opacity;
    color: rgb(var(--layout-text-color));
    background-image: linear-gradient(to top,rgb(var(--layout-text-color)) 0px,rgb(var(--layout-text-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    transition: color var(--animation-duration) var(--transition-timing-function), opacity var(--animation-duration) var(--transition-timing-function);
}

.no-default-color .link-button[disabled],
.no-default-color .icon-button.link-button[disabled] .icon-button__title {
    color: rgba(var(--layout-text-color), 0.8);
    background-image: linear-gradient(to top,rgba(var(--layout-text-color), 0.8) 0px,rgba(var(--layout-text-color), 0.8) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
}

.richtext-link--underline a,
.link-button--underline {
    transition: background-size var(--animation-duration) var(--transition-timing-function), color var(--animation-duration) var(--transition-timing-function), background-position var(--animation-duration) var(--transition-timing-function);
}

.icon-button.link-button {
    background-image: none!important;
    background-size: 0 !important;
}

.solid-button.icon-button svg {
    fill: rgb(var(--layout-background-color));
    transition: fill var(--animation-duration) var(--transition-timing-function);
}
.outlined-button.icon-button svg, 
.link-button.icon-button svg {
    fill: rgb(var(--accent-button-color));
    transition: fill var(--animation-duration) var(--transition-timing-function);
}

.no-default-color .outlined-button.icon-button svg,
.no-default-color .link-button.icon-button svg {
    fill: rgb(var(--layout-text-color));
}
.outlined-button[disabled].icon-button svg,
.link-button[disabled].icon-button svg {
    fill: rgba(var(--layout-text-color), 0.8);
}
@media (hover: hover) {
    .outlined-button.icon-button:hover svg,
    .link-button.icon-button:hover svg {
        fill: rgb(var(--hover-button-color));
    }
    .no-default-color .outlined-button.icon-button:hover svg,
    .no-default-color .link-button.icon-button:hover svg {
        fill: rgba(var(--layout-text-color), 0.7);
    }
}

@media (hover: hover) {
    .richtext a:hover,
    .link-button:not(.icon-button):hover,
    .icon-button.link-button:hover .icon-button__title,
    .shopify-pc__banner__body p a:hover,
    .shopify-pc__banner__btn-manage-prefs span:hover {
        color: rgb(var(--hover-button-color));
        opacity: 1;
        background-image: linear-gradient(to top,rgb(var(--hover-button-color)) 0px,rgb(var(--hover-button-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
    .icon-button.link-button:hover svg {
        fill: rgb(var(--hover-button-color));
    }
    .no-default-color .richtext a:hover,
    .no-default-color .link-button:not(.icon-button):hover,
    .no-default-color .icon-button.link-button:hover .icon-button__title  {
        color: rgb(var(--layout-text-color));
        background-image: linear-gradient(to top,rgb(var(--layout-text-color)) 0px,rgb(var(--layout-text-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
        opacity: .7;
    }
    .no-default-color .richtext-link--underline a:hover,
    .no-default-color .link-button--underline:not(.icon-button):hover,
    .no-default-color .icon-button.link-button--underline:hover .icon-button__title {
        opacity: 1;
        animation: startAnimateUnderlinedLinksNoColor var(--animation-duration) var(--transition-timing-function), endAnimateUnderlinedLinksNoColor var(--animation-duration) var(--transition-timing-function)  var(--animation-duration);

        [dir="rtl"] & {
            animation: startAnimateUnderlinedLinksNoColorRTL var(--animation-duration) var(--transition-timing-function), endAnimateUnderlinedLinksNoColorRTL var(--animation-duration) var(--transition-timing-function)  var(--animation-duration);
        }
    }
    .richtext-link--underline a:hover,
    .link-button--underline:not(.icon-button):hover,
    .icon-button.link-button--underline:hover .icon-button__title  {
        opacity: 1;
        animation: startAnimateUnderlinedLinks var(--animation-duration) var(--transition-timing-function), endAnimateUnderlinedLinks var(--animation-duration) var(--transition-timing-function)  var(--animation-duration);

        [dir="rtl"] & { 
            animation: startAnimateUnderlinedLinksRTL var(--animation-duration) var(--transition-timing-function), endAnimateUnderlinedLinksRTL var(--animation-duration) var(--transition-timing-function)  var(--animation-duration);
        }
    }
}

@keyframes startAnimateUnderlinedLinks {
    0% {
        background-position: right bottom, right bottom;
        background-size: 100% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--accent-button-color)) 0px,rgb(var(--accent-button-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
    100% {
        background-position: right bottom, left bottom;
        background-size: 0% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--accent-button-color)) 0px,rgb(var(--accent-button-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
}
@keyframes startAnimateUnderlinedLinksRTL {
    0% {
        background-position: left bottom, left bottom;
        background-size: 100% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--accent-button-color)) 0px,rgb(var(--accent-button-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
    100% {
        background-position: left bottom, right bottom;
        background-size: 0% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--accent-button-color)) 0px,rgb(var(--accent-button-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
}
@keyframes endAnimateUnderlinedLinks {
    from {
        background-position: left bottom, left bottom;
        background-size: 0% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--hover-button-color)) 0px,rgb(var(--hover-button-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
    to {
        background-position: left bottom, right bottom;
        background-size: 100% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--hover-button-color)) 0px,rgb(var(--hover-button-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
}
@keyframes endAnimateUnderlinedLinksRTL {
    from {
        background-position: right bottom, right bottom;
        background-size: 0% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--hover-button-color)) 0px,rgb(var(--hover-button-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
    to {
        background-position: right bottom, left bottom;
        background-size: 100% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--hover-button-color)) 0px,rgb(var(--hover-button-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
}
@keyframes startAnimateUnderlinedLinksNoColor {
    0% {
        background-position: right bottom, right bottom;
        background-size: 100% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--layout-text-color)) 0px,rgb(var(--layout-text-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
    100% {
        background-position: right bottom, left bottom;
        background-size: 0% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--layout-text-color)) 0px,rgb(var(--layout-text-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
}
@keyframes startAnimateUnderlinedLinksNoColorRTL {
    0% {
        background-position: left bottom, left bottom;
        background-size: 100% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--layout-text-color)) 0px,rgb(var(--layout-text-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
    100% {
        background-position: left bottom, right bottom;
        background-size: 0% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--layout-text-color)) 0px,rgb(var(--layout-text-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
}
@keyframes endAnimateUnderlinedLinksNoColor {
    from {
        background-position: left bottom, left bottom;
        background-size: 0% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--layout-text-color)) 0px,rgb(var(--layout-text-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
    to {
        background-position: left bottom, right bottom;
        background-size: 100% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--layout-text-color)) 0px,rgb(var(--layout-text-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
}
@keyframes endAnimateUnderlinedLinksNoColorRTL {
    from {
        background-position: right bottom, right bottom;
        background-size: 0% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--layout-text-color)) 0px,rgb(var(--layout-text-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
    to {
        background-position: right bottom, left bottom;
        background-size: 100% 1px, 100% 1px;
        background-image: linear-gradient(to top,rgb(var(--layout-text-color)) 0px,rgb(var(--layout-text-color)) 0px),linear-gradient(to top,transparent 0px,transparent 0px);
    }
}

@media (hover: hover) {
    .hover-link:hover .link-animation:not(.underline-active) {
        opacity: .7;
    }
    .hover-link:hover .link-animation--underline:not(.underline-active) span {
        background-position: left bottom, left bottom;
        background-size: 100% 1px, 100% 1px;

        [dir="rtl"] & {
            background-position: right bottom, right bottom;
        }
    }
    .menu__list--secondary-sidebar .hover-link:hover .link-animation--underline:not(.underline-active) span {
        background-position: top left, top left;
        background-size: 1px 100%, 1px 100%;

        [dir="rtl"] & {
            background-position: bottom left, bottom left;
        }
    }
    .hover-link:hover .link-animation--slide:not(.underline-active) span {
        transform: translateY(-100%);
    }
    .secondary-sidebar .hover-link:hover .link-animation--slide:not(.underline-active) span {
        transform: translateX(100%);
    }
    .hover-link:hover .link-animation--slide:not(.underline-active) span::before {
        opacity: 0.7;
        background: inherit;
    }
}

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

summary {
    list-style: none;
}

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

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

.product__placeholder img {
    width: 100%;
    height: 100%
}

.media {
    display: block;
    position: relative;
    overflow: hidden;
}
  
.media--transparent {
    background-color: transparent;
}

.media > *:not(.zoom):not(.deferred-media__poster-button),
.media model-viewer {
    display: block;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
}

.media .lazy-image img {
    width: 100%;
    height: 100%;
}

.product--full_width .media > *:not(.zoom):not(.deferred-media__poster-button),
.product--full_width .media model-viewer {
    display: block;
    min-width: 100%;
    width: auto;
    height: 100%;
}

.media--square {
    padding-bottom: 100%;
}
.media--portrait {
    padding-bottom: 125%;
}
.media--landscape {
    padding-bottom: 66.6%;
}

.media.media--hover-effect > img + img {
    opacity: 0;
}

figure {
    display: flex;
    position: relative;
    width: 100%;
}

figure.lazy-image--absolut,
figure.lazy-image--absolut img {
    width: 100%;
    height: 100%;
} 

figure.lazy-image,
figure.lazy-video {
    overflow: hidden;
}

figure.lazy-image--absolut > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

figure:not(.lazy-image--absolut) .lazy-image__preloader {
    position: absolute;
    width: calc(100% + 20px);
    height: calc(100% + 20px);
    top: -10px;
    left: -10px;
}

.lazy-image img,
.lazy-video video {
    opacity: 0;
}

.lazy-image--fade_scale img,
.lazy-image--fade_scale video {
    transform: scale(1.2);
    transition: opacity var(--images-duration) var(--transition-timing-function) var(--images-delay), transform var(--images-duration) var(--transition-timing-function) var(--images-delay);
}

.card.card-js .card__product-image .lazy-image--fade_scale.lazy-image:not(.lazyloaded) img {
    transform: scale(1.2);
    opacity: 0;
    transition: opacity var(--images-duration) var(--transition-timing-function) var(--images-delay), transform var(--images-duration) var(--transition-timing-function) var(--images-delay);
}

.lazy-image.lazyloaded img,
.lazy-video.lazyloaded video {
    opacity: 1;
}

.lazy-image--fade_scale.lazyloaded img,
.lazy-image--fade_scale.lazyloaded video,
.card.card-js .card__product-image .lazy-image--fade_scale.lazy-image.lazyloaded img {
    transform: scale(1);
    opacity: 1;
}

.lazy-image__preloader-pixelate img {
    opacity: 1!important;
    image-rendering: pixelated!important;
    transition: none!important;
}

.lazy-image .lazy-image__preloader,
.lazy-video .lazy-image__preloader {
    overflow: hidden;
    transition: opacity var(--images-duration) var(--transition-timing-function) var(--images-delay);
    z-index: 1;
}

.lazy-image.lazyloaded .lazy-image__preloader,
.lazy-video.lazyloaded .lazy-image__preloader {
    opacity: 0;
    z-index: -1;
}

.lazy-image__preloader-blur img {
    opacity: 1!important;
    image-rendering: unset!important;
}

.lazy-image__preloader-blur {
    position: relative;
}

.lazy-image .lazy-image__preloader-blur,
.lazy-video .lazy-image__preloader-blur {
    width: calc(100% + 20px);
    height: calc(100% + 20px);
    top: -10px;
    left: -10px;
    filter: none;
    transition: filter var(--images-duration) var(--transition-timing-function) var(--images-delay);
}

.lazy-image:not(.lazyloaded) .lazy-image__preloader-blur,
.lazy-video:not(.lazyloaded) .lazy-image__preloader-blur {
    filter: blur(10px);
}

.context-image .lazy-image__preloader img,
.lazy-image__preloader--full.lazy-image__preloader img {
    width: 100%;
    height: 100%;
}

.ratio-original {
    aspect-ratio: auto;
}
.ratio-original.lazy-image-container .lazy-image,
.ratio-original.lazy-image,
.ratio-original.lazy-image-container .lazy-video,
.ratio-original.lazy-video {
    aspect-ratio: var(--desktop-asp-rat);
}
.ratio-square {
    aspect-ratio: 1 / 1;
}
.ratio-portrait {
    aspect-ratio: 4 / 5;
}
.ratio-narrow_portrait {
    aspect-ratio: 2 / 3;
}
.ratio-traditional {
    aspect-ratio: 4 / 3;
}
.ratio-landscape {
    aspect-ratio: 3 / 2;
}
.ratio-wide {
    aspect-ratio: 16 / 9;
}
.ratio-super_wide {
    aspect-ratio: 4 / 1;
}

.placeholder {
    background-color: rgba(var(--layout-text-color), .07);
    display: flex;
    justify-content: center;
    align-items: center;
    height: 240px;
    width: 100%;
    flex: 0 0 100%;
}

.placeholder + svg {
    fill: rgba(var(--layout-text-color), .5);
}

.page-placeholder {
    width: 64px;
    height: 64px;
}

.placeholder-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    font: var(--base-body-s-font);
    color: rgba(var(--layout-text-color), .7);
}

.placeholder-svg {
    width: 100%;
    background-color: rgba(var(--layout-text-color), .07);
    fill: rgb(var(--layout-text-color), .5);
    aspect-ratio: inherit;
}

.unit-price {
    display: flex;
}

deferred-media {
    display: block;
}

@media (hover: hover) {
    .quantity__button:hover {
        opacity: 0.7;
    }
}

.quantity__button[name="minus"] {
    transform: rotate(180deg);
}

.quantity {
    display: flex;
    align-items: center;
    border-radius: var(--field-radius);
    border: var(--outline-thickness) solid rgb(var(--layout-text-color));
    min-height: 44px;
    width: 168px;
}

.quantity__input {
    text-align: center;
    width: 100%;
    height: 100%;
    color: rgb(var(--layout-text-color));
}

.quantity__input::placeholder {
    color: rgb(var(--layout-text-color));
}

.quantity__button {
    flex-shrink: 0;
    border: 0;
    background-color: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgb(var(--layout-text-color));
    padding: 0;
    width: 44px;
    height: 40px;
    will-change: opacity;
    transition: opacity var(--animation-duration) var(--transition-timing-function);
}
  
.quantity__button svg {
    pointer-events: none;
    fill: rgb(var(--layout-text-color));
}

.quantity__button:focus-visible,
.quantity__input:focus-visible {
    z-index: 2;
}

.quantity__button:not(:focus-visible):not(.focused),
.quantity__input:not(:focus-visible):not(.focused) {
    box-shadow: inherit;
    background-color: inherit;
}

.quantity__input::-webkit-outer-spin-button,
.quantity__input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    appearance: none;
    margin: 0;
}

.quantity__input[type='number'] {
    -moz-appearance: textfield;
    appearance: textfield;
}

/* #region Store selector */

.store-selector-container {
    display: flex;
    justify-content: var(--horizontal-alignment);
    align-items: var(--vertical-alignment);
}

.store-selector-container--2.store-selector-container--medium,
.store-selector-container--2.store-selector-container--wide,
.store-selector-container--3.store-selector-container--medium {
    grid-column: span 2;
}

.store-selector-container--3.store-selector-container--wide {
    grid-column: span 3;
}

.store-selector {
    display: flex;
    column-gap: 4px;
    flex-wrap: nowrap;
    align-items: center;

    .miscellaneous-container--menu-drawer .miscellaneous__subblock & {
        padding: 0 10px;
        min-height: 44px;
        min-width: 44px;
    }
}

.store-selector__text {
    line-height: normal;
    text-align: start;
    word-break: normal;
}

.store-selector__icon {
    display: block;
    width: auto;
    aspect-ratio: 1 / 1;
}

.store-selector__icon svg {
    display: block;
    width: auto;
    aspect-ratio: 1/1;
    height: 100%;
    width: 100%;
    fill: rgb(var(--layout-text-color));
}

/* #endregion */

/* #region Pickup availability */

.pickup-availability-wrapper {
    position: relative;
}

.pickup-availability {
    display: inline-flex;

    .pickup-availability-wrapper &::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    }
}

.pickup-availability__icon {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    top: -0.1em;
    height: 10px;
    width: 10px;
    aspect-ratio: 1/1;
    border-radius: 50%;
    margin-inline-end: 8px;
}

.pickup-availability .pickup-availability--available .pickup-availability__icon {
    background-color: rgb(var(--pickup-available-icon));
}

.pickup-availability .pickup-availability--unavailable .pickup-availability__icon {
    border: 2px solid rgb(var(--pickup-out-of-stock-icon));
}

.pickup-availability__content {
    text-align: start;
}

.pickup-availability .pickup-availability--available.pickup-availability__content {
    color: rgb(var(--pickup-available-text));
}

.pickup-availability .pickup-availability--unavailable.pickup-availability__content {
    color: rgb(var(--pickup-out-of-stock-text));
}

/* #endregion */

.overlay {
    display: none;
    width: 100vw;
    height: 100vh;
    position: fixed;
    z-index: 30;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgb(var(--layout-text-color));
}

.drawer.active .overlay,
.overlay.open, pickup-availability-drawer[open] .overlay,
.menu-drawer:not([hidden]) + .overlay {
    display: block; 
    opacity: 0.5;
    z-index: 30;
    animation: disableOpacity .3s var(--transition-timing-function);
}

@keyframes disableOpacity {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 0.5;
    }
}

@keyframes drawerOpen {
    0% {
        inset-inline-end: -40px;
        opacity: 0;
    }
    100% {
        inset-inline-end: 0;
        opacity: 1;
    }
}

.loading-overlay__spinner.hidden {
    display: none;
}

.button .loading-overlay__spinner svg circle,
.infinite-scroll.loading[data-trigger="button"] svg circle {
    stroke: rgb(var(--base-button-color)) !important;
}

.button-wrapper {
    display: flex;
    justify-content: flex-end;
    position: sticky;
    position: -webkit-sticky;
    top: 16px;
    background-color: transparent;
    z-index: 15;
}

.button-close {
    cursor: pointer;
    width: 44px;
    height: 44px;
    display: flex;
    justify-content: center;
    position: relative;
    align-items: center;
    z-index: 3;
    background-color: rgb(var(--layout-text-color));
    border-radius: var(--other-buttons-radius);
    transition: transform var(--animation-duration) var(--transition-timing-function), opacity var(--animation-duration) var(--transition-timing-function);
    will-change: opacity;
}

.button-close::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: -1;
    cursor: pointer;
    border-radius: var(--other-buttons-radius);
    background-color: rgb(var(--layout-text-color));
    box-shadow: 0px 0px 2px rgba(var(--layout-text-color), var(--close-button-shadow)), 0px 2px 10px rgba(var(--layout-text-color), var(--close-button-shadow));
    transition: transform var(--animation-duration) var(--transition-timing-function), opacity var(--animation-duration) var(--transition-timing-function);
}

.cart-drawer .button-close.fill svg,
.store-selector-drawer .button-close.fill svg,
.filter-form .button-close.fill svg {
    fill: rgb(var(--popup-background-color));
}
.button-close svg {
    will-change: opacity;
    fill: rgb(var(--layout-background-color));
    transition: transform var(--animation-duration) var(--transition-timing-function), fill var(--animation-duration) var(--transition-timing-function);
}
.button-close.fill svg,
.no-default-color .button-close.fill:not(.close-popup) svg {
    fill: rgb(var(--layout-background-color));
}
.no-default-color .button-close:not(.close-popup),
.no-default-color .button-close:not(.close-popup)::after {
    background-color: rgb(var(--layout-text-color));
}
.no-default-color .button-close:not(.close-popup) svg {
    fill: rgb(var(--layout-background-color));
}
@media (hover: hover) {
    .button-close:hover {
        opacity: .7;
    }
    .button-close:hover svg {
        opacity: .7;
        transform: rotate(180deg);
    }
    .buttons-zoom .button-close:hover::after {
        transform: scale3d(1.1,1.1,1);
    }
}

.label {
    display: block;
    margin-bottom: 4px;
    color: rgb(var(--layout-text-color));
}
.input {
    border: var(--outline-thickness) solid rgb(var(--layout-text-color));
    border-radius: var(--field-radius);
    color: rgb(var(--layout-text-color));
    min-height: 44px;
    padding: 8px 16px;
}
.input.required.invalid {
    border-color: rgb(var(--error-color));
}
.input.required.valid {
    border-color: rgb(var(--layout-text-color));
}
.input::placeholder, select::placeholder, textarea::placeholder {
    color: rgba(var(--layout-text-color), 0.5);
}

.fields-wrapper .field:not(:last-child) {
    margin-bottom: 16px;
}
.field--checkbox {
    display: flex;
    align-items: center;
    position: relative;
}
.field--checkbox input[type="checkbox"] {
    flex-shrink: 0;
}
.field--checkbox .label {
    color: rgb(var(--layout-text-color));
    margin-inline-start: 8px;
    margin-bottom: 0;
}
.field--checkbox, select {
    cursor: pointer;
}
.shopify-challenge__container {
    margin-top: 128px;
    margin-bottom: 128px;
}

.main--spacious .shopify-challenge__container {
    padding-inline-start: 48px;
    padding-inline-end: 48px;
}

.main--compact .shopify-challenge__container {
    padding-inline-start: 24px;
    padding-inline-end: 24px;
}

.shopify-challenge__message {
    color: rgb(var(--layout-text-color));
    margin-bottom: 32px;
    font-family: var(--base-font-family);
    font-style: var(--base-font-style);
    font-weight: var(--base-font-weight);
    text-transform: uppercase; 
    letter-spacing: 0.02em;
    text-align: start;
}

.shopify-challenge__container .shopify-challenge__button {
    margin-top: 32px;
    width: 100%;
    min-height: 64px;
    cursor: pointer;
}

.popup-wrapper {
    display: none;
    opacity: 0;
    top: calc(50% + 40px);
}
.popup-wrapper:not(.filter-form).open {
    display: block;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-height: calc(100% - 65px - 65px);
    width: 720px;
    max-width: calc(100% - 50px - 50px);
    overflow-y: auto;
    -ms-overflow-style: none;
    scrollbar-width: none; 
    box-shadow: 0px 7px 38px 0px rgba(0, 0, 0, 0.10);
    z-index: 50;
    opacity: 1;
    background-color: rgb(var(--popup-background-color));
    animation: modalAndPopupOpen var(--animation-duration) var(--transition-timing-function);
}
.popup-wrapper.popup-wrapper--page:not(.filter-form).open {
    width: 1024px;
}

@keyframes modalAndPopupOpen {
    0% {
        top: calc(50% + 40px);
        opacity: 0;
    }
    100% {
        top: 50%;
        opacity: 1;
    }
}

.popup-content,
.popup__text.popup-content:last-child {  
    padding: 42px 64px 64px;
}
.popup__text.popup-content {
    padding: 42px 64px 0;
}
.popup-wrapper.open::-webkit-scrollbar { 
    width: 0;
    height: 0;
    display: none;
}
.popup-wrapper.open::-moz-scrollbar { 
    width: 0;
    height: 0;
    display: none;
    scrollbar-width: none;
}

ul:empty, p:empty {
    display: none;
}
.slider-button[disabled="disabled"] svg {
    fill: rgba(var(--layout-text-color), 0.5);
}

.dim {
    opacity: .7;
}

.heading {
    color: rgb(var(--layout-text-color));
}
.heading--accent {
    color: rgb(var(--accent-button-color));
}

.page-width {
    margin-inline-start: auto;
    margin-inline-end: auto;
}
.page-width--1200 {
    max-width: 1200px;
    width: 100%;
}
.page-width--1400 {
    max-width: 1400px;
    width: 100%;
}
.page-width--1700 {
    max-width: 1700px;
    margin-inline-start: auto;
    margin-inline-end: auto;
    width: 100%;
}
.hover-accent {
    transition: color var(--animation-duration) var(--transition-timing-function);
}
.hover-accent svg {
    transition: fill var(--animation-duration) var(--transition-timing-function);
}
.hover-opacity {
    will-change: opacity;
    transition: opacity var(--animation-duration) var(--transition-timing-function);
}

@media (hover: hover) {
    .hover-accent:hover {
        color: rgb(var(--hover-button-color));
    }
    .hover-accent:hover svg {
        fill: rgb(var(--hover-button-color));
    }
    .hover-opacity:hover {
        opacity: .7;
    }
}

overlap-navigation {
    display: block;
    width: 100%;
}

 .shopify-section-group-additional-header-sections {
    position: relative;
    z-index: 1;
 }

pickup-availability-drawer {
    display: block;
    visibility: hidden;
    position: fixed;
    pointer-events: none;
    top: 0;
    inset-inline-end: 0;
    z-index: 101;
}
pickup-availability-drawer[open] {
    display: block;
    visibility: visible;
    pointer-events: all;
}

/* Recommendation modal */
.recommendation-modal__container {
    background-color: rgb(var(--layout-background-color));
    color: rgb(var(--layout-text-color));
}

.recommendation-modal__close-button {
    width: 44px;
    height: 44px;
}

.recommendation-modal__message--bold {
    font-weight: inherit !important;
}

.recommendation-modal__benefits ul li {
    color: rgb(var(--layout-text-color));
}

.recommendation-modal__backdrop {
    background-color: rgb(var(--layout-text-color));
    opacity: 0.5;
}

.recommendation-modal__form button {
    margin-top: 24px !important;
}

.recommendation-modal__button {
    color: rgb(var(--layout-background-color));
    background-color: rgb(var(--layout-text-color));
    height: 64px !important;
    border-radius: var(--button-radius) !important;
}

.recommendation-modal__button--minimal {
    color: rgb(var(--layout-text-color));
    height: 44px !important;
    width: 100% !important;
    border: var(--line-width) solid rgb(var(--layout-text-color));
    text-decoration-line: none !important;
}

.brutalist .recommendation-modal__message,
.brutalist .recommendation-modal__message--align-start,
.brutalist .recommendation-modal__button {
    font: var(--base-body-l-font) !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}
.duet .recommendation-modal__message,
.duet .recommendation-modal__message--align-start,
.duet .recommendation-modal__button {
    font: var(--accent-body-m-font) !important;
}
.minimal_basic .recommendation-modal__message,
.minimal_basic .recommendation-modal__message--align-start,
.minimal_basic .recommendation-modal__button {
    font: var(--base-body-m-font) !important;
}
.minimal_uppercase .recommendation-modal__message,
.minimal_uppercase .recommendation-modal__message--align-start,
.minimal_uppercase .recommendation-modal__button {
    font: var(--base-body-s-font) !important;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}
.minimal_heavy .recommendation-modal__message,
.minimal_heavy .recommendation-modal__message--align-start,
.minimal_heavy .recommendation-modal__button {
    font: var(--base-heading-xs-font) !important;
}
.contrast .recommendation-modal__message,
.classic .recommendation-modal__message,
.contrast .recommendation-modal__message--align-start,
.classic .recommendation-modal__message--align-start,
.contrast .recommendation-modal__button,
.classic .recommendation-modal__button {
    font: var(--accent-body-l-font) !important;
}
.avant_garde .recommendation-modal__message,
.avant_garde .recommendation-modal__message--align-start,
.avant_garde .recommendation-modal__button {
    font: var(--base-body-m-font) !important;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.minimal_uppercase .recommendation-modal__benefits ul li, 
.minimal_basic .recommendation-modal__benefits ul li, 
.classic .recommendation-modal__benefits ul li,
.contrast .recommendation-modal__benefits ul li,
.minimal_uppercase .recommendation-modal__button--minimal, 
.minimal_basic .recommendation-modal__button--minimal, 
.classic .recommendation-modal__button--minimal,
.contrast .recommendation-modal__button--minimal,
.minimal_uppercase .recommendation-modal__content select, 
.minimal_basic .recommendation-modal__content select, 
.classic .recommendation-modal__content select,
.contrast .recommendation-modal__content select {
  font: var(--base-label-font) !important;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.minimal_heavy .recommendation-modal__benefits ul li,
.minimal_heavy .recommendation-modal__button--minimal,
.minimal_heavy .recommendation-modal__content select {
  font: var(--base-body-l-font) !important;
}
.brutalist .recommendation-modal__benefits ul li,
.brutalist .recommendation-modal__button--minimal,
.brutalist .recommendation-modal__content select {
  font: var(--base-body-l-font) !important;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.avant_garde .recommendation-modal__benefits ul li,
.avant_garde .recommendation-modal__button--minimal,
.avant_garde .recommendation-modal__content select {
  font: var(--accent-body-m-font) !important;
}
.duet .recommendation-modal__benefits ul li,
.duet .recommendation-modal__button--minimal,
.duet .recommendation-modal__content select {
  font: var(--base-body-m-font) !important;
}

/* Magnify */

.image-magnify-hover {
    cursor: zoom-in;
}

.image-magnify-hover ~ .image-zoom-icon {
    display: none;
}

.container-magnify-hover .image-zoom-icon {
    display: flex!important;
    pointer-events: none;
}

.image-zoom-icon .icon-zoom-out,
.image-zoom-icon .icon-zoom-in {
    display: flex;
}

.container-magnify-hover .image-zoom-icon .icon-zoom-out,
.container-magnify-hover.icon-zoom-out-visible .image-zoom-icon .icon-zoom-in {
    display: none;
}

.container-magnify-hover.icon-zoom-out-visible .image-zoom-icon .icon-zoom-out {
    display: flex;
}

.container-magnify-hover figure.lazyloaded > img {
    transition: none;
}

.image-magnify-full-size {
    cursor: zoom-out;
    z-index: 3;
}

.image-magnify-full-size + img {
    opacity: 0!important;
}

.image-magnify-full-size {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.image-magnify-full-size ~ .image-zoom-icon {
    display: flex;
}

/* Fonts */
.body-secondary-text--minimal_uppercase {
    font: var(--base-body-s-font);
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.label-checkbox--minimal_heavy,
.label-checkbox--duet {
    font: var(--base-body-l-font);
}
.label-checkbox--avant_garde  {
    font: var(--accent-body-m-font);
}
.label-checkbox--minimal_uppercase,
.label-checkbox--minimal_basic,
.label-checkbox--classic,
.label-checkbox--contrast {
    font: var(--base-body-m-font);
}
.label-checkbox--brutalist {
    font: var(--accent-heading-xs-font);
}

.body-secondary-text--minimal_basic,
.body-secondary-text--classic,
.label--minimal_uppercase,
.input--minimal_uppercase, .input--minimal_basic, .input--classic,
.big-button--minimal_uppercase, .big-button--classic,
.button--minimal_uppercase, .button--classic,
.minimal_uppercase .shopify-challenge__button,
.classic .shopify-challenge__button {
    font: var(--base-body-s-font);
}

.body-secondary-text--minimal_heavy,
.body-text--minimal_heavy,
.body-text--duet,
.label--minimal_heavy, .label--brutalist, .input--minimal_heavy, .input--brutalist,
.button--minimal_heavy  {
    font: var(--base-body-l-font);
}

.body-secondary-text--avant_garde,
.input--duet, .input--avant_garde,
.button--avant_garde, .button--contrast {
    font: var(--accent-body-s-font);
}

.body-secondary-text--contrast,
.label--minimal_basic, .label--classic, .label--avant_garde, .label--contrast,
.input--contrast,
.button--minimal_basic {
    font: var(--base-label-font);
}

.body-secondary-text--brutalist {
    font: var(--base-body-l-font);
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.body-secondary-text--duet,
.body-text--minimal_uppercase,
.body-text--minimal_basic,
.body-text--classic,
.body-text--contrast,
.label--duet,
.big-button--minimal_basic, .big-button--avant_garde,
.minimal_basic .shopify-challenge__button,
.avant_garde .shopify-challenge__button {
    font: var(--base-body-m-font);
}
.body-text--avant_garde,
.button--duet {
    font: var(--accent-body-m-font);
}

.body-text--brutalist,
.big-button--contrast,
.contrast .shopify-challenge__button {
    font: var(--accent-heading-xs-font);
}

.label--minimal_uppercase, .label--minimal_basic, .label--classic, .label--avant_garde, .label--contrast, .label--brutalist,
.input--minimal_uppercase, .input--brutalist {
    text-transform: uppercase;
    letter-spacing: 0.02em;
}
.big-button--minimal_heavy, .big-button--brutalist,
.minimal_heavy .shopify-challenge__button,
.brutalist .shopify-challenge__button {
    font: var(--base-heading-xs-font);
}
.big-button--duet, 
.button--brutalist,
.duet .shopify-challenge__button {
    font: var(--accent-body-l-font);
}
.big-button--minimal_uppercase, .big-button--avant_garde, .big-button--brutalist,
.button--minimal_uppercase, .button--minimal_basic,
.minimal_uppercase .shopify-challenge__button,
.avant_garde .shopify-challenge__button,
.brutalist .shopify-challenge__button {
    text-transform: uppercase; 
} 
.big-button--minimal_uppercase, .big-button--avant_garde,
.button--minimal_uppercase, .button--minimal_basic,
.minimal_uppercase .shopify-challenge__button,
.avant_garde .shopify-challenge__button {
    letter-spacing: 0.02em;
}
main.password-main {
    position: relative;
    z-index: 1;
}
body .shopify-pc__prefs__dialog header h2 {
    font: var(--base-heading-s-font);
}
body #shopify-pc__banner__body-title,
body .shopify-pc__prefs__dialog h3,
body .shopify-pc__prefs__dialog label {
    font: var(--base-heading-xs-font);
}
body .shopify-pc__banner__body p,
body .shopify-pc__prefs__dialog p,
body .shopify-pc__prefs__dialog li {
    font: var(--base-body-m-font);
}
body .shopify-pc__banner__btns,
body .shopify-pc__prefs__header-actions {
    font: var(--base-body-s-font);
    text-transform: uppercase;
    letter-spacing: 0.02em;
}
body .shopify-pc__banner__btns > button,
body .shopify-pc__prefs__header-actions > button {
    position: relative;
}
body .shopify-pc__banner__body p a,
body .shopify-pc__banner__btn-manage-prefs span {
    text-decoration: none;
}
body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-manage-prefs {
    text-decoration: none;
}
body .shopify-pc__banner__dialog, 
body .shopify-pc__banner__dialog p,
.shopify-pc__banner__body #shopify-pc__banner__body-title,
body .shopify-pc__prefs__dialog header,
body .shopify-pc__prefs__dialog header h2,
body .shopify-pc__prefs__scrollable,
body .shopify-pc__prefs__scrollable * {
    background-color: rgb(var(--popup-background-color))!important;
    color: rgb(var(--layout-text-color))!important;
}
body .shopify-pc__prefs__option:first-child,
body .shopify-pc__prefs__dialog header {
    border-color: rgb(var(--layout-text-color));
}
body .shopify-pc__prefs__option label span svg path {
    fill: rgb(var(--layout-text-color));
}
body .shopify-pc__prefs__option label span svg {
    background-color: rgb(var(--popup-background-color));
}
body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-decline,
body .shopify-pc__prefs__header-actions > button:not(.primary) {
    border: none;
    background-color: transparent;
    color: rgb(var(--accent-button-color));
    border-radius: var(--button-radius);
    -webkit-border-radius: var(--button-radius);
    transition: all var(--animation-duration) var(--transition-timing-function);
}
body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-accept,
body .shopify-pc__prefs__header-actions > button.primary {
    border: none;
    transition: all var(--animation-duration) var(--transition-timing-function);
}
@media only screen and (max-width: 750px) {
    body .shopify-pc__prefs__header-actions {
        flex-direction: row;
        flex-wrap: wrap;
    }
    body .shopify-pc__prefs__header-actions > button {
        width: auto;
    }
}
@media screen and (max-width: 550px) {
    body .shopify-pc__banner__btns {
        flex-wrap: wrap;
        justify-content: center;
    }
}

@media screen and (max-width: 920px) {
    .section-padding--spacious,
    .main--spacious .shopify-challenge__container {
        padding-inline-start: 24px;
        padding-inline-end: 24px;
    }
}

@media screen and (min-width: 921px) {
    .main_xs--spacious .inside-content {
        max-width: calc(100% - max(12.5%, 280px))
    }
    .main_xs--compact .inside-content {
        max-width: calc(100% - max(12.5%, 200px))
    }
    .main_xs_with_secondary--spacious .inside-content {
        max-width: calc(100% - max(12.5%, 280px) - 96px)
    }
    .main_xs_with_secondary--compact .inside-content {
        max-width: calc(100% - max(12.5%, 200px) - 96px)
    }
    .main_s--spacious .inside-content {
        max-width: calc(100% - max(18.75%, 280px))
    }
    .main_s--compact .inside-content {
        max-width: calc(100% - max(18.75%, 200px))
    }
    .main_s_with_secondary--spacious .inside-content {
        max-width: calc(100% - max(18.75%, 280px) - 96px)
    }
    .main_s_with_secondary--compact .inside-content {
        max-width: calc(100% - max(18.75%, 200px) - 96px)
    }
    .main_m--spacious .inside-content {
        max-width: calc(100% - max(25%, 280px))
    }
    .main_m--compact .inside-content {
        max-width: calc(100% - max(25%, 200px))
    }
    .main_m_with_secondary--spacious .inside-content {
        max-width: calc(100% - max(25%, 280px) - 96px)
    }
    .main_m_with_secondary--compact .inside-content {
        max-width: calc(100% - max(25%, 200px) - 96px)
    }
    .main_l--spacious .inside-content,
    .main_l--compact .inside-content {
        max-width: 50%;
    }
}

/* Styles for full-width page without sidebars */
/* Laptop */
@media screen and (max-width: 1440px) {
    section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
        padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
    }
    .ordinal-section--spacious {
        --section-padding: 80px;
    }
    .ordinal-section--spacious.ordinal-section--lines {
        --section-padding: 48px;
    }
}
/* Max page width 1200px or 1400px */
@media screen and (min-width: 1200px) {
    .page-width.ordinal-section--spacious {
        --section-padding: 80px;
    }
    .page-width.ordinal-section--spacious.ordinal-section--lines {
        --section-padding: 48px;
    }
    section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious.page-width {
        padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
    }
}
/* Tablet */
@media screen and (max-width: 1024px) {
    .shopify-challenge__container {
        margin-top: 96px;
        margin-bottom: 96px;
    }
    section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
        padding-bottom: max(calc(96px + var(--padding-bottom)), 0px);
    }
}
/* Mobile */
@media screen and (max-width: 768px) {
    .ordinal-section--spacious {
        --section-padding: 64px;
    }
    .ordinal-section--spacious.ordinal-section--lines {
        --section-padding: 32px;
    }
    section[id^="shopify-section-"]:first-of-type .ordinal-section {
        padding-top: max(calc(16px + var(--padding-top)), 0px);
    }
    section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
        padding-bottom: max(calc(64px + var(--padding-bottom)), 0px);
    }
    .section-padding--spacious,
    .section-padding--compact {
        padding-inline-start: 16px;
        padding-inline-end: 16px;
    } 
    .shopify-challenge__container {
        margin-top: 64px;
        margin-bottom: 64px;
    }
    .main--spacious .shopify-challenge__container,
    .main--compact .shopify-challenge__container {
        padding-inline-start: 16px;
        padding-inline-end: 16px;
    }
    .shopify-challenge__message  {
        margin-bottom: 24px;
    }
    .popup-wrapper:not(.filter-form).open {
        max-height: calc(100% - 32px);
        max-width: calc(100% - 16px);
    }
    .popup-content,
    .popup__text.popup-content:last-child {  
        padding: 42px 24px 48px;
    }
    .popup__text.popup-content {
        padding: 42px 24px 0;
    }
    .solid-button, 
    .outlined-button,
    .shopify-pc__banner__dialog button.shopify-pc__banner__btn-accept,
    .shopify-pc__banner__dialog button.shopify-pc__banner__btn-decline,
    body .shopify-pc__prefs__header-actions > button {
        min-width: 120px;
        padding: 6px 12px;
        min-height: 36px;
    }
}
/* Mobile-mini */
@media screen and (max-width: 500px) {
    section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
        padding-bottom: max(calc(48px + var(--padding-bottom)), 0px);
    }
    section[id^="shopify-section-"]:last-of-type .ordinal-section--compact {
        padding-bottom: max(calc(32px + var(--padding-bottom)), 0px);
    }
    .ordinal-section--spacious {
        --section-padding: 48px;
    }
    .ordinal-section--compact {
        --section-padding: 24px
    }
    .section-padding--spacious, 
    .section-padding--compact {
        padding-inline-start: 16px;
        padding-inline-end: 16px;
    }
    .shopify-challenge__container {
        margin-top: 48px;
        margin-bottom: 48px;
    }
}

/* Sidebars: Main XS and white space Spacious */
    /* Laptop */
    @media screen and (max-width: 1720px) and (min-width: 921px) {
        .main_xs--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
        }
        .main_xs--spacious .ordinal-section--spacious {
            --section-padding: 80px;
        }
        .main_xs--spacious .ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 48px;
        }
    }
    /* Max page width 1200px or 1400px */
    @media screen and (min-width: 1480px) {
        .main_xs--spacious .page-width.ordinal-section--spacious {
            --section-padding: 80px;
        }
        .main_xs--spacious .page-width.ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 48px;
        }
        .main_xs--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious.page-width {
            padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
        }
    }
    /* Tablet */
    @media screen and (max-width: 1304px) and (min-width: 921px) {
        .main_xs--spacious .shopify-challenge__container {
            margin-top: 96px;
            margin-bottom: 96px;
        }
        .main_xs--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(96px + var(--padding-bottom)), 0px);
        }
    }
    /* Mobile */
    @media screen and (max-width: 1048px) and (min-width: 921px) {
        .main_xs--spacious .ordinal-section--spacious {
            --section-padding: 64px;
        }
        .main_xs--spacious .ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 32px;
        }
        .main_xs--spacious section[id^="shopify-section-"]:first-of-type .ordinal-section {
            padding-top: max(calc(16px + var(--padding-top)), 0px);
        }
        .main_xs--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(64px + var(--padding-bottom)), 0px);
        }
        .main_xs--spacious .section-padding--spacious,
        .main_xs--spacious .main--spacious .shopify-challenge__container {
            padding-inline-start: 16px;
            padding-inline-end: 16px;
        } 
        .main_xs--spacious .shopify-challenge__container {
            margin-top: 64px;
            margin-bottom: 64px;
        }
        .main_xs--spacious .shopify-challenge__message  {
            margin-bottom: 24px;
        }
        .main_xs--spacious .popup-content,
        .main_xs--spacious .popup__text.popup-content:last-child {  
            padding: 45px 24px 24px;
        }
        .main_xs--spacious .popup__text.popup-content {
            padding: 45px 24px 0;
        }
        .main_xs--spacious .solid-button, 
        .main_xs--spacious .outlined-button {
            min-width: 120px;
            padding: 6px 12px;
            min-height: 36px;
        }
    }
/* Sidebars: Main XS and white space Compact */
    /* Tablet */
    @media screen and (max-width: 1224px) and (min-width: 921px) {
        .main_xs--compact .shopify-challenge__container {
            margin-top: 96px;
            margin-bottom: 96px;
        }
    }
    /* Mobile */
    @media screen and (max-width: 968px) and (min-width: 921px) {
        .main_xs--compact [id^="shopify-section-"]:first-of-type .ordinal-section {
            padding-top: max(calc(16px + var(--padding-top)), 0px);
        }
        .main_xs--compact .section-padding--compact,
        .main_xs--compact .main--compact .shopify-challenge__container {
            padding-inline-start: 16px;
            padding-inline-end: 16px;
        } 
        .main_xs--compact .shopify-challenge__container {
            margin-top: 64px;
            margin-bottom: 64px;
        }
        .main_xs--compact .shopify-challenge__message  {
            margin-bottom: 24px;
        }
        .main_xs--compact .popup-content,
        .main_xs--compact .popup__text.popup-content:last-child {  
            padding: 45px 24px 24px;
        }
        .main_xs--compact .popup__text.popup-content {
            padding: 45px 24px 0;
        }
        .main_xs--compact .solid-button, 
        .main_xs--compact .outlined-button {
            min-width: 120px;
            padding: 6px 12px;
            min-height: 36px;
        }
    }

/* Sidebars: Main XS with secondary and white space Spacious */
    /* Laptop */
    @media screen and (max-width: 1816px) and (min-width: 921px) {
        .main_xs_with_secondary--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
        }
        .main_xs_with_secondary--spacious .ordinal-section--spacious {
            --section-padding: 80px;
        }
        .main_xs_with_secondary--spacious .ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 48px;
        }
    }
    /* Max page width 1200px or 1400px */
    @media screen and (min-width: 1576px) {
        .main_xs_with_secondary--spacious .page-width.ordinal-section--spacious {
            --section-padding: 80px;
        }
        .main_xs_with_secondary--spacious .page-width.ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 48px;
        }
        .main_xs_with_secondary--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious.page-width {
            padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
        }
    }
    /* Tablet */
    @media screen and (max-width: 1400px) and (min-width: 921px) {
        .main_xs_with_secondary--spacious .shopify-challenge__container {
            margin-top: 96px;
            margin-bottom: 96px;
        }
        .main_xs_with_secondary--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(96px + var(--padding-bottom)), 0px);
        }
    }
    /* Mobile */
    @media screen and (max-width: 1144px) and (min-width: 921px) {
        .main_xs_with_secondary--spacious .ordinal-section--spacious {
            --section-padding: 64px;
        }
        .main_xs_with_secondary--spacious .ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 32px;
        }
        .main_xs_with_secondary--spacious section[id^="shopify-section-"]:first-of-type .ordinal-section {
            padding-top: max(calc(16px + var(--padding-top)), 0px);
        }
        .main_xs_with_secondary--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(64px + var(--padding-bottom)), 0px);
        }
        .main_xs_with_secondary--spacious .section-padding--spacious,
        .main_xs_with_secondary--spacious .main--spacious .shopify-challenge__container {
            padding-inline-start: 16px;
            padding-inline-end: 16px;
        } 
        .main_xs_with_secondary--spacious .shopify-challenge__container {
            margin-top: 64px;
            margin-bottom: 64px;
        }
        .main_xs_with_secondary--spacious .shopify-challenge__message  {
            margin-bottom: 24px;
        }
        .main_xs_with_secondary--spacious .popup-content,
        .main_xs_with_secondary--spacious .popup__text.popup-content:last-child {  
            padding: 45px 24px 24px;
        }
        .main_xs_with_secondary--spacious .popup__text.popup-content {
            padding: 45px 24px 0;
        }
        .main_xs_with_secondary--spacious .solid-button, 
        .main_xs_with_secondary--spacious .outlined-button {
            min-width: 120px;
            padding: 6px 12px;
            min-height: 36px;
        }
    }
/* Sidebars: Main XS with secondary and white space Compact */
    /* Tablet */
    @media screen and (max-width: 1320px) and (min-width: 921px) {
        .main_xs_with_secondary--compact .shopify-challenge__container {
            margin-top: 96px;
            margin-bottom: 96px;
        }
    }
    /* Mobile */
    @media screen and (max-width: 1064px) and (min-width: 921px) {
        .main_xs_with_secondary--compact [id^="shopify-section-"]:first-of-type .ordinal-section {
            padding-top: max(calc(16px + var(--padding-top)), 0px);
        }
        .main_xs_with_secondary--compact .section-padding--compact,
        .main_xs_with_secondary--compact .main--compact .shopify-challenge__container {
            padding-inline-start: 16px;
            padding-inline-end: 16px;
        } 
        .main_xs_with_secondary--compact .shopify-challenge__container {
            margin-top: 64px;
            margin-bottom: 64px;
        }
        .main_xs_with_secondary--compact .shopify-challenge__message  {
            margin-bottom: 24px;
        }
        .main_xs_with_secondary--compact .popup-content,
        .main_xs_with_secondary--compact .popup__text.popup-content:last-child {  
            padding: 45px 24px 24px;
        }
        .main_xs_with_secondary--compact .popup__text.popup-content {
            padding: 45px 24px 0;
        }
        .main_xs_with_secondary--compact .solid-button, 
        .main_xs_with_secondary--compact .outlined-button {
            min-width: 120px;
            padding: 6px 12px;
            min-height: 36px;
        }
    }
/* Sidebars: Main S and white space Spacious */
    /* Laptop */
    @media screen and (max-width: 1772px) and (min-width: 921px) {
        .main_s--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
        }
        .main_s--spacious .ordinal-section--spacious {
            --section-padding: 80px;
        }
        .main_s--spacious .ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 48px;
        }
    }
    /* Max page width 1200px or 1400px */
    @media screen and (min-width: 1480px) {
        .main_s--spacious .page-width.ordinal-section--spacious {
            --section-padding: 80px;
        }
        .main_s--spacious .page-width.ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 48px;
        }
        .main_s--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious.page-width {
            padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
        }
    }
    /* Tablet */
    @media screen and (max-width: 1304px) and (min-width: 921px) {
        .main_s--spacious .shopify-challenge__container {
            margin-top: 96px;
            margin-bottom: 96px;
        }
        .main_s--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(96px + var(--padding-bottom)), 0px);
        }
    }
    /* Mobile */
    @media screen and (max-width: 1048px) and (min-width: 921px) {
        .main_s--spacious .ordinal-section--spacious {
            --section-padding: 64px;
        }
        .main_s--spacious .ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 32px;
        }
        .main_s--spacious section[id^="shopify-section-"]:first-of-type .ordinal-section {
            padding-top: max(calc(16px + var(--padding-top)), 0px);
        }
        .main_s--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(64px + var(--padding-bottom)), 0px);
        }
        .main_s--spacious .section-padding--spacious,
        .main_s--spacious .main--spacious .shopify-challenge__container {
            padding-inline-start: 16px;
            padding-inline-end: 16px;
        } 
        .main_s--spacious .shopify-challenge__container {
            margin-top: 64px;
            margin-bottom: 64px;
        }
        .main_s--spacious .shopify-challenge__message  {
            margin-bottom: 24px;
        }
        .main_s--spacious .popup-content,
        .main_s--spacious .popup__text.popup-content:last-child {  
            padding: 45px 24px 24px;
        }
        .main_s--spacious .popup__text.popup-content {
            padding: 45px 24px 0;
        }
        .main_s--spacious .solid-button, 
        .main_s--spacious .outlined-button {
            min-width: 120px;
            padding: 6px 12px;
            min-height: 36px;
        }
    }
/* Sidebars: Main S and white space Compact */
    /* Tablet */
    @media screen and (max-width: 1260px) and (min-width: 921px) {
        .main_s--compact .shopify-challenge__container {
            margin-top: 96px;
            margin-bottom: 96px;
        }
    }
    /* Mobile */
    @media screen and (max-width: 968px) and (min-width: 921px) {
        .main_s--compact [id^="shopify-section-"]:first-of-type .ordinal-section {
            padding-top: max(calc(16px + var(--padding-top)), 0px);
        }
        .main_s--compact .section-padding--compact,
        .main_s--compact .main--compact .shopify-challenge__container {
            padding-inline-start: 16px;
            padding-inline-end: 16px;
        } 
        .main_s--compact .shopify-challenge__container {
            margin-top: 64px;
            margin-bottom: 64px;
        }
        .main_s--compact .shopify-challenge__message  {
            margin-bottom: 24px;
        }
        .main_s--compact .popup-content,
        .main_s--compact .popup__text.popup-content:last-child {  
            padding: 45px 24px 24px;
        }
        .main_s--compact .popup__text.popup-content {
            padding: 45px 24px 0;
        }
        .main_s--compact .solid-button, 
        .main_s--compact .outlined-button {
            min-width: 120px;
            padding: 6px 12px;
            min-height: 36px;
        }
    }
/* Sidebars: Main S with secondary and white space Spacious */
    /* Laptop */
    @media screen and (max-width: 1890px) and (min-width: 921px) {
        .main_s_with_secondary--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
        }
        .main_s_with_secondary--spacious .ordinal-section--spacious {
            --section-padding: 80px;
        }
        .main_s_with_secondary--spacious .ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 48px;
        }
    }
    /* Max page width 1200px or 1400px */
    @media screen and (min-width: 1595px) {
        .main_s_with_secondary--spacious .page-width.ordinal-section--spacious {
            --section-padding: 80px;
        }
        .main_s_with_secondary--spacious .page-width.ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 48px;
        }
        .main_s_with_secondary--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious.page-width {
            padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
        }
    }
    /* Tablet */
    @media screen and (max-width: 1400px) and (min-width: 921px) {
        .main_s_with_secondary--spacious .shopify-challenge__container {
            margin-top: 96px;
            margin-bottom: 96px;
        }
        .main_s_with_secondary--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(96px + var(--padding-bottom)), 0px);
        }
    }
    /* Mobile */
    @media screen and (max-width: 1144px) and (min-width: 921px) {
        .main_s_with_secondary--spacious .ordinal-section--spacious {
            --section-padding: 64px;
        }
        .main_s_with_secondary--spacious .ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 32px;
        }
        .main_s_with_secondary--spacious section[id^="shopify-section-"]:first-of-type .ordinal-section {
            padding-top: max(calc(16px + var(--padding-top)), 0px);
        }
        .main_s_with_secondary--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(64px + var(--padding-bottom)), 0px);
        }
        .main_s_with_secondary--spacious .section-padding--spacious,
        .main_s_with_secondary--spacious .main--spacious .shopify-challenge__container {
            padding-inline-start: 16px;
            padding-inline-end: 16px;
        } 
        .main_s_with_secondary--spacious .shopify-challenge__container {
            margin-top: 64px;
            margin-bottom: 64px;
        }
        .main_s_with_secondary--spacious .shopify-challenge__message  {
            margin-bottom: 24px;
        }
        .main_s_with_secondary--spacious .popup-content,
        .main_s_with_secondary--spacious .popup__text.popup-content:last-child {  
            padding: 45px 24px 24px;
        }
        .main_s_with_secondary--spacious .popup__text.popup-content {
            padding: 45px 24px 0;
        }
        .main_s_with_secondary--spacious .solid-button, 
        .main_s_with_secondary--spacious .outlined-button {
            min-width: 120px;
            padding: 6px 12px;
            min-height: 36px;
        }
    }
/* Sidebars: Main S with secondary and white space Compact */
    /* Tablet */
    @media screen and (max-width: 1378px) and (min-width: 921px) {
        .main_s_with_secondary--compact .shopify-challenge__container {
            margin-top: 96px;
            margin-bottom: 96px;
        }
    }
    /* Mobile */
    @media screen and (max-width: 1064px) and (min-width: 921px) {
        .main_s_with_secondary--compact [id^="shopify-section-"]:first-of-type .ordinal-section {
            padding-top: max(calc(16px + var(--padding-top)), 0px);
        }
        .main_s_with_secondary--compact .section-padding--compact,
        .main_s_with_secondary--compact .main--compact .shopify-challenge__container {
            padding-inline-start: 16px;
            padding-inline-end: 16px;
        } 
        .main_s_with_secondary--compact .shopify-challenge__container {
            margin-top: 64px;
            margin-bottom: 64px;
        }
        .main_s_with_secondary--compact .shopify-challenge__message  {
            margin-bottom: 24px;
        }
        .main_s_with_secondary--compact .popup-content,
        .main_s_with_secondary--compact .popup__text.popup-content:last-child {  
            padding: 45px 24px 24px;
        }
        .main_s_with_secondary--compact .popup__text.popup-content {
            padding: 45px 24px 0;
        }
        .main_s_with_secondary--compact .solid-button, 
        .main_s_with_secondary--compact .outlined-button {
            min-width: 120px;
            padding: 6px 12px;
            min-height: 36px;
        }
    }
    
/* Sidebars: Main M */
    /* Laptop */
    @media screen and (max-width: 1920px) and (min-width: 921px) {
        .main_m section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
        }
        .main_m .ordinal-section--spacious {
            --section-padding: 80px;
        }
        .main_m .ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 48px;
        }
    }
    /* Max page width 1200px or 1400px */
    @media screen and (min-width: 1600px) {
        .main_m .page-width.ordinal-section--spacious {
            --section-padding: 80px;
        }
        .main_m .page-width.ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 48px;
        }
        .main_m section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious.page-width {
            padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
        }
    }
    /* Tablet */
    @media screen and (max-width: 1365px) and (min-width: 921px) {
        .main_m .shopify-challenge__container {
            margin-top: 96px;
            margin-bottom: 96px;
        }
        .main_m section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(96px + var(--padding-bottom)), 0px);
        }
    }
    /* Mobile and white space Spacious */
    @media screen and (max-width: 1048px) and (min-width: 921px) {
        .main_m--spacious .ordinal-section--spacious {
            --section-padding: 64px;
        }
        .main_m--spacious .ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 32px;
        }
        .main_m--spacious section[id^="shopify-section-"]:first-of-type .ordinal-section {
            padding-top: max(calc(16px + var(--padding-top)), 0px);
        }
        .main_m--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(64px + var(--padding-bottom)), 0px);
        }
        .main_m--spacious .section-padding--spacious,
        .main_m--spacious .main--spacious .shopify-challenge__container {
            padding-inline-start: 16px;
            padding-inline-end: 16px;
        } 
        .main_m--spacious .shopify-challenge__container {
            margin-top: 64px;
            margin-bottom: 64px;
        }
        .main_m--spacious .shopify-challenge__message  {
            margin-bottom: 24px;
        }
        .main_m--spacious .popup-content,
        .main_m--spacious .popup__text.popup-content:last-child {  
            padding: 45px 24px 24px;
        }
        .main_m--spacious .popup__text.popup-content {
            padding: 45px 24px 0;
        }
        .main_m--spacious .solid-button, 
        .main_m--spacious .outlined-button {
            min-width: 120px;
            padding: 6px 12px;
            min-height: 36px;
        }
    }
    /* Mobile and white space Compact */
    @media screen and (max-width: 1024px) and (min-width: 921px) {
        .main_m--compact [id^="shopify-section-"]:first-of-type .ordinal-section {
            padding-top: max(calc(16px + var(--padding-top)), 0px);
        }
        .main_m--compact .section-padding--compact,
        .main_m--compact .main--compact .shopify-challenge__container {
            padding-inline-start: 16px;
            padding-inline-end: 16px;
        } 
        .main_m--compact .shopify-challenge__container {
            margin-top: 64px;
            margin-bottom: 64px;
        }
        .main_m--compact .shopify-challenge__message  {
            margin-bottom: 24px;
        }
        .main_m--compact .popup-content,
        .main_m--compact .popup__text.popup-content:last-child {  
            padding: 45px 24px 24px;
        }
        .main_m--compact .popup__text.popup-content {
            padding: 45px 24px 0;
        }
        .main_m--compact .solid-button, 
        .main_m--compact .outlined-button {
            min-width: 120px;
            padding: 6px 12px;
            min-height: 36px;
        }
    }
    
/* Sidebars: Main M with secondary */
    /* Laptop */
    @media screen and (max-width: 2048px) and (min-width: 921px) {
        .main_m_with_secondary section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
        }
        .main_m_with_secondary .ordinal-section--spacious {
            --section-padding: 80px;
        }
        .main_m_with_secondary .ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 48px;
        }
    }
    /* Max page width 1200px or 1400px */
    @media screen and (min-width: 1728px) {
        .main_m_with_secondary .page-width.ordinal-section--spacious {
            --section-padding: 80px;
        }
        .main_m_with_secondary .page-width.ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 48px;
        }
        .main_m_with_secondary section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious.page-width {
            padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
        }
    }
    /* Tablet */
    @media screen and (max-width: 1493px) and (min-width: 921px) {
        .main_m_with_secondary .shopify-challenge__container {
            margin-top: 96px;
            margin-bottom: 96px;
        }
        .main_m_with_secondary section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(96px + var(--padding-bottom)), 0px);
        }
    }
    /* Mobile */
    @media screen and (max-width: 1152px) and (min-width: 921px) {
        .main_m_with_secondary .ordinal-section--spacious {
            --section-padding: 64px;
        }
        .main_m_with_secondary .ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 32px;
        }
        .main_m_with_secondary section[id^="shopify-section-"]:first-of-type .ordinal-section {
            padding-top: max(calc(16px + var(--padding-top)), 0px);
        }
        .main_m_with_secondary section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(64px + var(--padding-bottom)), 0px);
        }
        .main_m_with_secondary .section-padding--spacious,
        .main_m_with_secondary .section-padding--compact,
        .main_m_with_secondary .main--spacious .shopify-challenge__container,
        .main_m_with_secondary .main--compact .shopify-challenge__container {
            padding-inline-start: 16px;
            padding-inline-end: 16px;
        }
        .main_m_with_secondary .shopify-challenge__container {
            margin-top: 64px;
            margin-bottom: 64px;
        }
        .main_m_with_secondary .shopify-challenge__message  {
            margin-bottom: 24px;
        }
        .main_m_with_secondary .popup-content,
        .main_m_with_secondary .popup__text.popup-content:last-child {  
            padding: 45px 24px 24px;
        }
        .main_m_with_secondary .popup__text.popup-content {
            padding: 45px 24px 0;
        }
        .main_m_with_secondary .solid-button, 
        .main_m_with_secondary .outlined-button {
            min-width: 120px;
            padding: 6px 12px;
            min-height: 36px;
        }
       
    }

/* Sidebars: Main L */
    /* Laptop */ 
    @media screen and (max-width: 2880px) and (min-width: 921px) {
        .main_l section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
        }
        .main_l .ordinal-section--spacious {
            --section-padding: 80px;
        }
        .main_l .ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 48px;
        }
    }
    /* Max page width 1200px or 1400px */
    @media screen and (min-width: 2400px) {
        .main_l .page-width.ordinal-section--spacious {
            --section-padding: 80px;
        }
        .main_l .page-width.ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 48px;
        }
        .main_l section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious.page-width {
            padding-bottom: max(calc(128px + var(--padding-bottom)), 0px);
        }
    }
    /* Tablet */
    @media screen and (max-width: 2048px) and (min-width: 921px) {
        .main_l .shopify-challenge__container {
            margin-top: 96px;
            margin-bottom: 96px;
        }
        .main_l section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(96px + var(--padding-bottom)), 0px);
        }
    }
    /* Mobile */
    @media screen and (max-width: 1536px) and (min-width: 921px) {
        .main_l .ordinal-section--spacious {
            --section-padding: 64px;
        }
        .main_l .ordinal-section--spacious.ordinal-section--lines {
            --section-padding: 32px;
        }
        .main_l section[id^="shopify-section-"]:first-of-type .ordinal-section {
            padding-top: max(calc(16px + var(--padding-top)), 0px);
        }
        .main_l--spacious section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(64px + var(--padding-bottom)), 0px);
        }
        .main_l .section-padding--spacious,
        .main_l .section-padding--compact,
        .main_l .main--spacious .shopify-challenge__container,
        .main_l .main--compact .shopify-challenge__container {
            padding-inline-start: 16px;
            padding-inline-end: 16px;
        } 
        .main_l .shopify-challenge__container {
            margin-top: 64px;
            margin-bottom: 64px;
        }
        .main_l .shopify-challenge__message  {
            margin-bottom: 24px;
        }
        .main_l .popup-content,
        .main_l .popup__text.popup-content:last-child {  
            padding: 45px 24px 24px;
        }
        .main_l .popup__text.popup-content {
            padding: 45px 24px 0;
        }
        .main_l .solid-button, 
        .main_l .outlined-button {
            min-width: 120px;
            padding: 6px 12px;
            min-height: 36px;
        }
    }
    /* Mobile-mini */
    @media screen and (max-width: 1000px) and (min-width: 921px) {
        .main_l section[id^="shopify-section-"]:last-of-type .ordinal-section--spacious {
            padding-bottom: max(calc(48px + var(--padding-bottom)), 0px);
        }
        .main_l section[id^="shopify-section-"]:last-of-type .ordinal-section--compact {
            padding-bottom: max(calc(32px + var(--padding-bottom)), 0px);
        }
        .main_l .ordinal-section--spacious {
            --section-padding: 48px;
        }
        .main_l .ordinal-section--compact.ordinal-section--lines {
            padding-top: max(calc(24px + var(--padding-top)), 0px);
            padding-bottom: max(calc(24px + var(--padding-bottom)), 0px);
        }
        .main_l .section-padding--spacious,
        .main_l .section-padding--compact {
            padding-inline-start: 16px;
            padding-inline-end: 16px;
        }
        .main_l .shopify-challenge__container {
            margin-top: 48px;
            margin-bottom: 48px;
        }
    }

#shopify-section-template--25045980905857__83462665-e357-4caf-9a75-170b1ba75762 .input, #shopify-section-template--25045980905857__83462665-e357-4caf-9a75-170b1ba75762 .text-area {
    border-radius: 3px;
    background: #fff !important;
    color: #000 !important;
    border: 1px solid #000 !important;
    box-shadow: none !important;
    
}

.collection-hero__info.only-heading .heading {
  padding-inline-end: 0 !important;
  border-inline-end: none !important;
  flex: 1 1 100%;
  width: 100%;
  display: none;
}

/* Increase size just for this product description block */
.product__description.rte.rte-block.body-secondary-text--minimal_uppercase.body_l {
  font-size: 13px !important;   /* or whatever size you want */
  font-family: "Times New Roman", Times, serif !important;
  line-height: 1.3 !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
}

/* Desktop (default = 16px) */
.product__title--minimal_uppercase,
.block-heading--brutalist {
    font: var(--base-heading-xs-font);
    text-transform: uppercase;
    font-family: "Prestige", serif !important;
    font-size: 16px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
}

/* Mobile = 14px */
@media screen and (max-width: 749px) {
  .product__title--minimal_uppercase,
  .block-heading--brutalist {
      font-size: 14px !important;
  }
}


#shopify-section-template--25221242782024__product-grid .card__product-info .card__title-text {
    will-change: opacity;
    transition: opacity var(--animation-duration) var(--transition-timing-function);
    text-transform: capitalize;
    font-family: "Times New Roman", Times, serif !important;
    line-height: 1.3 !important;
    font-size: 12px;
    font-weight: 400 !important;
}
.product-form__buttons button {
    min-width: 200px;
    width: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #fff;
}

.size-dd__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .4rem .5rem;
    cursor: pointer;
    user-select: none;
    font-size: 14px;
    text-transform: uppercase;
}

.size-dd__note {
    font-size: .95em;
    opacity: .8;
    text-transform: capitalize;
}

.color-invert .sale-price:not(.predictive-search .sale-price), .color-custom .sale-price:not(.predictive-search .sale-price), .regular-price {
    color: rgb(var(--layout-text-color));
    font-size: 12px;
}

.product__text--minimal_uppercase, .product__text--minimal_basic, .product__text--classic, .product__text--avant_garde, .product__text--contrast, .product__shipping-policy--minimal_uppercase, .product-form__buttons--minimal_basic button:not(.big-button), .product__payment-terms--minimal_uppercase, .product-form__buttons--minimal_uppercase>*:not(button) {
    font: var(--base-label-font);
    letter-spacing: .02em;
    text-transform: uppercase;
    font-family: Jost, sans-serif !important;
}

.color-invert .sale-price:not(.predictive-search .sale-price), .color-custom .sale-price:not(.predictive-search .sale-price), .regular-price {
    color: rgb(var(--layout-text-color));
    font-family: Jost, sans-serif !important;
}

.line {
    background-color: #d1d1d1 !important;
    display: block;
    height: var(--line-width);
}

.product__inventory-item--in-stock .product__inventory-status {
    color: rgb(var(--in-stock-color));
    font-family: Jost, sans-serif !important;
}

.product-form__buttons button {
    min-width: 200px;
    width: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-family: Jost, sans-serif !important;
}

/* Desktop (default) = 14px */
.card__product-info .card__title-text {
    will-change: opacity;
    transition: opacity var(--animation-duration) var(--transition-timing-function);
    font-size: 14px;
    line-height: 1.3;
    text-transform: none;
    font-family: "Times New Roman", Times, serif !important;
}

/* Mobile (max 749px) = 12px */
@media screen and (max-width: 749px) {
  .card__product-info .card__title-text {
      font-size: 12px !important;
  }
}


.slider__heading--accent {
    color: rgb(var(--accent-button-color));
    font-family: Jost, sans-serif !important;
}

.product__description-heading {
  font-size: 16px !important;
  font-weight: 400;
  margin-top: 16px;
  margin-bottom: -6px;
  letter-spacing: .3px !important;
}

.product__shipping-policy {
    margin-top: -4px !important;
}

.color-invert .sale-price:not(.predictive-search .sale-price), .color-custom .sale-price:not(.predictive-search .sale-price), .regular-price {
    color: rgb(var(--layout-text-color));
    margin-top: -5px;
}

.shipping-button .solid-button {
    min-height: 44px;
    width: 100%;
    padding: 6px 24px;
    color: #fff;
}

.outlined-button:after, .buttons-zoom.elem-hover--outlined:not(.disabled):after, body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-decline:after, body .shopify-pc__prefs__header-actions>button:not(.primary):after {
    border: var(--outline-thickness) solid rgb(var(--accent-button-color));
    transition: transform var(--animation-duration) var(--transition-timing-function), border var(--animation-duration) var(--transition-timing-function);
    border-radius: 0px;
}

/* Default = desktop (14px) */
#shopify-section-template--25221242782024__product-grid .card__product-info .card__title-text {
    will-change: opacity;
    transition: opacity var(--animation-duration) var(--transition-timing-function);
    text-transform: capitalize;
    font-family: "Times New Roman", Times, serif !important;
    line-height: 1.3 !important;
    font-size: 14px;              /* desktop size */
    font-weight: 400 !important;
    
}

/* Mobile = 12px */
@media screen and (max-width: 749px) {
  #shopify-section-template--25221242782024__product-grid .card__product-info .card__title-text {
      font-size: 12px !important; /* mobile size */
  }
}

/* Product description – apply to the block and all its text */
.product__description,
.product__description.rte,
.product__description .rte,
.product__description.rte.rte-block.body-secondary-text--minimal_uppercase.body_l,
.product__description * {
    font-size: 13px !important;
    font-family: "Times New Roman", Times, serif !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
}

.product__description-heading {
    font-size: 14px !important;
    font-weight: 400;
    margin-top: 16px;
    margin-bottom: -10px;
    letter-spacing: normal !important;
    font-family: "Times New Roman", Times, serif !important;
}

.body-secondary-text--minimal_uppercase {
    font: var(--base-body-s-font);
    letter-spacing: .02em;
    text-transform: none;
    font-size: 12px;
}

#shopify-section-template--25221242650952__main-cart * {
    border-radius: 0px;
}

.card__title--minimal_uppercase,
.product__shipping-policy--brutalist {
    font: var(--base-body-s-font);
    text-transform: uppercase;
    letter-spacing: .02em;
    font-size: 14px !important; /* Desktop */
}

/* Mobile */
@media (max-width: 768px) {
    .card__title--minimal_uppercase,
    .product__shipping-policy--brutalist {
        font-size: 12px !important;
    }
}

body .shopify-pc__banner__dialog button.shopify-pc__banner__btn-accept, body .shopify-pc__prefs__header-actions>button.primary {
    border: none;
    transition: all var(--animation-duration) var(--transition-timing-function);
    color: #fff;
}

.facets__button.solid-button, .facets__button.outlined-button {
    padding: 10px 16px;
    color: #fff;
}

/* Base policy layout */
.policy-content {
  max-width: 720px;
}

/* Section headings */
.policy-content h6 {
  margin-top: 32px;
  margin-bottom: 10px;
  font-size: 14.5px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.02em;
}

.policy-content h6:first-of-type {
  margin-top: 24px;
}

/* Paragraphs */
.policy-content p {
  margin-bottom: 14px;
  line-height: 1.7;
}

/* Lists */
.policy-content ul {
  margin: 12px 0 18px;
  padding-left: 20px;
}

.policy-content li {
  margin-bottom: 8px;
  line-height: 1.65;
}

.policy-content.font-inter,
.policy-content.font-inter * {
  font-family: "Inter", system-ui, -apple-system, sans-serif !important;
}

.policy-content.font-serif,
.policy-content.font-serif * {
  font-family: "Source Serif 4", Georgia, serif !important;
}

/* Main policy page title */
.policy-title {
  text-align: center;
  font-size: 28px;
  font-weight: 500;
  margin-bottom: 36px;
  letter-spacing: 0.02em;
}

/* Contact form: fix label casing + typography */
section.shopify-section.contact-form .contact-form__wrapper label,
section.shopify-section.contact-form .contact-form__wrapper .field__label {
  text-transform: none !important;
  letter-spacing: 0.04em;
  font-size: 12px;
  font-weight: 400;
  color: rgba(0,0,0,0.65);
  margin-bottom: 6px;
  display: block;
}

/* Keep the required asterisk calm */
section.shopify-section.contact-form .contact-form__wrapper label .required,
section.shopify-section.contact-form .contact-form__wrapper .field__label .required {
  text-transform: none !important;
}

/* Contact form: inputs */
section.shopify-section.contact-form .contact-form__wrapper input,
section.shopify-section.contact-form .contact-form__wrapper textarea {
  text-transform: none !important;
  letter-spacing: normal;
  font-size: 14px;
  line-height: 1.4;
  padding: 14px 12px;
}

/* Spacing between fields */
section.shopify-section.contact-form .contact-form__wrapper .field {
  margin-bottom: 22px;
}

/* Make message box feel intentional */
section.shopify-section.contact-form .contact-form__wrapper textarea {
  min-height: 160px;
}

section.shopify-section.contact-form .contact-form__wrapper button,
section.shopify-section.contact-form .contact-form__wrapper .button {
  text-transform: none !important;
  letter-spacing: 0.04em;
}

/* Contact page intro text ONLY */
section.shopify-section.contact-form
  ~ section.shopify-section.rich-text,
section.shopify-section.rich-text + section.shopify-section.contact-form {
  max-width: 720px;
  margin: 0 auto 32px;
}

section.shopify-section.rich-text + section.shopify-section.contact-form p {
  font-size: 13px;
  line-height: 1.6;
  color: rgba(0,0,0,0.65);
}

/* Contact page layout polish */
section.shopify-section.contact-form .contact-form__wrapper {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

/* Slight breathing room under the page title */
section.shopify-section.contact-form .main-page-title,
section.shopify-section.contact-form h1 {
  margin-bottom: 16px;
}

section.shopify-section.contact-form .media-with-text__card {
  justify-content: center;
}

/* Contact form success message */
section.shopify-section.contact-form .form-status,
section.shopify-section.contact-form .contact-form__success {
  margin: 40px auto 32px;
  max-width: 720px;
  text-align: center;
}

/* Success message styling */
section.shopify-section.contact-form .form-status,
section.shopify-section.contact-form .contact-form__success {
  color: #2f6f4e; /* muted green */
  font-size: 14px;
  line-height: 1.6;
  font-weight: 400;
}

/* Optional: soft background for success message */
section.shopify-section.contact-form .form-status,
section.shopify-section.contact-form .contact-form__success {
  background: rgba(47, 111, 78, 0.06);
  padding: 16px 20px;
  border-radius: 2px;
}

/* Contact form: after success, hide fields + button (keep message visible) */
section.shopify-section.contact-form form:has(.form-status.success-color) .fields-wrapper,
section.shopify-section.contact-form form:has(.form-status.success-color) .contact__button {
  display: none !important;
}

/* Success message styling (your theme uses minimal_uppercase, override it here) */
section.shopify-section.contact-form .form-status.success-color {
  text-transform: none !important;
  letter-spacing: normal !important;

  max-width: 720px;
  margin: 28px auto 0 !important;
  padding: 16px 20px;

  text-align: center;
  color: #2f6f4e;
  background: rgba(47, 111, 78, 0.06);
  border-radius: 2px;

  font-size: 14px;
  line-height: 1.6;
  font-weight: 400;
}

/* Remove extra space created by hidden fields */
section.shopify-section.contact-form form:has(.form-status.success-color) {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* Hide hCaptcha disclaimer after successful contact form submission */
section.shopify-section.contact-form
form:has(.form-status.success-color)
p[data-spam-detection-disclaimer] {
  display: none !important;
}

/* ==========================
   Shopify hCaptcha challenge
   Minimal, centred, balanced
   ========================== */

.shopify-challenge__container {
  max-width: 680px !important;
  margin: 72px auto !important;
  padding: 0 24px !important;
}

/* Message */
.shopify-challenge__container .shopify-challenge__message {
  text-transform: none !important;
  letter-spacing: normal !important;

  font-size: 26px !important;
  line-height: 1.25 !important;
  font-weight: 400 !important;

  text-align: center !important;
  margin: 0 0 22px !important;
  color: #111 !important;
}

/* Layout */
.shopify-challenge__container form {
  display: grid !important;
  justify-items: center !important;
  gap: 18px !important;
  margin-top: 0 !important;
}

/* hCaptcha wrapper */
.shopify-challenge__container #h-captcha.h-captcha {
  background: #f6f6f6 !important;
  padding: 12px !important;
  border-radius: 4px !important;
}

/* Button: smaller and aligned with the captcha width */
.shopify-challenge__container input.shopify-challenge__button,
.shopify-challenge__container input.shopify-challenge__button.btn {
  width: 320px !important;
  max-width: 100% !important;

  height: 44px !important;
  min-height: 44px !important;
  padding: 0 18px !important;

  font-size: 13px !important;
  line-height: 44px !important;
  font-weight: 400 !important;

  border-radius: 2px !important;
  text-transform: none !important;
  letter-spacing: 0.02em !important;

  background: #111 !important;
  color: #fff !important;
  border: 1px solid #111 !important;

  margin: 10px auto 0 !important;
  display: block !important;
}

.shopify-challenge__container input.shopify-challenge__button:hover,
.shopify-challenge__container input.shopify-challenge__button.btn:hover {
  opacity: 0.92 !important;
}

/* Optional: keep any surrounding challenge text readable */
.shopify-challenge__container,
.shopify-challenge__container p,
.shopify-challenge__container a {
  color: #111 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}

/* Mobile: tighter spacing and smaller headline */
@media (max-width: 768px) {
  .shopify-challenge__container {
    margin: 48px auto !important;
    padding: 0 18px !important;
  }

  .shopify-challenge__container .shopify-challenge__message {
    font-size: 22px !important;
    margin-bottom: 16px !important;
  }

  .shopify-challenge__container form {
    gap: 14px !important;
  }

  .shopify-challenge__container input.shopify-challenge__button,
  .shopify-challenge__container input.shopify-challenge__button.btn {
    width: 280px !important;
    height: 42px !important;
    min-height: 42px !important;
    line-height: 42px !important;
  }
}

/* ==========================
   404 page polish (Unreposed)
   Targets: .page-404 wrapper
   ========================== */

.page-404 {
  min-height: calc(100vh - 120px) !important;
  display: grid !important;
  place-items: center !important;

  text-align: center !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.page-404 .template {
  width: 100% !important;
  max-width: 720px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

/* Titles */
.page-404 h1,
.page-404 .title {
  font-size: 32px !important;
  line-height: 1.15 !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  margin: 0 0 14px !important;
  color: #111 !important;
}

.page-404 p,
.page-404 .rte {
  font-size: 14px !important;
  line-height: 1.6 !important;
  margin: 0 0 24px !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  color: #111 !important;
}

/* Button: fix contrast and sizing */
.page-404 a.button,
.page-404 .button,
.page-404 .btn {
  background: #111 !important;
  color: #fff !important;
  border: 1px solid #111 !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  height: 44px !important;
  min-height: 44px !important;
  padding: 0 22px !important;

  width: 260px !important;
  max-width: 100% !important;

  border-radius: 2px !important;
  text-transform: none !important;
  letter-spacing: 0.02em !important;
}

.page-404 a.button:hover,
.page-404 .button:hover,
.page-404 .btn:hover {
  opacity: 0.92 !important;
}

/* Mobile */
@media (max-width: 768px) {
  .page-404 {
    min-height: calc(100vh - 96px) !important;
  }

  .page-404 .template {
    padding: 0 18px !important;
  }

  .page-404 h1,
  .page-404 .title {
    font-size: 26px !important;
  }

  .page-404 p,
  .page-404 .rte {
    font-size: 13px !important;
  }

  .page-404 a.button,
  .page-404 .button,
  .page-404 .btn {
    width: 220px !important;
    height: 42px !important;
    min-height: 42px !important;
  }
}

/* 404 button text colour hard override */
.page-404 a.button,
.page-404 .button,
.page-404 .btn,
.page-404 a[href="/"] {
  background: #111 !important;
  border-color: #111 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* If the theme sets colour on a nested span */
.page-404 a.button *,
.page-404 .button *,
.page-404 .btn *,
.page-404 a[href="/"] * {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* If the theme uses a pseudo element overlaying the text */
.page-404 a.button::before,
.page-404 a.button::after,
.page-404 .button::before,
.page-404 .button::after,
.page-404 .btn::before,
.page-404 .btn::after,
.page-404 a[href="/"]::before,
.page-404 a[href="/"]::after {
  color: #fff !important;
}

/* ==========================
   ES Snap Story – Font control
   ========================== */

/* ==========================
   FILM / SNAP STORY – TYPOGRAPHY
   Force Libre Serif cleanly
   ========================== */

/* Scope ONLY to snap story template */
#es-snap-story-template25413137563976main {
  --es-text: #111;
}

/* Remove inherited constraints that block font rendering */
#es-snap-story-template25413137563976main .es-snap-story__body,
#es-snap-story-template25413137563976main .es-snap-story__body * {
  height: auto !important;
  max-height: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}

@font-face {
  font-family: "TT Ricordi Allegria Trial";
  font-style: normal;
  font-weight: normal;
  src:
    url("TT_Ricordi_Allegria_Trial_Light.woff2") format("woff2"),
    url("TT_Ricordi_Allegria_Trial_Light.woff") format("woff");
  font-display: swap;
}

@font-face {
  font-family: "Regins";
  font-style: normal;
  font-weight: normal;
  src:
    url("TTReginsReg.woff2") format("woff2"),
    url("TTReginsReg.woff") format("woff");
  font-display: swap;
}

@font-face {
  font-family: "Prestige";
  font-style: normal;
  font-weight: normal;
  src:
    url("Prestige.woff2") format("woff2"),
    url("Prestige.woff") format("woff");
  font-display: swap;
}


/* Actual text */
#es-snap-story-template25413137563976main
.es-snap-story__body p {
  font-family: "Jost", sans-serif !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  font-weight: 200 !important;
  color: #111 !important;
  margin: 0 !important;
}

/* Slightly tighter leading on large screens */
@media (min-width: 1024px) {
  #es-snap-story-template25413137563976main
  .es-snap-story__body p {
    font-size: 16px !important;
    line-height: 1.55 !important;
  }
}

/* Mobile refinement */
@media (max-width: 768px) {
  #es-snap-story-template25413137563976main
  .es-snap-story__body p {
    font-size: 14px !important;
    line-height: 1.6 !important;
  }
}

/* Snap story title: Libre Baskerville */
#es-snap-story-template25413137563976main .es-snap-story__title {
  font-family: "Jost", sans-serif !important;
  font-weight: 200 !important;
  font-size: 26px !important;
  line-height: 1.25 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  color: #111 !important;
  margin: 0 0 10px !important;
}

#es-snap-story-template25413137563976main .es-snap-story__topnav-link {
  font-family: "Jost", sans-serif !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 12px;
}

@media (max-width: 768px) {
  #es-snap-story-template25413137563976main .es-snap-story__title {
    font-size: 22px !important;
    margin-bottom: 8px !important;
  }
}

/* Optional: give the body copy a nicer reading width */
#es-snap-story-template25413137563976main .es-snap-story__body {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 18px;
  padding-right: 18px;
}

/* ==========================
   Snap story: layout polish
   Paste AFTER your current block
   ========================== */

/* Space between video and text block */
#es-snap-story-template25413137563976main .es-snap-story__text {
  margin-top: 22px !important; /* slightly reduced */
  text-align: center !important;
}

/* Title: restrained editorial scale */
#es-snap-story-template25413137563976main .es-snap-story__title {
    font-family: "Prestige", serif !important;
  text-align: center !important;
  font-size: 17px !important;   /* ↓ from 26 */
  line-height: 1 !important;
  font-weight: 700 !important;
  /*font-variation-settings: "wght" 600 !important;  /* ADD THIS */
  font-variation-settings: "wght" 700 !important;

  letter-spacing: 0.00em !important;           /* ADD THIS */
  margin: 0 0 8px !important;   /* tighter */
  color: #111 !important;
}

/* Body paragraph: calmer, more literary */
#es-snap-story-template25413137563976main .es-snap-story__body p {
  font-family: "Prestige", serif !important;
  text-align: center !important;

  margin: 0 auto !important;

  font-size: 13.8px !important;
  line-height: 1.25 !important;
  font-weight: 300 !important;
  font-variation-settings: "wght" 300 !important;
  letter-spacing: 0.0em !important;
  color: #111 !important;
}

@media (min-width: 1024px) {
  #es-snap-story-template25413137563976main .es-snap-story__text {
    margin-top: 26px !important;
    
  }

/* #es-snap-story-template25413137563976main .es-snap-story__body p {
    font-size: 15px !important;
    line-height: 1.55 !important;
    max-width: 880px !important;
  }*/
}

/* Mobile refinement */
@media (max-width: 768px) {
  #es-snap-story-template25413137563976main .es-snap-story__text {
    margin-top: 16px !important;
    padding: 0 16px !important;
  }

  #es-snap-story-template25413137563976main .es-snap-story__title {
    font-size: 17px !important;
    margin-bottom: 6px !important;
    line-height: 1.25 !important;
  }

  #es-snap-story-template25413137563976main .es-snap-story__body p {
    font-size: 13px !important;
    line-height: 1.25 !important;
    max-width: 96% !important;
  }

  #es-snap-story-template25413137563976main .es-snap-story__body p br {
    margin-top: 6px;
  }
}

/* Snap story: stop the tiny column that breaks "Intro" on mobile */
@media (max-width: 768px) {
  /* The grid cell that holds title + body */
  #es-snap-story-template25413137563976main .es-snap-story__text--bottom {
    width: 100% !important;
    max-width: none !important;
    justify-items: center !important;
  }

  /* Ensure the body block itself can be wide */
  #es-snap-story-template25413137563976main .es-snap-story__body {
    width: 100% !important;
    max-width: 96% !important;     /* widen so fewer lines */
    margin: 0 auto !important;
  }

  /* And the paragraph inside cannot be forced narrow */
  #es-snap-story-template25413137563976main .es-snap-story__body p {
    width: 100% !important;
    max-width: none !important;

    /* prevent "Intr" + "o" */
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    white-space: normal !important;
  }
}

/* Mobile hard-fix: prevent snap-story text column collapsing */
@media (max-width: 768px) {
  /* The wrapper that becomes a grid with narrow columns */
  #es-snap-story-template25413137563976main .es-snap-story__text--bottom,
  #es-snap-story-template25413137563976main .es-snap-story__text {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  /* Make sure the body block is allowed to be wide */
  #es-snap-story-template25413137563976main .es-snap-story__body {
    width: min(92vw, 720px) !important;
    max-width: 92vw !important;
    min-width: 0 !important;
    margin: 0 auto !important;
  }

  /* Paragraph must not shrink to min-content */
  #es-snap-story-template25413137563976main .es-snap-story__body p {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    white-space: normal !important;
  }
}
/* ==========================
   RAW subpages: hard pin the FILM / AW26 / LAB nav
   Stops movement across /pages/raw, /pages/aw26, /pages/lab
   ========================== */

/* Tune these if you want */
:root {
  --raw-tabs-height: 56px;
  --raw-tabs-gap: 56px;
}

/* 1) Pin the tabs so they never move */
@media (min-width: 989px) {
  .es-snap-story .es-snap-story__topnav {
    position: fixed !important;
    top: var(--es-header-offset, 52px) !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 999 !important;

    height: var(--raw-tabs-height) !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: var(--raw-tabs-gap) !important;

    margin: 0 !important;
    padding: 0 16px !important;

    /* background: transparent !important; */
    box-shadow: none !important;
    backdrop-filter: none !important;
  }
}

3) Remove any background/overlay that can appear behind the tabs
.es-snap-story .es-snap-story__video-wrap,
.es-snap-story .es-snap-story__video-wrap--bordered,
.es-snap-story .es-snap-story__panel-inner,
.es-snap-story .es-snap-story__scroller {
  /* background: transparent !important; */
  box-shadow: none !important;
  filter: none !important;
}

/* 4) Font hierarchy for the tabs */
.es-snap-story .es-snap-story__topnav-link {
  font-family: "Jost", sans-serif !important;
  font-size: 14px !important;
  line-height: 1 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;

  color: #111 !important;
  opacity: 0.6 !important;

  padding: 6px 4px !important;
  /* background: transparent !important; */
}

/* Snap story top nav: consistent font across RAW / AW26 / LAB */
.es-snap-story__topnav .es-snap-story__topnav-link {
  font-family: "Jost", sans-serif !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 12px;
}

nav.es-snap-story__topnav a.es-snap-story__topnav-link,
nav.es-snap-story__topnav a.es-snap-story__topnav-link * {
  font-family: "Jost", sans-serif !important;
}

/* Remove any previous global push-down you added */
.es-snap-story {
  padding-top: 0 !important;
}

/* Reserve space above each panel’s content so the video never clips behind the fixed tabs */
.es-snap-story .es-snap-story__panel-inner {
  padding-top: calc(var(--raw-tabs-height, 56px) + 18px) !important;
}

/* Make sure the video wrapper is not pulling upward with negative margin */
.es-snap-story .es-snap-story__video-wrap,
.es-snap-story .es-snap-story__video-wrap--bordered,
.es-snap-story .es-snap-story__video-stage {
  margin-top: 0 !important;
  transform: none !important;
}



/* ==========================
   RAW tabs: mobile (single source of truth)
   - visible
   - below Shopify header
   - does not block header taps
   ========================== */
@media (max-width: 989px) {
  :root{
    --raw-tabs-height: 50px;
    --raw-tabs-gap: 22px;
    --raw-mobile-tabs-top: 46px; /* try 96px, if still hidden use 108px */
  }

  html body nav.es-snap-story__topnav {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;

    position: fixed !important;
    top: calc(var(--raw-mobile-tabs-top) + env(safe-area-inset-top, 0px)) !important;
    left: 0 !important;
    right: 0 !important;

    height: var(--raw-tabs-height) !important;
    z-index: 9999 !important;

    justify-content: center !important;
    align-items: center !important;
    gap: var(--raw-tabs-gap) !important;

    padding: 0 12px !important;
    background: rgba(255, 255, 255, 0.92) !important;
    backdrop-filter: blur(8px) !important;
  }

  .es-snap-story .es-snap-story__panel-inner {
    padding-top: calc(var(--raw-tabs-height) + 14px) !important;
  }

  .es-snap-story .es-snap-story__topnav-link {
    font-size: 12px !important;
    letter-spacing: 0.05em !important;
    padding: 8px 4px !important;
  }
}

/* AW26 mobile: stop fixed tabs drifting when page uses image panels */
@media (max-width: 989px) {
  /* Promote tabs to its own layer so it stays locked */
  html body nav.es-snap-story__topnav {
    transform: translateZ(0) !important;
    will-change: transform !important;
  }

  /* If the snap-story scroller/panel uses transforms, neutralise them */
  html body .es-snap-story__scroller,
  html body .es-snap-story__panel,
  html body .es-snap-story__panel-inner,
  html body .es-snap-story__video-wrap,
  html body .es-snap-story__image-wrap {
    transform: none !important;
  }
}

@media (max-width: 989px) {
  html body nav.es-snap-story__topnav {
    /* background: transparent !important; */
    backdrop-filter: none !important;
    box-shadow: none !important;
    border: 0 !important;
  }
}

/* ==========================
   SNAP STORY typography (final)
   ========================== */
/* ==========================
   Header Search: icon only (desktop + mobile)
   ========================== */

/* ==========================
   Search button: icon only (desktop + mobile)
   Targets BOTH:
   - Desktop: .es-nav__link--search
   - Mobile:  .esm-link--search
   ========================== */

.es-nav__link--search,
.esm-link--search {
  font-size: 0 !important;     /* hide text */
  line-height: 0 !important;
  padding: 8px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;

  color: currentColor !important;
}

/* Thinner search icon */
.es-nav__link--search::before,
.esm-link--search::before {
  content: "" !important;
  display: block !important;
  width: 18px !important;
  height: 18px !important;

  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;

  /* stroke-based (lighter) icon */
background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='7'/><line x1='16.65' y1='16.65' x2='21' y2='21'/></svg>");
}

/* Optional hover */
.es-nav__link--search:hover,
.esm-link--search:hover {
  opacity: 0.7 !important;
}


/* ==========================
   Product grid – Unreposed refinement (matches your DOM)
   ========================== */

/* Card spacing */
.collection .card-container {
  padding-bottom: 6px !important;
}

/* Image → text spacing */
.collection .card__content {
  margin-top: 14px !important;
}

/* Product title (your DOM: p.card__title-text) */
.collection .card__title .card__title-text,
.collection .card__title-text.card__title-js {
  font-family: "Prestige", serif !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  font-variation-settings: "wght" 700 !important;
  letter-spacing: 0.005em !important;
  color: #111 !important;
  margin: 0 0 6px !important;
  text-transform: none !important;
}

/* Desktop refinement */
@media (min-width: 990px) {
  .collection .card__title .card__title-text,
  .collection .card__title-text.card__title-js {
    font-size: 16px !important;
    line-height: 1.35 !important;
  }
}

/* Price (your DOM: div.card__price...) */
.collection .card__price,
.collection .card__price * {
  font-size: 12px !important;
  line-height: 1.4 !important;
  color: #6f6f74 !important;
  font-weight: 400 !important;
}

/* Hover: quiet underline */
.collection .card-container:hover .card__title-text {
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}

/* Keep titles tidy */
.collection .card__title .card__title-text,
.collection .card__title-text.card__title-js {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important; /* max 2 lines */
  overflow: hidden !important;
}

.collection .card__content {
  margin-top: 10px !important; /* was 14 */
}

.collection .card__title .card__title-text,
.collection .card__title-text.card__title-js {
  margin: 0 0 4px !important;
}

/* Tighter gallery spacing */
.collection .product-grid {
  column-gap: 24px !important;
  row-gap: 34px !important;
}

@media (min-width: 990px) {
  .collection .product-grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 32px !important;
  }

  .collection .product-grid > li {
    flex: 0 0 calc(20% - 26px) !important; /* 5 items */
  }
}

.collection .product-grid {
  cursor: grab;
}
.collection .product-grid:active {
  cursor: grabbing;
}

@media (min-width: 990px) {
  .collection .card__title-text {
    font-size: 16px !important;
  }
}

/* ==========================
   SHOP COLLECTION: full-bleed grid with dividers
   Desktop: 5 columns
   Tablet: 3 columns
   Mobile: 2 columns, designed layout
   ========================== */

:root {
  --u-divider: rgba(0,0,0,.06);
}

/* ---------- Shared: make cards centred ---------- */
#shopify-section-template--25274218774856__product-grid .card {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
}

/* Images scale cleanly everywhere */
#shopify-section-template--25274218774856__product-grid .card__image {
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

/* ---------- Desktop full-bleed breakout ---------- */
@media (min-width: 990px) {
  #shopify-section-template--25274218774856__product-grid .page-width,
  #shopify-section-template--25274218774856__product-grid .page-width--1200,
  #shopify-section-template--25274218774856__product-grid .collection__grid-container,
  #shopify-section-template--25274218774856__product-grid .collection__product-grid {
    max-width: none !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* ---------- Desktop: 5-column grid + dividers ---------- */
@media (min-width: 1200px) {
  #shopify-section-template--25274218774856__product-grid ul.product-grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border-top: 1px solid var(--u-divider) !important;
  }

  #shopify-section-template--25274218774856__product-grid ul.product-grid > li.grid__item {
    position: relative !important;
    padding: 64px 24px 48px !important;
    border-bottom: 1px solid var(--u-divider) !important;
  }

  /* vertical dividers */
  #shopify-section-template--25274218774856__product-grid ul.product-grid > li.grid__item::after {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: 1px !important;
    height: 100% !important;
    background: var(--u-divider) !important;
  }



  /* Bigger images on desktop */
  #shopify-section-template--25274218774856__product-grid .card__picture-wrapper {
    width: 100% !important;
    max-width: 720px !important;
    margin: 0 auto !important;
  }

  #shopify-section-template--25274218774856__product-grid .card__title-text {
    font-size: 14px !important;
    letter-spacing: 0.02em !important;
  }

  #shopify-section-template--25274218774856__product-grid .card__price {
    margin-top: 6px !important;
  }
}

/* ---------- Tablet: 3-column grid (still full bleed) ---------- */
@media (min-width: 990px) and (max-width: 1199px) {
  #shopify-section-template--25274218774856__product-grid ul.product-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border-top: 1px solid var(--u-divider) !important;
  }

  #shopify-section-template--25274218774856__product-grid ul.product-grid > li.grid__item {
    position: relative !important;
    padding: 56px 20px 42px !important;
    border-bottom: 1px solid var(--u-divider) !important;
  }

  #shopify-section-template--25274218774856__product-grid ul.product-grid > li.grid__item::after {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: 1px !important;
    height: 100% !important;
    background: var(--u-divider) !important;
  }



  #shopify-section-template--25274218774856__product-grid .card__picture-wrapper {
    width: 100% !important;
    max-width: 520px !important;
    margin: 0 auto !important;
  }

  #shopify-section-template--25274218774856__product-grid .card__title-text {
    font-size: 12px !important;
    letter-spacing: 0.015em !important;
  }

  #shopify-section-template--25274218774856__product-grid .card__price {
    margin-top: 6px !important;
  }
}

/* ---------- Mobile: 2-column designed grid (no vertical lines, clean row separators) ---------- */
@media (max-width: 989px) {
  /* Keep section neat on mobile, no breakout needed */
  #shopify-section-template--25274218774856__product-grid ul.product-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border-top: 1px solid var(--u-divider) !important;
  }

  #shopify-section-template--25274218774856__product-grid ul.product-grid > li.grid__item {
    padding: 22px 14px 18px !important;
    border-bottom: 1px solid var(--u-divider) !important;
  }



  /* Bigger imagery on phones without eating the whole screen */
  #shopify-section-template--25274218774856__product-grid .card__picture-wrapper {
    width: 100% !important;
    max-width: none !important;
  }

  /* Slightly smaller text so it feels premium, not loud */
  #shopify-section-template--25274218774856__product-grid .card__title-text {
    font-size: 11.5px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.01em !important;
  }

  #shopify-section-template--25274218774856__product-grid .card__price,
  #shopify-section-template--25274218774856__product-grid .card__price * {
    font-size: 12px !important;
  }

  /* Tidy spacing between title and price */
  #shopify-section-template--25274218774856__product-grid .card__price {
    margin-top: 6px !important;
  }
}

/* ---------- Small phones: a bit more breathing room ---------- */
@media (max-width: 380px) {
  #shopify-section-template--25274218774856__product-grid ul.product-grid > li.grid__item {
    padding: 18px 12px 16px !important;
  }
}

/* ==========================
   REMOVE ALL PRODUCT GRID DIVIDERS
   Clean editorial layout
   ========================== */

#shopify-section-template--25274218774856__product-grid ul.product-grid {
  border: none !important;
}

#shopify-section-template--25274218774856__product-grid
ul.product-grid > li.grid__item {
  border: none !important;
}

/* Kill any vertical dividers */
#shopify-section-template--25274218774856__product-grid
ul.product-grid > li.grid__item::before,
#shopify-section-template--25274218774856__product-grid
ul.product-grid > li.grid__item::after {
  display: none !important;
  content: none !important;
}

#ec-lookbook-template--25274219233608__main .ec-lookbook__heading {
  font-family: "Prestige", serif !important;
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #333;
}

#shopify-section-template--25274218643784__main-cart .cart-page {
  gap: 48px;
}

@media (min-width: 990px) {
  #shopify-section-template--25274218643784__main-cart .cart-page__block--price {
    position: sticky;
    top: 110px;
    align-self: start;
  }
}

#shopify-section-template--25274218643784__main-cart .cart-page__block-container {
  padding: 20px;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 14px;
}

#shopify-section-template--25274218643784__main-cart .cart-header .title-page {
  font-size: 14px;
  letter-spacing: 0.16em;
  font-weight: 450;
  text-transform: uppercase;
}
/* Cart page: push footer below the fold but keep it accessible on scroll */
/* Cart page: push footer below the fold but keep it accessible on scroll */
body:has(#shopify-section-template--25274218643784__main-cart) {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

body:has(#shopify-section-template--25274218643784__main-cart) #MainContent,
body:has(#shopify-section-template--25274218643784__main-cart) main {
  flex: 1 0 auto;
  min-height: calc(100vh - var(--cart-header-offset, 120px));
}

body:has(#shopify-section-template--25274218643784__main-cart) .shopify-section-group-footer-group,
body:has(#shopify-section-template--25274218643784__main-cart) footer {
  flex-shrink: 0;
}

body:has(#shopify-section-template--25274218643784__main-cart) {
  --cart-header-offset: 50px;
}

/* Cart: centre the whole cart area */
#shopify-section-template--25274218643784__main-cart {
  min-height: calc(100vh - 140px); /* adjust if header height differs */
  display: grid;
  align-content: center;
  padding-top: 24px;
  padding-bottom: 24px;
}


#shopify-section-template--25274218643784__main-cart .cart-page__block-container {
  border-radius: 16px;
  border: 1px solid rgba(0,0,0,0.08);
  padding: 22px;
}

#shopify-section-template--25274218643784__main-cart .cart__checkout-button,
#shopify-section-template--25274218643784__main-cart button[name="checkout"] {
  border-radius: 12px;
  height: 52px;
}

#shopify-section-template--25274218643784__main-cart .page-width {
  max-width: 1040px;
}

#shopify-section-template--25274218643784__main-cart .cart-page {
  gap: 44px;
  justify-content: center;
}

#shopify-section-template--25274218643784__main-cart .cart-items thead {
  display: none;
}

#shopify-section-template--25274218643784__main-cart .cart-items td {
  vertical-align: middle;
  padding-top: 22px;
  padding-bottom: 22px;
}

#shopify-section-template--25274218643784__main-cart .cart-item__image img {
  width: 140px;
  height: auto;
}

#shopify-section-template--25274218643784__main-cart .cart-item__quantity-wrapper,
#shopify-section-template--25274218643784__main-cart .cart-item__quantity {
  display: flex;
  align-items: center;
  gap: 12px;
}

#shopify-section-template--25274218643784__main-cart .cart-item__remove {
  margin-left: 6px;
}

#shopify-section-template--25274218643784__main-cart .dynamic-checkout__content,
#shopify-section-template--25274218643784__main-cart .additional-checkout-buttons {
  margin-top: 10px;
}

#shopify-section-template--25274218643784__main-cart .dynamic-checkout__content > * {
  border-radius: 12px !important;
  overflow: hidden;
}

/* Orbe currency selector – lock UI font */
.bacurr-cur-block,
.bacurr-cur-block * {
  font-family: "Jost", sans-serif !important;
  letter-spacing: normal !important;
}

/* Orbe geolocation modal – lock UI font to Jost */
.md-app-embed,
.md-app-embed * {
  font-family: "Jost", sans-serif !important;
  letter-spacing: normal !important;
  text-transform: none !important;
}

/* ==============================
   Password modal: Unreposed style
   ============================== */

#shopify-section-main-password-header .overlay {
  background: rgba(0, 0, 0, 0.45) !important;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

#shopify-section-main-password-header .popup-wrapper.open {
  width: min(520px, calc(100% - 32px)) !important;
  max-width: 520px !important;
  height: auto !important;
  max-height: none !important;
  border-radius: 18px !important;
  overflow: hidden;
  box-shadow: 0 24px 70px rgba(0,0,0,0.25) !important;
  font-family: var(--font-body-family, "Jost") !important;
}

#shopify-section-main-password-header .popup-content {
  padding: 28px 26px !important;
}

#shopify-section-main-password-header .popup-title {
  text-transform: none !important;
  letter-spacing: 0.02em !important;
  font-size: 20px !important;
  line-height: 1.25 !important;
  margin: 0 0 6px 0 !important;
}

#shopify-section-main-password-header .popup-subtitle {
  font-size: 13px;
  line-height: 1.5;
  opacity: 0.75;
  margin: 0 0 18px 0;
}

#shopify-section-main-password-header .password-form {
  margin-top: 0 !important;
}

#shopify-section-main-password-header .password-form .field__label,
#shopify-section-main-password-header .password-form label {
  font-size: 12px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  opacity: 0.75;
  margin-bottom: 8px !important;
}

#shopify-section-main-password-header .password-form input[type="password"],
#shopify-section-main-password-header .password-form input {
  height: 48px !important;
  border-radius: 12px !important;
  padding: 0 14px !important;
  border-width: 1px !important;
}

#shopify-section-main-password-header .password-form button,
#shopify-section-main-password-header .password-form .button {
  height: 48px !important;
  border-radius: 12px !important;
  width: 100% !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
}

/* Close button: cleaner, less “floating in space” */
#shopify-section-main-password-header .button-wrapper {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 3;
}

#shopify-section-main-password-header .button-close {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: rgba(0,0,0,0.04);
}

#shopify-section-main-password-header .button-close:hover {
  background: rgba(0,0,0,0.07);
}

/* Small screens */
@media (max-width: 480px) {
  #shopify-section-main-password-header .popup-content {
    padding: 22px 18px !important;
  }
  #shopify-section-main-password-header .popup-title {
    font-size: 18px !important;
  }
}

/* Remove password modal heading */
#shopify-section-main-password-header .popup-title,
#shopify-section-main-password-header h2 {
  display: none !important;
}

/* ==============================
   Password modal: definitive layout fix
   ============================== */

/* Card padding and flow */
#shopify-section-main-password-header .popup-wrapper.open .popup-content {
  position: relative !important;
  padding: 56px 44px 44px !important; /* pushes content down */
  display: block !important;          /* avoid theme flex weirdness */
}

/* Close button pinned */
#shopify-section-main-password-header .popup-wrapper.open .button-wrapper {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  margin: 0 !important;
  z-index: 10 !important;
}

/* Make sure the form is not flex-row or grid */
#shopify-section-main-password-header .popup-wrapper.open .password-form,
#shopify-section-main-password-header .popup-wrapper.open #login_form {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}

/* Ensure input sits nicely and create spacing before button */
#shopify-section-main-password-header .popup-wrapper.open input[type="password"] {
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 0 18px 0 !important; /* key: spacing to button */
}

/* Button full width, no negative margins */
#shopify-section-main-password-header .popup-wrapper.open .password-form button,
#shopify-section-main-password-header .popup-wrapper.open .password-form .button {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}

/* Label spacing */
#shopify-section-main-password-header .popup-wrapper.open .password-form .field__label,
#shopify-section-main-password-header .popup-wrapper.open .password-form label {
  display: block !important;
  margin: 0 0 10px 0 !important;
}

/* Mobile tuning */
@media (max-width: 480px) {
  #shopify-section-main-password-header .popup-wrapper.open .popup-content {
    padding: 44px 18px 28px !important;
  }

  #shopify-section-main-password-header .popup-wrapper.open input[type="password"] {
    margin-bottom: 14px !important;
  }

  #shopify-section-main-password-header .popup-wrapper.open .button-wrapper {
    top: 12px !important;
    right: 12px !important;
  }
}

/* Force label to show as "Password:" and remove any built-in asterisk */
#shopify-section-main-password-header .password-form label {
  font-size: 0 !important;        /* hides the original text, including * */
  line-height: 0 !important;
}

#shopify-section-main-password-header .password-form label::before {
  content: "Password:" !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  opacity: 0.75 !important;
  display: inline-block !important;
}

/* Product page: Description accordion spacing */
.product__accordion .accordion__panel .accordion__content p.desc-line {
  margin: 0 !important;
  padding: 0 !important;
}

/* If the theme adds spacing between paragraphs, kill it for desc-line */
.product__accordion .accordion__panel .accordion__content p.desc-line:not(:last-child) {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Then add a single gap before the model note */
.product__accordion .accordion__panel .accordion__content p.model-note {
  margin: 14px 0 0 !important;
  padding: 0 !important;
  font-style: italic;
}

/* Cart drawer: fix Checkout button contrast */
#CartDrawer .drawer__footer-actions .button[type="submit"],
#CartDrawer .drawer__footer-actions button[name="checkout"],
#CartDrawer .drawer__footer-actions [href*="/checkout"]{
  background: #111 !important;
  border-color: #111 !important;
  color: #fff !important;
}

 .drawer__footer-actions .button[type="submit"] *{
  color: #fff !important;
}

/* Optional: make the secondary button look intentional */
#CartDrawer .drawer__footer-actions .button--secondary,
#CartDrawer .drawer__footer-actions a.button--secondary{
  background: transparent !important;
  border-color: #111 !important;
  color: #111 !important;
}

/* Cart drawer: tighter layout */
#CartDrawer .drawer__inner{
  padding-bottom: 12px;
}

#CartDrawer .cart-items tr.cart-item{
  gap: 20px !important;
}

/* Product text readability */
#CartDrawer .cart-item__name{
  line-height: 1.25;
}

/* Quantity control: a bit more compact */
#CartDrawer quantity-input,
#CartDrawer .quantity{
  transform: scale(0.92);
  transform-origin: left center;
}

/* Totals area spacing */
#CartDrawer .drawer__footer{
  padding-top: 12px;
}

/* Cart drawer: hide "Tax included" text but keep shipping note 
#CartDrawer .cart__note,
#CartDrawer .tax-note{
  font-size: 0;
}

#CartDrawer .cart__note::after,
#CartDrawer .tax-note::after{
  content: "Shipping calculated at checkout.";
  font-size: 12px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(0,0,0,0.65);
}
*/

cart-drawer .tax-note {
  display: none !important;
}
/* Cart drawer: force Jost everywhere except product titles */
#CartDrawer,
#CartDrawer *:not(.cart-item__name):not(.product-title){
  font-family: Jost, sans-serif !important;
}

/* Password page: hide Buckaroo currency selector */
body.password .bacurr-currency-block,
body.password [class^="bacurr-"],
body.password [class*=" bacurr-"] {
  display: none !important;
}

/* Fallback: hide unit price wrapper that is not in the first row */
cart-drawer .cart-item__details > .cart-item__price-wrapper,
cart-drawer .cart-item__details > .cart-item__price-wrapper.card__title--minimal_uppercase {
  display: none !important;
}

/* Cart drawer: remove Product/Total header row */
cart-drawer .cart-items thead {
  display: none !important;
}


/* Cart drawer: replace product count with 'Cart' */
cart-drawer .drawer__heading {
  font-size: 0 !important; /* hide existing text */
  text-align: center;
  margin: 0 auto;
}

cart-drawer .drawer__heading::after {
  content: "Cart";
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #111;
}

/* Centre the Cart title visually */
cart-drawer .drawer__inner-wrapper {
  position: relative;
}

cart-drawer .drawer__heading {
  position: absolute;
  top: 30px;
  left: 50%;
  transform: translateX(-50%);
}

cart-drawer .drawer__heading::after {
  opacity: 0.8;
}

/* Cart drawer: remove redundant "Cart total" row */
cart-drawer .cart-totals {
  display: none !important;
}

/* Cart drawer: tighten footer spacing 
cart-drawer .drawer__footer {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

/* Remove leftover spacing from price block wrapper 
cart-drawer .block-prices {
  margin: 0 !important;
  padding: 0 !important;
}

/* Remove spacing from js-contents wrapper 
cart-drawer .js-contents {
  padding-bottom: 0 !important;
}

/* Remove hidden tax-note spacing if still present 
cart-drawer .tax-note {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

cart-drawer .drawer__footer {
  border-top: 1px solid rgba(17, 17, 17, 0.06);
}
*/


/* Cart drawer: remove extra bottom padding that creates the empty space */
cart-drawer .drawer__inner {
  padding-bottom: 0 !important;
}

/* Cart page: remove redundant "Cart total" row */
.cart-page__block--price .cart-totals {
  display: none !important;
}

.cart__checkout-button {
  text-transform: uppercase !important;
  font-size: 16px !important;
  letter-spacing: 0.12em; /* intentional, not trendy */
  font-weight: 400;
}

/* Cart drawer: force Checkout button typography */
cart-drawer #CartDrawer-Checkout {
  font-family: var(--font-body-family, "Jost") !important;
  text-transform: uppercase !important;
  font-size: 15px !important;
  letter-spacing: 0.00em !important;
  font-weight: 400 !important;
}

#CartDrawer .tax-note{
  display: block !important;
  font-size: 12px !important;
  opacity: 1 !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  color: inherit !important;
}
#CartDrawer .tax-note::after{ content: none !important; }

#CartDrawer .tax-note,
#CartDrawer .tax-note * {
  text-transform: none !important;
  letter-spacing: normal !important;
}

/* Cart item product name font */
.cart-item__name {
  font-family: "Prestige", serif !important;
  font-weight: 700; /* adjust if needed */
  letter-spacing: 0.02em; /* optional, keeps it clean */
  text-transform: none; /* remove forced uppercase if you want */
}

#CartDrawer .cart-item__name {
  font-family: "Prestige", serif !important;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: none;
}

/* Force Prestige for cart drawer item titles (override Times New Roman !important) */
#CartDrawer a.cart-item__name.card__title--minimal_uppercase {
  font-family: "Prestige", serif !important;
}

.product__description-heading {
  text-transform: uppercase !important;
  font-family: 'Jost', sans-serif !important;
  font-weight: 400;
  font-size: 14px !important;
  letter-spacing: 0.02em !important;
}

.product__description.rte p {
  font-family: 'Jost', sans-serif !important;
  font-weight: 300;
  font-size: 12px !important;
  letter-spacing: 0.02em !important;
}

.promo-popup__newsletter-subscribe {
  color: #ffffff !important; /* change to your desired colour */
}

@media screen and (min-width: 990px) {
  #shopify-section-template--25274219037000__featured_collection_with_product_grid_6agypa {
    display: none !important;
  }
}