.c-breadcrumb {
    --gap: 5px;
}

.c-breadcrumb ul {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    gap: var(--gap);
    white-space: nowrap;
}

.c-breadcrumb ul li:not(:last-child):after {
    content: "/";
    margin-left: var(--gap);
}

.c-item-variants {
    gap: 18px;
}

.c-item-variants__group.is-color {
    padding-right: 3px;
}

.c-item-variants__group:last-child {
    order: 1;
}

.c-item-variants__group:first-child {
    order: 2;
}

.c-item-variants__pills {
    gap: 5px;
    margin: 0;
    padding: 0;
    border: 0;
}

.c-item-variants__pills__selected {
    position: relative;
    text-transform: capitalize;
}

.c-item-variants__pills__selected:before {
    content: attr(data-label-current);
}

.c-item-variants__pills__selected:after {
    content: attr(data-label);
}

.c-item-variants__pills__selected[data-label=""]:after,.c-item-variants__pills__selected:not([data-label=""]):before {
    display: none;
}

.c-item-variants__pills__title {
    font-size: 15px;
}

.c-item-variants__pills__items {
    gap: 10px 20px;
}

.c-item-variants__pills__item {
    position: relative;
}

.c-item-variants__pills__item input[type=radio] {
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 1;
}

.c-item-variants__pills__item input[type=radio][data-swatch-color] {
    position: relative;
    width: 18px;
    height: 18px;
    opacity: 1;
    border: 0;
    border-radius: 0;
    outline: 0px solid;
    outline-offset: 2.5px;
    box-shadow: none;
}

.c-item-variants__pills__item input[type=radio][data-swatch-color]:checked {
    outline-width: 1px;
}

.c-item-variants__pills__item label {
    white-space: nowrap;
    padding: 5px 15px;
    transition: .2s;
}

.c-item-variants__pills__item input[type=radio]~label {
    display: block;
    padding: 5.5px 5px;
    min-width: 25px;
    text-align: center;
    transition: var(--t-1);
    font-weight: 500;
}

.c-item-variants__pills__item input[type=radio]:checked~label {
    box-shadow: 0 0 0 1px currentColor;
}

.c-item-variants__pills__item input[type=radio]:disabled~label {
    opacity: .1;
}

@media (hover: hover) {
    .c-item-variants__pills__item:hover input[type=radio]~label {
        box-shadow: 0 0 0 1px currentColor;
    }

    .c-item-variants__pills__item:hover input[type=radio][data-swatch-color] {
        outline-width: 1px;
    }
}

.c-item-card-swatch {
    --swatch-size: 16px;
}

.c-item-card-swatch__pills {
    gap: 8px;
    max-width: calc(var(--swatch-size)*3 + 16px);
}

.c-item-card-swatch__item {
    position: relative;
}

.c-item-card-swatch__item input[type=radio] {
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 1;
}

.c-item-card-swatch__item input[type=radio][data-swatch-color] {
    position: relative;
    width: var(--swatch-size);
    height: var(--swatch-size);
    opacity: 1;
    border-radius: 0;
    outline: 0px solid;
    outline-offset: 1.5px;
    box-shadow: none;
    border: 0;
}

.c-item-card-swatch__item input[type=radio][data-swatch-color]:checked {
    outline-width: 1px;
}

@media screen and (min-width: 601px) {
    .c-item-card-swatch__item {
        --swatch-size: 14px;
    }
}

.c-item-card-swatch__item label {
    white-space: nowrap;
    padding: 5px 15px;
    transition: .2s;
}

.c-item-card-swatch__item input[type=radio]~label {
    display: block;
    padding: 5px 10px;
    transition: var(--t-1);
}

.c-item-card-swatch__item input[type=radio]:checked~label {
    box-shadow: 0 0 0 1px currentColor;
}

.c-item-card-swatch__item input[type=radio]:disabled~label {
    opacity: .1;
}

@media (hover: hover) {
    .c-item-card-swatch__item:hover input[type=radio]~label {
        box-shadow: 0 0 0 1px currentColor;
    }

    .c-item-card-swatch__item:hover input[type=radio][data-swatch-color] {
        outline-width: 1px;
    }
}

.c-custom-select {
    position: relative;
    width: 100%;
    max-width: 400px;
}

.c-custom-select.is-disabled {
    pointer-events: none;
}

.c-custom-select__trigger {
    display: flex;
    align-items: center;
    gap: .3em;
    cursor: pointer;
    transition: all .2s ease;
}

.c-custom-select__value:empty::before {
    content: attr(data-placeholder);
    color: #9ca3af;
}

.c-custom-select__arrow {
    transition: transform .2s ease;
}

.c-custom-select__arrow>.icon-caret-down {
    width: .6em;
    height: .6em;
}

.c-custom-select--open .c-custom-select__arrow {
    transform: rotate(180deg);
}

.c-custom-select__dropdown {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background: var(--cr-pale);
    border: 1px solid;
    max-height: 400px;
    width: fit-content;
    overflow-y: auto;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: all .2s ease;
    white-space: nowrap;
}

.c-custom-select--open .c-custom-select__dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.c-custom-select__option {
    padding: 3px 10px;
    cursor: pointer;
}

.c-custom-select__option.is-disabled {
    opacity: .6;
    cursor: not-allowed;
}

.c-custom-select__option>* {
    pointer-events: none;
}

.c-custom-select__option:has(input:checked) {
    pointer-events: none;
}

.c-custom-select__option:first-child {
    padding-top: 15px;
}

.c-custom-select__option:last-child {
    padding-bottom: 15px;
}

.c-custom-select__option--disabled {
    color: #9ca3af;
    cursor: not-allowed;
    opacity: .6;
}

.c-custom-select__option--disabled:hover {
    background-color: rgba(0,0,0,0);
}

.c-item-selling-plan__option {
    gap: 10px;
}

.c-item-selling-plan__option label {
    flex: 1;
    margin-left: 0;
    white-space: nowrap;
}

.c-item-selling-plan__option input[id*=-subscription]:not(:checked)~.c-item-selling-plan__option__frequency {
    display: none;
}

.c-item-selling-plan__option__frequency {
    width: 100%;
    gap: 10px;
}

.c-item-price--regular:empty,.c-item-price--compare:empty {
    display: none;
}

.c-item-price--compare:not(:empty) {
    margin-left: .6em;
}

.c-item-price__pill {
    display: inline-block;
    font: var(--t-l-3);
    text-transform: uppercase;
    height: 20px;
    line-height: 19px;
    padding-inline: 10px;
    border: 1px solid var(--cr-black);
    margin-left: .8em;
}

@media screen and (max-width: 600px) {
    .c-item-price__pill {
        font-size: 10px;
        height: 15px;
        line-height: 13px;
    }
}

.c-item-quantity {
    --height: 45px;
    width: 100%;
}

.c-item-quantity input[name=quantity] {
    flex: 1;
    text-align: center;
    pointer-events: none;
    -moz-appearance: textfield;
    font: var(--t-h-2);
    line-height: 1;
}

.c-item-quantity input[name=quantity]::-webkit-inner-spin-button,.c-item-quantity input[name=quantity]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.c-item-quantity button[data-trigger] {
    position: relative;
    aspect-ratio: 1;
    transition: background-color .4s,color .4s;
    color: var(--cr-dark);
    border: 1px solid;
    width: var(--height);
    height: var(--height);
}

.c-item-quantity button[data-trigger]:before,.c-item-quantity button[data-trigger]:after {
    content: "";
    position: absolute;
    display: block;
    width: calc(var(--height)/2);
    max-width: 20px;
    min-width: 5px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-bottom: 1px solid;
}

.c-item-quantity button[data-trigger][data-trigger=increase]:after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.c-item-quantity button[data-trigger][disabled] {
    cursor: not-allowed;
    pointer-events: auto;
    background-color: inherit;
    color: var(--cr-subtle);
}

@media (hover: hover) {
    .c-item-quantity button[data-trigger]:not([disabled]):hover {
        background-color: var(--cr-subtle);
    }
}

.c-item-card.is-sold-out {
    opacity: .6;
}

.c-item-card__thumbnail {
    position: relative;
    margin-bottom: 10px;
}

.c-item-card__thumbnail:after {
    content: "";
    display: block;
    padding-top: 133%;
}

.c-item-card__thumbnail__block {
    transition: var(--t-1);
}

.c-item-card__thumbnail__block:not(.is-active) {
    opacity: 0;
    pointer-events: none;
}

.c-item-card__thumbnail__block>* {
    transition: var(--t-1);
}

.c-item-card__thumbnail__block>*.is-hover {
    opacity: 0;
    pointer-events: none;
}

@media (hover: hover) {
    .c-item-card__thumbnail:hover .c-item-card__thumbnail__block.is-active>*.is-hover {
        opacity: 1;
        pointer-events: auto;
    }
}

.c-item-card__content {
    gap: 5px 10px;
}

.c-item-card__content .t-b-3 {
    font-size: 13px;
}

.c-item-card__content__inner {
    max-width: calc(100% - 80px);
}

.c-item-card__content__title {
    line-height: 1.1;
    margin-bottom: 4px;
}

.c-item-card__content__price {
    width: 100%;
}

.c-item-card .c-item-price__pill {
    height: 16px;
    line-height: 15px;
    font-size: 10px;
}

.c-item-card .c-item-card-swatch {
    order: 3;
    padding-left: 2.5px;
    padding-bottom: 2.5px;
}

@media screen and (max-width: 600px) {
    .c-item-card__content {
        flex-direction: column;
    }

    .c-item-card__content__inner {
        width: 100%;
        max-width: unset;
    }

    .c-item-card__content__title {
        order: 1;
        font-size: 11px;
    }

    .c-item-card__content__price {
        order: 2;
        font-size: 11px;
    }

    .c-item-card__content .t-b-3 {
        font-size: 12px;
    }

    .c-item-card__content .c-item-card-swatch {
        order: 3;
    }

    .c-item-card__content .c-item-card-swatch__pills {
        gap: 12px;
    }

    .c-item-card__content .c-item-card-swatch__item input[type=radio][data-swatch-color] {
        width: 10px;
        height: 10px;
    }
}

.c-product-form[data-available=false] [type=submit] span:not(.form-state-sold-out),.c-product-form[data-available=true] [type=submit] span:not(.form-state-available) {
    display: none;
}

.c-product-form__submit {
    width: 100%;
    margin-top: 22px;
    height: 50px;
    font-size: 16px !important;
    line-height: 1;
}

.c-product-form__submit:disabled {
    opacity: .5;
}

@media screen and (max-width: 600px) {
    .c-product-form__submit {
        margin-top: 30px;
        height: 40px;
        font-size: 15px !important;
    }
}

.gift-card-form input[type=date]::after {
    content: "";
    display: block;
    position: absolute;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='currentColor' viewBox='0 -960 960 960'%3E%3Cpath d='M200-80q-33 0-56.5-23.5T120-160v-560q0-33 23.5-56.5T200-800h40v-80h80v80h320v-80h80v80h40q33 0 56.5 23.5T840-720v560q0 33-23.5 56.5T760-80H200Zm0-80h560v-400H200v400Zm0-480h560v-80H200v80Zm0 0v-80 80Z'/%3E%3C/svg%3E");
    top: 50%;
    right: var(--padding-h);
    width: 24px;
    height: 24px;
    transform: translateY(-50%);
}

.gift-card-form input[type=date]::-webkit-calendar-picker-indicator {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: auto;
    height: auto;
    background: rgba(0,0,0,0);
    color: rgba(0,0,0,0);
    cursor: pointer;
}

.gift-card-form__toggle {
    padding: 16px 0;
    gap: 8px;
}

.gift-card-form__fields {
    max-height: 0px;
    opacity: 0;
    transition: max-height .5s .3s,opacity .3s;
    overflow: hidden;
}

.gift-card-form__fields.is-active {
    max-height: 500px;
    opacity: 1;
    overflow: visible;
    transition: max-height .5s,opacity .3s .3s;
}

.gift-card-form__fields__message {
    resize: none;
}

html.is-cart-empty .c-cart__empty~* {
    display: none !important;
}

html:not(.is-cart-empty) .c-cart__empty {
    display: none;
}

.c-cart {
    --padding-v: 20px;
    --padding-h: 0;
    --gap: 10px;
}

.c-cart__empty {
    padding: var(--padding-v) var(--padding-h);
    gap: var(--gap);
}

.c-cart__empty__collection-list {
    gap: var(--gap);
    margin-top: var(--gap);
}

.c-cart__header {
    padding: var(--padding-v) var(--padding-h);
}

.c-cart__header__interior {
    gap: .2em;
}

.c-cart__header__interior>*:not(.c-cart__title):last-child {
    margin-left: auto;
}

.c-cart__header__announcement {
    margin-top: var(--gap);
    padding: 10px;
    text-align: center;
}

.c-cart__freeshipping {
    padding: var(--padding-v) var(--padding-h);
    text-align: center;
}

.c-cart__freeshipping.is-freeshipping .c-cart__freeshipping__message--in-progress {
    opacity: 0;
    pointer-events: none;
}

.c-cart__freeshipping.is-freeshipping .c-cart__freeshipping__message--success {
    opacity: 1;
    pointer-events: auto;
}

.c-cart__freeshipping__progress-bar__progress {
    height: 4px;
    transition: width .4s;
}

.c-cart__freeshipping__messages {
    display: grid;
    margin-top: 8px;
}

.c-cart__freeshipping__message--in-progress,.c-cart__freeshipping__message--success {
    grid-area: 1/1/2/2;
}

.c-cart__freeshipping__message--success {
    opacity: 0;
    pointer-events: none;
}

.c-cart__items {
    padding: var(--padding-v) var(--padding-h);
    transition: .4s opacity;
}

.is-content-updating .c-cart__items {
    opacity: 0;
    pointer-events: none;
    transition-duration: .2s;
}

.c-cart__items .c-line-item {
    --thumb: 150px;
}

.c-cart__items .c-line-item__info {
    flex: 1;
}

.c-cart__items .c-item-quantity {
    --height: 12px;
    gap: 10px;
}

.c-cart__items .c-item-variants .c-field {
    --height: 25px;
    --padding-h: 10px;
}

.c-cart__upsell {
    --dot-size: 10px;
    gap: var(--gap);
    padding: var(--padding-v) var(--padding-h);
    display: none;
}

.c-cart__upsell.has-upsell-items {
    animation: fade-in .4s forwards linear;
    display: block;
}

@keyframes fade-in {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.is-content-updating .c-cart__upsell {
    animation: fade-out .4s forwards linear;
}

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

    100% {
        opacity: 0;
    }
}

.c-cart__upsell.is-only-one-upsell-item .c-cart__upsell__arrow,.c-cart__upsell.is-only-one-upsell-item .c-cart__upsell__dot-group {
    display: none;
}

.c-cart__upsell__item-list {
    display: grid;
}

.c-cart__upsell .c-upsell-item {
    grid-area: 1/1/2/2;
    --thumb: 100px;
}

.c-cart__upsell__arrow,.c-cart__upsell__dot-group {
    margin-top: var(--gap);
}

.c-cart__upsell__dot-group {
    display: flex;
    gap: var(--gap);
}

.c-cart__upsell__dot {
    width: var(--dot-size);
    height: var(--dot-size);
    border: 1px solid;
    border-radius: 100%;
}

.c-cart__upsell__dot.is-active {
    background-color: var(--cr-black);
}

.c-cart__options {
    gap: 8px;
    padding: var(--padding-v) var(--padding-h);
}

.c-cart__discount__input {
    flex: 1;
}

.c-cart__discount__pill {
    padding: .2em .4em;
    white-space: nowrap;
}

.c-cart__note__text {
    --height: 60px;
    width: 100%;
    border: 1px solid rgba(0,0,0,0);
    resize: none;
    height: 0;
    max-height: var(--height);
    transition: height .2s ease,border .2s ease,margin-top .2s ease;
}

.c-cart__note__text.is-active {
    height: var(--height);
    border-color: var(--cr-subtle-3);
    margin-top: 8px;
}

.c-cart__summary {
    padding: var(--padding-v) var(--padding-h);
    gap: .2em;
}

.c-cart__summary__price {
    gap: var(--gap);
    padding-bottom: var(--padding-v);
    margin-bottom: var(--padding-v);
    border-bottom: 1px solid var(--cr-dark);
}

.c-cart__summary__footnote {
    text-transform: capitalize;
}

.c-cart__summary [type=submit] {
    margin-top: var(--gap);
}

.c-line-item {
    gap: 20px;
    padding-block: 25px;
    border-bottom: 1px solid var(--cr-dark);
    transition: opacity .2s;
}

.c-line-item__header {
    gap: 5px;
    width: 100%;
}

.c-line-item .c-item-variants {
    gap: 3px;
}

.c-line-item .c-item-price {
    flex-direction: column;
    align-items: end;
    height: 100%;
}

.c-line-item .c-item-price .c-item-price__pill {
    margin-top: auto;
    margin-left: 0;
    height: 16px;
    line-height: 15px;
    font-size: 10px;
}

.c-line-item .c-item-price--compare:not(:empty) {
    margin-left: 0;
}

.c-line-item.is-removed {
    display: none;
}

.c-line-item.is-variant-updating {
    opacity: .4;
    pointer-events: none;
}

.c-line-item__thumb {
    position: relative;
    max-width: 125px;
    width: 100%;
}

.c-line-item__thumb::after {
    content: "";
    display: block;
    padding-top: 133%;
}

.c-line-item__info {
    gap: 8px;
}

.c-line-item__quantity {
    margin-top: auto;
    gap: 10px;
}

.c-line-item__variant .c-item-variants__group:not(:last-child) {
    margin-bottom: 2px;
}

.c-upsell-item {
    --thumb: 100px;
    opacity: 0;
    pointer-events: none;
    transition: opacity .2s;
}

.c-upsell-item.is-active {
    opacity: 1;
    pointer-events: auto;
    transition-delay: .2s;
}

.c-upsell-item .c-item-quantity {
    --height: 25px;
}

.c-upsell-item__header {
    margin: 0 0 24px;
}

.c-upsell-item__item {
    gap: 20px;
}

.c-upsell-item__thumb {
    position: relative;
    width: var(--thumb);
    height: var(--thumb);
}

.c-upsell-item__info {
    flex: 1;
    gap: 8px;
}

.c-upsell-item__add,.c-upsell-item__remove {
    margin-bottom: 10px;
    text-transform: capitalize;
}

.c-article-card__thumbnail {
    position: relative;
    margin-bottom: 10px;
}

.c-article-card__thumbnail:after {
    content: "";
    display: block;
    padding-top: 100%;
}

.c-search-form {
    width: 100%;
    max-width: 400px;
    border-bottom: 1px solid;
}

.c-search-form.is-search-page .c-search-form__input {
    text-align: center;
}

.c-search-form__input {
    width: 100%;
    height: 30px;
}

.c-search-form__suggestions {
    gap: 20px;
}

.c-search-form__main {
    padding-block: 50px;
}

@media screen and (max-width: 600px) {
    .c-search-form {
        max-width: 250px;
    }

    .c-search-form__input {
        text-align: center;
    }
}

.c-filters-sort__panel__content__footer {
    opacity: .6;
    pointer-events: none;
}

html.is-filter-active .c-filters-sort__panel__content__footer {
    opacity: 1;
    pointer-events: auto;
}

html.is-filter-active .c-filters-sort__panel__content__footer>button {
    color: var(--cr-black);
}

html.is-filter-active .c-filters-sort__reset {
    color: var(--cr-black);
}

.c-filters-sort {
    gap: 10px;
}

.c-filters-sort .c-field {
    margin-bottom: 0;
}

.c-filters-sort__list {
    gap: 15px;
}

.c-filters-sort__list__item>* {
    cursor: pointer;
}

.c-filters-sort__list__item.is-active {
    text-decoration: underline;
}

.c-filters-sort__selection {
    gap: 20px;
    margin-bottom: 20px;
}

@media screen and (max-width: 1024px) {
    .c-filters-sort__selection {
        gap: 0;
        border-top: 1px solid;
        border-bottom: 1px solid;
    }
}

.c-filters-sort__dropdown {
    position: relative;
}

.c-filters-sort__dropdown__toggle {
    gap: .2em;
}

.c-filters-sort__dropdown__toggle .icon-plus {
    transition: transform .3s;
}

.c-filters-sort__dropdown__toggle .icon-plus:before {
    transition: transform .3s;
}

.is-dropdown-active .c-filters-sort__dropdown__toggle .icon-plus:before {
    transform: translate3d(-50%, -50%, 0) rotate(90deg) scaleX(0);
}

.c-filters-sort__dropdown__content {
    position: absolute;
    top: calc(100% + 5px);
    left: 0;
    padding: 4px 0;
    border: 1px solid;
    opacity: 0;
    pointer-events: none;
    z-index: 100;
    transition: opacity .2s;
}

.c-filters-sort__dropdown__content__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.c-filters-sort__dropdown__content__list.is-sort {
    grid-template-columns: repeat(1, 1fr);
}

.c-filters-sort__dropdown__content__list label input {
    pointer-events: none;
}

.is-dropdown-active .c-filters-sort__dropdown__content {
    opacity: 1;
    pointer-events: auto;
}

.c-filters-sort__dropdown__content__label {
    padding: 4px 8px;
    gap: .5em;
    white-space: nowrap;
    cursor: pointer;
    transition: background .2s;
}

.c-filters-sort__dropdown__content__label.is-disabled,.c-filters-sort__dropdown__content__label input[disabled] {
    cursor: not-allowed;
    color: var(--cr-subtle-3);
}

.c-filters-sort__dropdown__price-range {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 8px;
}

.c-filters-sort__dropdown__price-range .c-field {
    display: flex;
    align-items: center;
    gap: 4px;
}

.c-filters-sort__dropdown__price-range .c-field input {
    --height: 30px;
    --padding-h: 4px;
    --line-height: 20px;
    min-width: 80px;
    border: 1px solid;
}

.c-filters-sort__dropdown__price-range [type=submit] {
    width: fit-content;
    display: block;
    border-bottom: 1px solid;
}

.c-filters-sort__dropdown--sort {
    margin-left: auto;
}

.c-filters-sort__dropdown--sort select {
    opacity: 0;
    cursor: pointer;
}

.c-filters-sort__dropdown--sort .c-filters-sort__dropdown__toggle:before {
    content: "Sort By" attr(data-current);
}

.c-filters-sort__dropdown .c-filters-sort__dropdown__toggle .icon-plus {
    width: 12px;
    height: 12px;
}

@media screen and (max-width: 1024px) {
    .c-filters-sort__dropdown--sort button {
        width: 100%;
        padding: 10px;
        justify-content: center;
    }

    .c-filters-sort__dropdown--sort .c-filters-sort__dropdown__toggle:before {
        content: "Sort";
    }

    .c-filters-sort__dropdown--sort .c-filters-sort__dropdown__toggle .icon-caret-top {
        display: none;
    }
}

.c-filters-sort__active {
    width: 100%;
    height: fit-content;
    overflow: hidden;
    margin-bottom: 20px;
    padding: 10px 0;
    border-top: 1px solid;
    border-bottom: 1px solid;
    gap: 5px;
    transition: height .2s,margin .2s,padding-top .2s,padding-bottom .2s,border .2s;
}

.c-filters-sort__active:empty {
    height: 0;
    margin-bottom: 0;
    padding: 0;
    border-color: rgba(0,0,0,0);
}

.c-filters-sort__active button {
    padding: .4em .6em;
    white-space: nowrap;
    background-color: var(--cr-subtle);
}

.c-filters-sort__active button .icon-close {
    margin-left: .2em;
}

@media screen and (max-width: 1024px) {
    .c-filters-sort__active {
        border-top: unset;
        border-bottom: unset;
        padding: 0;
    }

    .c-filters-sort__active--panel {
        margin-bottom: 0;
        padding: 20px var(--padding-h);
        border-top: 1px solid;
    }
}

.c-filters-sort__panel {
    --border: 1px solid var(--cr-dark);
    --padding-h: 30px;
    position: fixed;
    z-index: 120;
}

.c-filters-sort__panel__overlay {
    position: fixed;
    background-color: var(--cr-subtle);
    transition: .4s;
    z-index: 110;
}

.c-filters-sort__panel__content {
    position: fixed;
    height: 100%;
    width: 90%;
    max-width: 450px;
    top: 0;
    right: 0;
    background-color: var(--cr-pale);
    transition: .6s var(--e-inOut-expo);
    z-index: 120;
    padding: 40px var(--padding-h) 20px;
}

.c-filters-sort__panel__content__header {
    border-bottom: 1px solid;
    padding-bottom: 20px;
}

.c-filters-sort__panel__content__body {
    overflow-y: auto;
    overflow-x: hidden;
}

.c-filters-sort__panel__content__footer {
    gap: 10px;
    padding: 60px calc(var(--padding-h) + 60px) 0;
}

.c-filters-sort__panel__content__footer .btn {
    width: 100%;
    margin-inline: auto;
}

@media screen and (max-width: 600px) {
    .c-filters-sort__panel__content__footer {
        padding: 60px 55px 0;
    }
}

.c-filters-sort__panel .c-filters-sort__dropdown {
    border-bottom: var(--border);
}

.c-filters-sort__panel .c-filters-sort__dropdown__toggle {
    width: 100%;
    padding: 15px 0;
}

.c-filters-sort__panel .c-filters-sort__dropdown__content {
    position: relative;
    height: fit-content;
    top: unset;
    left: unset;
    padding: 0 0 10px;
    border: unset;
    max-height: 500px;
    opacity: 1;
    overflow: hidden;
    transition: max-height .6s .2s ease-in-out,opacity .6s ease-in-out,padding .6s ease-in-out;
}

.c-filters-sort__panel .c-filters-sort__dropdown:not(.is-dropdown-active) .c-filters-sort__dropdown__content {
    max-height: 0;
    opacity: 0;
    padding: 0;
}

html:not(.is-filters-sort-panel-active) .c-filters-sort__panel {
    pointer-events: none;
}

html:not(.is-filters-sort-panel-active) .c-filters-sort__panel__overlay {
    opacity: 0;
    transition-delay: .4s;
}

html:not(.is-filters-sort-panel-active) .c-filters-sort__panel__content {
    transform: translate3d(100%, 0, 0);
}

.collection-products.js-filters-sort-update,.collection-products-pagination.js-filters-sort-update {
    transition: opacity .2s;
}

html.is-filters-sort-updating .js-filters-sort-update {
    pointer-events: none;
}

html.is-filters-sort-updating .collection-products.js-filters-sort-update,html.is-filters-sort-updating .collection-products-pagination.js-filters-sort-update {
    opacity: 0;
}

.c-account-address-form {
    position: fixed;
    inset: 0;
    padding: var(--s-section) var(--s-contain);
    overflow-y: auto;
    overflow-x: hidden;
    opacity: 0;
    pointer-events: none;
    transition: .4s;
    z-index: 200;
}

.c-account-address-form__overlay {
    position: fixed;
    background-color: var(--cr-subtle);
    z-index: 210;
}

.c-account-address-form .address-form {
    position: relative;
    overflow-y: auto;
    width: 100%;
    padding: 30px;
    background-color: var(--cr-pale);
    transition: opacity .4s;
    z-index: 220;
    max-width: 500px;
    max-height: 600px;
}

.c-account-address-form .address-form:not(.is-active) {
    display: none;
}

.c-account-address-form .address-form .account-header {
    margin-bottom: 40px;
}

.c-account-address-form .address-form .c-form__fields>*:not(:last-child) {
    margin-bottom: 10px;
}

.c-account-address-form .address-form [type=submit] {
    width: 100%;
    margin-top: 40px;
}

@media screen and (max-width: 600px) {
    .c-account-address-form {
        display: block;
        padding: 0;
    }

    .c-account-address-form .address-form {
        min-height: 100%;
        padding: 40px var(--s-contain) 80px;
    }

    .c-account-address-form .address-form [type=submit] {
        position: fixed;
        bottom: 0;
        left: 0;
        margin-top: 0;
    }
}

html.is-address-form-active .c-account-address-form {
    opacity: 1;
    pointer-events: auto;
}

.c-video {
    --button-padding: 40px;
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.c-video video {
    position: absolute;
    left: 50%;
    height: 100%;
    transform: translate(-50%, 0);
}

.c-video>iframe {
    position: relative;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    aspect-ratio: var(--aspect-ratio);
    z-index: 0;
}

.c-video.is-portrait iframe {
    height: unset;
}

.c-video.is-landscape iframe {
    width: unset;
}

.c-video__reframe {
    top: 50%;
    transform: translate(0, -50%);
}

.c-video:has(.play) iframe,.c-video:has(.pause) iframe,.c-video:has(.unmute) iframe,.c-video:has(.mute) iframe {
    pointer-events: none;
}

.c-video__control {
    gap: 5px;
    position: absolute;
    bottom: 10px;
    right: 10px;
    z-index: 10;
}

@media (hover: hover) {
    .c-video__control:hover:has(.play:hover)>.pause,.c-video__control:hover:has(.pause:hover)>.play,.c-video__control:hover:has(.unmute:hover)>.mute,.c-video__control:hover:has(.mute:hover)>.unmute {
        background-color: rgba(var(--color), 1);
    }
}

.c-video__trigger {
    --color: 0, 0, 0;
    width: var(--button-padding);
    height: var(--button-padding);
    background-color: rgba(var(--color), 0.4);
    backdrop-filter: blur(1px);
    border-radius: 50%;
    transition: .3s;
}

.c-video__trigger.expand-clickable-area::after {
    left: 50%;
    width: 100%;
    transform: translateX(-50%);
}

.c-video__trigger:not(.is-active) {
    display: none;
}

.c-video__trigger svg {
    display: block;
    margin: auto;
    width: min(22px,75%);
}

@media (hover: hover) {
    .c-video__trigger:hover:hover {
        background-color: rgba(var(--color), 1);
    }
}

@media screen and (max-width: 1024px) {
    .c-video {
        --button-padding: 35px;
    }
}

/*! Embla Carousel
https://www.embla-carousel.com/
---------------------------------------------- */

.c-slider {
    --slider-direction: row;
    --slider-touch-action: pan-y pinch-zoom;
    --slide-size: 100%;
    --slide-gap: 0px;
    position: relative;
    display: block;
}

.c-slider__viewport {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
}

.c-slider__viewport.is-draggable {
    cursor: grab;
}

.c-slider__viewport.is-dragging {
    cursor: grabbing;
}

.c-slider__container {
    display: flex;
    flex-direction: var(--slider-direction);
    height: 100%;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    will-change: transform;
    backface-visibility: hidden;
    touch-action: var(--slider-touch-action);
    user-select: none;
    transition: height .2s;
}

@media screen and (max-width: 600px) {
    .c-slider__container.is-full-width-on-mobile .c-slider__slide {
        flex: 0 0 100%;
    }
}

.c-slider__slide {
    position: relative;
    flex: 0 0 var(--slide-size);
    margin-right: var(--slide-gap);
    min-width: 0;
    min-height: 0;
}

.c-slider__thumbs {
    position: relative;
}

.c-slider__thumbs__viewport {
    overflow: hidden;
    max-height: 500px;
}

.c-slider__thumbs__container {
    gap: 10px;
}

.c-slider__thumb {
    position: relative;
    overflow: hidden;
    aspect-ratio: .9;
}

.c-slider__buttons {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100%;
    gap: 10px;
    transform: translate3d(-50%, -50%, 0);
    pointer-events: none;
}

.c-slider__button {
    --size: 2em;
    width: var(--size);
    height: var(--size);
    transition: var(--t-1);
    pointer-events: auto;
}

.c-slider__button:disabled {
    opacity: 0;
    pointer-events: none;
}

.c-slider__button>.icon-caret-right,.c-slider__button>.icon-caret-left {
    width: calc(var(--size)*.8);
    height: calc(var(--size)*.8);
}

@media screen and (max-width: 600px) {
    .c-slider__button {
        --size: 1.2em;
    }
}

.c-slider__dots {
    gap: 30px;
    margin-top: 40px;
}

.c-slider__dot {
    --dot-size: 7px;
    --bg-color: var(--cr-white);
    position: relative;
    display: inline-block;
    width: var(--dot-size);
    height: var(--dot-size);
}

.c-slider__dot:after {
    content: "";
    position: absolute;
    inset: 0;
    width: var(--dot-size);
    height: var(--dot-size);
    background-color: var(--bg-color);
    transform: scaleY(0.2);
    transform-origin: bottom;
    transition: border-color var(--t-2),background-color var(--t-2),transform var(--t-2);
}

.c-slider__dot.is-active {
    pointer-events: none;
    background-color: var(--cr-brown);
}

.c-slider__dot.is-active:after {
    transform: scaleY(1);
    background-color: var(--cr-brown);
}

@media (hover: hover) {
    .c-slider__dot:hover:after {
        transform: scaleY(1);
    }
}

.c-slider__progress {
    position: relative;
    overflow: hidden;
    justify-self: flex-end;
    align-self: center;
    width: calc(100% - 72px);
    height: 10px;
    margin-top: 40px;
    margin-inline: auto;
    background-color: var(--cr-cream-dark);
    border-radius: 80px;
}

.c-slider__progress__bar {
    position: absolute;
    width: 100%;
    top: 0;
    bottom: 0;
    left: -100%;
    background-color: currentColor;
    transition: transform .2s;
}

.c-accordion {
    --padding-v: 15px;
    display: block;
    border-bottom: 1px solid;
}

.c-accordion__toggle {
    width: 100%;
    padding: var(--padding-v) 0;
    text-align: left;
    gap: 10px;
}

.c-accordion__toggle .icon-plus,.c-accordion__toggle .icon-caret-down {
    --thickness: 1px;
    width: .5em;
    height: .5em;
    transition: transform .3s;
}

.c-accordion__toggle .icon-plus:before,.c-accordion__toggle .icon-caret-down:before {
    transition: transform .3s;
}

.c-accordion__title {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.c-accordion__content {
    overflow: hidden;
    pointer-events: none;
    height: 0px;
    opacity: 0;
    transition: height .4s .2s cubic-bezier(0, 1, 0.8, 1),opacity .4s;
}

.c-accordion__content-interior {
    padding-bottom: var(--padding-v);
}

.c-accordion.is-active .c-accordion__toggle .icon-plus:before {
    transform: translate3d(-50%, -50%, 0) rotate(90deg) scaleX(0);
}

.c-accordion.is-active .c-accordion__toggle .icon-caret-down {
    transform: rotate(180deg);
}

.c-accordion.is-active .c-accordion__content {
    opacity: 1;
    pointer-events: auto;
    transition: height .4s,opacity .4s .3s;
}

.c-email-capture {
    position: relative;
}

.c-email-capture__inner {
    border-bottom: 1px solid;
}

.c-email-capture__input {
    flex: 1;
}

.c-email-capture__input>* {
    width: 100%;
}

.c-email-capture.is-success>* {
    -webkit-animation: .2s fadeOut both;
    animation: .2s fadeOut both;
    pointer-events: none;
}

.c-email-capture.is-success:before {
    content: attr(data-success-message);
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-animation: .2s .2s fadeIn both;
    animation: .2s .2s fadeIn both;
}

.c-email-capture.is-success .error-message {
    display: none;
}

.c-email-capture .error-message {
    display: none;
    position: absolute;
    left: 0;
    bottom: -20px;
    width: 100%;
    color: red;
}

.c-email-capture.is-error .error-message {
    display: block;
}

.s-editorial-slider {
    position: relative;
    overflow: hidden;
    height: 100vh;
    height: 100svh;
}

.s-editorial-slider:first-child {
    margin-top: calc(var(--s-announcement, 0px) + var(--s-header)*.5);
    height: calc(100vh - (var(--s-announcement, 0px) + var(--s-header)*.5));
    height: calc(100svh - (var(--s-announcement, 0px) + var(--s-header)*.5));
}

.s-editorial-slider__slider {
    height: 100%;
}

.s-editorial-slider__content {
    position: relative;
    text-align: center;
    z-index: 2;
}

.s-editorial-slider__content>*:not(:last-child) {
    margin-bottom: 3px;
}

.s-editorial-slider__block {
    position: relative;
    padding-block: 95px;
}

.s-editorial-slider__url {
    z-index: 1;
}

.s-editorial-slider .c-slider__buttons {
    padding-inline: var(--s-contain);
    pointer-events: none;
}

.s-editorial-slider .c-slider__buttons>* {
    pointer-events: auto;
}

.s-editorial-slider .c-slider__dots {
    gap: 20px;
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translate3d(-50%, 0, 0);
    pointer-events: none;
}

.s-editorial-slider .c-slider__dots>* {
    pointer-events: auto;
}

@media screen and (max-width: 600px) {
    .s-editorial-slider {
        height: auto;
    }

    .s-editorial-slider:first-child {
        height: auto;
    }

    .s-editorial-slider__block {
        padding-block: 60px;
        aspect-ratio: 3/4;
    }
}

.s-collection {
    padding-block: 60px;
}

.s-collection__title:not(:last-child) {
    margin-bottom: 25px;
}

.s-collection__slider:not(:last-child) {
    margin-bottom: 20px;
}

.s-collection__slider {
    --slide-size: 20%;
    --slide-gap: 15px;
    padding-left: var(--s-contain);
}

.s-collection__slider .c-slider__buttons {
    padding-inline: var(--s-contain);
}

@media screen and (max-width: 1024px) {
    .s-collection__slider {
        --slide-size: 30%;
    }
}

@media screen and (max-width: 600px) {
    .s-collection__slider {
        --slide-size: 45%;
    }
}

@media screen and (max-width: 600px) {
    .s-collection {
        padding-top: 40px;
    }
}

:root {
    --z-overlay: 90;
    --z-header: 100;
    --z-search: 100;
    --z-announcement: 110;
    --z-popup: 130;
    --z-minicart: 150;
    --z-loader: 200;
}

#main {
    min-height: var(--s-main-min-height);
    padding: .1px 0;
}

.shopify-challenge__container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 40px;
    min-height: var(--s-main-min-height);
    padding: var(--s-section) var(--s-contain);
}

.shopify-challenge__container .shopify-challenge__button {
    width: 100%;
    margin-top: 40px !important;
}

.g-overlay {
    opacity: 0;
    pointer-events: none;
    transition: opacity .4s;
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.6);
    z-index: var(--z-overlay);
}

html.is-megamenu-active .g-overlay,html.is-search-active .g-overlay {
    opacity: 1;
    pointer-events: auto;
}

.g-ada-skip {
    position: fixed;
    top: calc(var(--s-announcement-dynamic, var(--s-announcement, 0px)) + 10px);
    left: 10px;
    transform: translateY(-100vh);
    z-index: 1000;
}

.g-ada-skip:focus {
    transform: translateY(0);
}

.g-announcement {
    --dot-size: 5px;
    --dot-gap: 8px;
    --padding-h: 20px;
    position: fixed;
    top: 0;
    width: 100%;
    text-align: center;
    color: var(--color);
    background-color: var(--background);
    z-index: var(--z-announcement);
    transition: height .2s,opacity .2s;
}

.g-announcement__close {
    position: absolute;
    right: var(--padding-h);
    top: 50%;
    transform: translate3d(0, -50%, 0);
}

.g-announcement.is-removed {
    opacity: 0;
    height: 0;
}

.g-announcement:empty {
    display: none;
}

.g-announcement__blocks {
    position: relative;
    transition: height .4s .2s;
}

.g-announcement__blocks__item {
    position: relative;
    width: 100%;
    top: 0;
    left: 0;
    padding: 7px calc(var(--padding-h) + 20px) 7px var(--padding-h);
    transition: opacity .4s .4s;
}

.g-announcement__blocks__item b,.g-announcement__blocks__item strong {
    font-weight: 600;
}

.g-announcement__blocks__item__text a {
    text-decoration: underline;
    text-underline-offset: 3px;
    font-weight: 600;
    margin-left: .5em;
}

.g-announcement__blocks__item:not(.is-active) {
    position: absolute;
    opacity: 0;
    pointer-events: none;
    transition-delay: 0s;
}

.g-announcement__dots {
    padding: 0 var(--padding-max) 6px;
    gap: var(--dot-gap);
}

.g-announcement__dots button {
    position: relative;
    width: var(--dot-size);
    height: var(--dot-size);
    border: 1px solid;
    border-radius: 100%;
    transition: background .2s,border .2s;
}

.g-announcement__dots button:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(var(--dot-size) + var(--dot-gap));
    height: calc(var(--dot-size) + var(--dot-gap));
    transform: translate3d(-50%, -50%, 0);
}

.g-announcement__dots button.is-active {
    color: var(--emphasize);
    background-color: var(--emphasize);
}

@media (hover: hover) {
    .g-announcement__dots button:hover {
        color: var(--emphasize);
    }
}

@media screen and (max-width: 600px) {
    .g-announcement__blocks__item {
        padding: 5px calc(var(--padding-h) + 20px) 5px var(--padding-h);
    }

    .g-announcement__blocks__item__text {
        font-size: 11px;
    }
}

html:not(.is-cart-empty) .g-header__cart:after {
    opacity: 1;
}

html.is-megamenu-active .g-header__megamenu.is-active {
    opacity: 1;
    pointer-events: auto;
}

html.mobile-menu-is-active .g-header__mobile__trigger:before {
    top: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
}

html.mobile-menu-is-active .g-header__mobile__trigger:after {
    top: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
}

html.mobile-menu-is-active .g-header__mobile__trigger span {
    opacity: 0;
}

html.mobile-menu-is-active .g-header__mobile__menu {
    opacity: 1;
    pointer-events: auto;
}

.g-header {
    --spacing: 22px;
    position: fixed;
    top: var(--s-announcement);
    width: 100%;
    transform: translate3d(0, 0, 0);
    padding-block: calc(var(--spacing) - 1.5px);
    z-index: var(--z-header);
}

.g-header__cart {
    position: relative;
}

.g-header__cart:after {
    content: "";
    position: absolute;
    right: -1px;
    top: 1px;
    width: 4px;
    height: 4px;
    background-color: var(--cr-brown);
    border-radius: 100%;
    opacity: 0;
}

.g-header__links {
    gap: 60px;
}

.g-header__logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    width: 80px;
}

.g-header__actions {
    gap: 25px;
}

.g-header__actions>* {
    display: inline-block;
    width: 1em;
}

.g-header__actions>* svg {
    width: 100%;
    height: 100%;
}

.g-header__cart {
    width: 1.2em;
    height: 16px;
}

.g-header__megamenu {
    position: absolute;
    overflow: hidden;
    top: calc(var(--s-header) - .5px);
    left: 0;
    width: 100%;
    padding-bottom: var(--spacing);
    opacity: 0;
    pointer-events: none;
    transition: opacity .4s;
}

.g-header__megamenu:before,.g-header__megamenu:after {
    content: "";
    display: block;
    height: 1px;
    background-color: currentColor;
}

.g-header__megamenu__inner {
    gap: var(--spacing);
    padding-block: var(--spacing);
}

.g-header__megamenu__columns {
    gap: clamp(80px,10vw,120px);
}

.g-header__megamenu__column {
    display: grid;
    grid-template-rows: repeat(8, auto);
    grid-auto-flow: column;
    gap: 10px var(--s-section);
}

.g-header__megamenu__images {
    position: relative;
    overflow: hidden;
    width: 40%;
    height: 220px;
}

.g-header__megamenu__blocks {
    position: absolute;
    overflow: hidden;
    right: 0;
    height: 100%;
    gap: 20px;
    justify-content: flex-end;
    transition: var(--t-1);
    opacity: 0;
    pointer-events: none;
}

.g-header__megamenu__blocks.is-active {
    position: relative;
    opacity: 1;
    pointer-events: auto;
    transition-delay: .2s;
}

.g-header__megamenu__block {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.g-header__megamenu__image {
    position: relative;
    overflow: hidden;
    height: 100%;
}

.g-header__mobile__trigger {
    --width: 20px;
    position: relative;
    width: var(--width);
    height: var(--width);
}

.g-header__mobile__trigger:before,.g-header__mobile__trigger:after,.g-header__mobile__trigger span {
    content: "";
    display: block;
    position: absolute;
    height: 1px;
    width: var(--width);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: var(--cr-black);
    pointer-events: none;
    transition: .2s;
}

.g-header__mobile__trigger:before {
    top: 20%;
}

.g-header__mobile__trigger:after {
    top: 80%;
}

.g-header__mobile__menu {
    position: fixed;
    overflow-y: auto;
    top: var(--s-header);
    left: 0;
    width: 100%;
    height: calc(100vh - var(--s-header-space));
    height: calc(100svh - var(--s-header-space));
    padding: 0 var(--s-contain) 30px;
    opacity: 0;
    pointer-events: none;
    transition: var(--t-2);
}

.g-header__mobile__list {
    border-top: 1px solid;
}

.g-header__mobile__column {
    padding-left: .8em;
}

.g-header__mobile__column:not(:last-child) {
    margin-bottom: 30px;
}

.g-header__mobile__item:not(:last-child) {
    margin-bottom: 10px;
}

.g-header__mobile__accordion {
    --padding-v: 11px;
}

.g-header__mobile__link {
    border-bottom: 1px solid;
}

.g-header__mobile__link>* {
    display: block;
    width: 100%;
    padding-block: var(--spacing);
}

@media screen and (max-width: 1024px) {
    .g-header {
        --spacing: 20px;
    }
}

@media screen and (max-width: 600px) {
    .g-header {
        padding-block: 14px;
    }

    .g-header__logo {
        width: 65px;
    }

    .g-header__actions {
        gap: 20px;
    }
}

.g-footer {
    position: relative;
    overflow: hidden;
}

.g-footer__inner {
    gap: 40px 80px;
    padding-top: 30px;
    padding-bottom: 40px;
    border-top: 1px solid var(--cr-gray);
}

.g-footer__linklist {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px 60px;
}

.g-footer__contact {
    gap: 60px;
    margin-left: auto;
}

.g-footer__social__linklist {
    gap: 15px;
}

.g-footer__social__linklist__item {
    width: 1.3em;
    transition: opacity .2s;
}

@media (hover: hover) {
    .g-footer__social__linklist__item:hover {
        opacity: .7;
    }
}

.g-footer__form__title {
    margin-bottom: 12px;
}

.g-footer__form__info {
    margin-top: 15px;
}

.g-footer__copyright {
    flex-basis: 100%;
    text-align: center;
}

@media screen and (max-width: 1024px) {
    .g-footer__linklist {
        gap: 20px 30px;
    }

    .g-footer__contact {
        width: 100%;
        margin-left: 0;
        order: 2;
    }

    .g-footer__form {
        display: grid;
        grid-template-columns: .7fr 1fr;
        gap: 20px;
        width: 100%;
    }

    .g-footer__form__title {
        margin-bottom: 0px;
    }

    .g-footer__social {
        order: 3;
    }

    .g-footer__copyright {
        order: 4;
    }
}

@media screen and (max-width: 600px) {
    .g-footer__nav {
        width: 100%;
    }

    .g-footer__linklist {
        display: grid;
        grid-template-columns: .7fr 1fr;
        gap: 5px;
    }

    .g-footer__linklist__item {
        font-size: 12px;
    }

    .g-footer__inner {
        gap: 30px;
        padding-top: 30px;
        padding-bottom: 30px;
        border-top: 1px solid var(--cr-gray);
    }

    .g-footer__form {
        gap: 10px 5px;
    }
}

.g-minicart {
    position: fixed;
    z-index: 120;
}

.g-minicart__overlay {
    position: fixed;
    background-color: rgba(0,0,0,.4);
    transition: .4s;
    z-index: 120;
}

.g-minicart__content {
    position: fixed;
    width: 100%;
    max-width: 450px;
    height: 100%;
    top: 0;
    right: 0;
    background-color: var(--cr-pale);
    transition: .6s var(--e-inOut-expo);
    z-index: 120;
}

.g-minicart .c-cart {
    --padding-h: 30px;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.g-minicart .c-cart__empty {
    margin: auto 0;
}

.g-minicart .c-cart__count {
    line-height: .7;
}

.g-minicart .c-cart__wrapper {
    height: 100%;
    overflow-y: auto;
}

.g-minicart .c-cart__header {
    position: sticky;
    top: 0;
    padding: 40px var(--padding-h) var(--padding-v);
    z-index: 1;
}

.g-minicart .c-cart__header:after {
    content: "";
    position: absolute;
    width: calc(100% - var(--padding-h)*2);
    bottom: 0;
    left: var(--padding-h);
    border-bottom: 1px solid;
}

.g-minicart .c-cart__footer {
    position: sticky;
    bottom: 0;
    z-index: 1;
}

.g-minicart .c-cart__summary {
    padding: 0;
}

.g-minicart .c-cart__summary__subtotal {
    width: 100%;
    padding: var(--padding-v) var(--padding-h);
}

.g-minicart .c-cart__summary__submit {
    width: 100%;
    height: 60px;
    line-height: 60px;
    margin-top: 0;
    font-size: 15px;
}

.g-minicart .c-cart__items {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 0 var(--padding-h);
}

html:not(.is-minicart-active) .g-minicart {
    pointer-events: none;
}

html:not(.is-minicart-active) .g-minicart__overlay {
    opacity: 0;
    transition-delay: .4s;
}

html:not(.is-minicart-active) .g-minicart__content {
    transform: translate3d(100%, 0, 0);
}

html.is-search-active .g-search {
    opacity: 1;
    pointer-events: auto;
}

.g-search {
    position: fixed;
    overflow: hidden;
    top: calc(var(--s-header-space) - 1px);
    left: 0;
    right: 0;
    width: 100%;
    z-index: var(--z-search);
    opacity: 0;
    pointer-events: none;
    transition: opacity .4s;
}

.g-search:before {
    content: "";
    display: block;
    height: 1px;
    background-color: currentColor;
}

.g-search__close {
    position: absolute;
    top: 20px;
    right: var(--s-contain);
    z-index: 2;
}

.g-search__header {
    gap: 20px;
}

.g-search__form {
    width: 100%;
    max-width: 400px;
    border-bottom: 1px solid;
}

.g-search__input {
    width: 100%;
}

.g-search__suggestions {
    gap: 20px;
}

.g-search__main {
    padding-block: 50px;
}

.g-search__message {
    text-align: center;
    display: none;
    padding-top: 50px;
}

.g-search__message__empty>*:not(:last-child) {
    margin-bottom: 20px;
}

.g-search__message.is-empty {
    display: block;
}

.g-search__results {
    overflow-y: auto;
    padding-inline: 50px;
    max-height: 600px;
}

.g-search__results.is-live {
    margin-top: 50px;
    padding-top: 50px;
    border-top: 1px solid;
}

.g-search__results__count {
    margin-bottom: 20px;
}

.g-search__results__content {
    gap: 20px;
}

@media screen and (max-width: 600px) {
    .g-search {
        height: 100%;
    }

    .g-search__main {
        padding-block: 80px;
    }

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

    .g-search__results__content {
        grid-template-columns: repeat(2, 1fr);
    }
}

html.is-lightbox-active .g-lightbox {
    opacity: 1;
    visibility: visible;
}

.g-lightbox {
    position: fixed;
    top: calc(var(--s-header-space) - .5px);
    left: 0;
    width: 100%;
    height: calc(100vh - var(--s-header-space));
    height: calc(100svh - var(--s-header-space));
    padding-inline: var(--s-contain);
    z-index: 10;
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s ease,visibility .3s ease;
}

.g-lightbox__inner {
    height: 100%;
    overflow-y: auto;
}

.g-lightbox__backdrop {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--cr-pale);
    cursor: pointer;
}

.g-lightbox__header {
    position: absolute;
    width: calc(100% - var(--s-contain)*2);
    left: var(--s-contain);
    padding-block: 10px;
    z-index: 3;
}

.g-lightbox__content {
    position: relative;
    overflow-y: auto;
    align-items: center;
    gap: 80px;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}

.g-lightbox__close {
    position: absolute;
    top: 20px;
    right: var(--s-contain);
    z-index: 2;
}

.g-lightbox__sidebar {
    overflow-y: auto;
    gap: 10px;
    grid-auto-rows: auto;
    max-width: 300px;
    max-height: 400px;
    pointer-events: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.g-lightbox__sidebar::-webkit-scrollbar {
    display: none;
}

.g-lightbox__thumbnail {
    opacity: .5;
}

.g-lightbox__thumbnail.is-active {
    opacity: 1;
    pointer-events: none;
}

.g-lightbox__main {
    position: relative;
    max-width: 800px;
    pointer-events: auto;
}

.g-lightbox__main.is-single {
    position: absolute;
    height: calc(100vh - var(--s-header-space) - 39px);
    height: calc(100svh - var(--s-header-space) - 39px);
    left: 50%;
    transform: translate3d(-50%, 0, 0);
}

.g-lightbox__image {
    transition: opacity .4s ease-in;
}

.g-lightbox__navigation {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
}

.g-lightbox__nav {
    position: absolute;
    top: 50%;
    transform: translate3d(0, -50%, 0);
    pointer-events: auto;
}

.g-lightbox__nav>* {
    width: 1.2em;
    height: 1.2em;
}

.g-lightbox__nav--next {
    right: -4em;
}

.g-lightbox__nav--prev {
    left: -4em;
}

.g-lightbox__action {
    justify-self: flex-end;
    width: fit-content;
    pointer-events: auto;
}

.g-lightbox__action.is-single {
    position: absolute;
}

@media screen and (max-width: 1024px) {
    .g-lightbox__content {
        display: flex;
        flex-direction: column;
        gap: 20px;
        height: unset;
        padding-bottom: 30px;
    }

    .g-lightbox__main {
        order: 1;
        margin-inline: auto;
    }

    .g-lightbox__main.is-single {
        position: relative;
        height: unset;
        left: unset;
        transform: none;
    }

    .g-lightbox__sidebar {
        order: 2;
        display: flex;
        overflow-x: auto;
        overflow-y: hidden;
        max-height: unset;
        margin-inline: auto;
        justify-content: center;
    }

    .g-lightbox__sidebar>* {
        flex: 0 0 auto;
        width: 15%;
    }

    .g-lightbox__action {
        order: 3;
        display: flex;
        justify-self: center;
    }

    .g-lightbox__action.is-single {
        position: relative;
    }
}

@media screen and (max-width: 600px) {
    .g-lightbox {
        padding-inline: 0px;
    }

    .g-lightbox__main {
        max-width: unset;
    }

    .g-lightbox__main.is-single {
        width: 100vw;
    }

    .g-lightbox__sidebar {
        max-width: calc(100vw - var(--s-contain)*4);
        justify-content: center;
    }

    .g-lightbox__nav--next {
        right: var(--s-contain);
    }

    .g-lightbox__nav--prev {
        left: var(--s-contain);
    }
}

html.is-newsletter-active .g-newsletter {
    transform: translate3d(0, 0, 0);
}

.g-newsletter {
    --padding-h: 30px;
    position: fixed;
    right: 0;
    bottom: 30%;
    width: 100%;
    max-width: 600px;
    border: 1px solid;
    transform: translate3d(110%, 0, 0);
    z-index: 120;
    transition: .4s;
}

.g-newsletter__image {
    position: relative;
    overflow: hidden;
    flex: 1;
}

.g-newsletter__content {
    width: 55%;
    min-height: 350px;
}

.g-newsletter__header {
    padding-inline: var(--padding-h);
    padding-block: 20px;
    border-bottom: 1px solid;
}

.g-newsletter__container {
    position: relative;
    overflow: hidden;
    display: grid;
    flex: 1;
    padding-inline: var(--padding-h);
    padding-block: 10px;
}

.g-newsletter__container>* {
    grid-area: 1/1/2/2;
}

.g-newsletter__email {
    position: relative;
    gap: 30px;
    transition: opacity .4s;
}

.g-newsletter__email>button {
    text-align: left;
}

.g-newsletter__paragraph.wysiwyg b,.g-newsletter__paragraph.wysiwyg strong,.g-newsletter__code.wysiwyg b,.g-newsletter__code.wysiwyg strong {
    color: var(--cr-accent);
}

.g-newsletter__success {
    gap: 20px;
    opacity: 0;
    pointer-events: none;
    transition: opacity .4s;
}

.g-newsletter__action {
    margin-top: 20px;
}

.g-newsletter.is-success .g-newsletter__email {
    opacity: 0;
    pointer-events: none;
}

.g-newsletter.is-success .g-newsletter__success {
    opacity: 1;
    pointer-events: auto;
    transition-delay: .4s;
}

@media screen and (max-width: 600px) {
    .g-newsletter {
        --padding-h: 15px;
        max-width: 400px;
        width: calc(100% - var(--s-contain)*2);
        right: var(--s-contain);
    }

    .g-newsletter__inner {
        flex-direction: column;
    }

    .g-newsletter__image {
        display: none;
        aspect-ratio: 1;
    }

    .g-newsletter__content {
        width: 100%;
        min-height: 220px;
    }

    .g-newsletter__header {
        padding-block: var(--padding-h);
    }

    .g-newsletter__paragraph {
        margin-bottom: 10px;
    }

    .g-newsletter__success {
        align-items: center;
        text-align: center;
    }

    .g-newsletter__email {
        gap: 15px;
    }
}

.p-404 {
    min-height: 100vh;
    min-height: 100svh;
    padding-block: var(--s-section);
    text-align: center;
}

.p-general {
    padding-block: calc(var(--s-header-space) + var(--s-section)*2);
    gap: var(--s-section);
}

.p-general__title {
    width: 100%;
}

@media screen and (max-width: 600px) {
    .p-general {
        flex-wrap: wrap;
    }
}

.shopify-policy__container {
    width: calc(100vw - var(--s-contain)*2);
    max-width: 900px !important;
    margin: 0 auto !important;
    padding: calc(var(--s-header-space) + 50px) 0 70px !important;
}

.shopify-policy__title {
    width: 100%;
    margin: 0 0 40px;
    padding: 0;
    text-align: left;
}

.shopify-policy__title h1 {
    margin: 0;
    padding: 0;
}

.shopify-policy__body {
    width: 100%;
}

.shopify-policy__body table {
    width: 100%;
}

@media screen and (max-width:600px) {
    .shopify-policy__container {
        width: calc(100vw - var(--s-contain)*2);
        padding: calc(var(--s-header-space) + 30px) 0 50px !important;
    }

    .shopify-policy__title {
        margin-bottom: 30px;
    }

    .shopify-policy__body {
        overflow-wrap: break-word;
    }

    .shopify-policy__body table {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

.account-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 10px;
}

@media (hover: hover) {
    .account-header a:hover,.account-header button:hover {
        text-decoration: underline;
    }
}

.account-table table {
    width: 100%;
    font: var(--t-b-2);
    border-collapse: collapse;
    border-spacing: 0;
}

.account-table table th,.account-table table td {
    position: relative;
    font-weight: 400;
    text-align: left;
    padding: 5px 10px;
    border: 1px solid var(--cr-subtle);
    border-left: 0;
    border-right: 0;
}

.account-table table th {
    font-weight: bold;
    background-color: var(--cr-subtle);
}

.account-table table tr {
    position: relative;
}

.account-table table p {
    font: inherit;
}

@media (hover: hover) {
    .account-table table a:hover {
        text-decoration: underline;
    }
}

@media screen and (max-width: 600px) {
    .account-table {
        width: 100vw;
        overflow-x: auto;
        padding: 0 var(--s-contain) 20px;
        margin: 0 calc(-1*var(--s-contain));
    }

    .account-table table {
        min-width: 600px;
    }

    .account-table::-webkit-scrollbar {
        height: 5px;
        border-radius: 5px;
    }

    .account-table::-webkit-scrollbar-track {
        margin: 0 var(--s-contain);
        background-color: var(--cr-subtle);
    }

    .account-table::-webkit-scrollbar-thumb {
        height: 5px;
        border-radius: 5px;
        background-color: var(--cr-subtle-5);
    }
}

.address-list {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.address-list__item {
    padding: 20px;
    gap: 20px;
    border: 1px solid var(--cr-subtle);
}

.address-list__item__actions {
    margin-top: auto;
    gap: 10px;
}

@media (hover: hover) {
    .address-list__item__actions button:hover {
        text-decoration: underline;
    }
}

@media screen and (max-width: 1024px) {
    .address-list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 600px) {
    .address-list {
        grid-template-columns: repeat(1, 1fr);
        gap: 10px;
    }
}

.account-dashboard {
    padding-block: calc(var(--s-header-space) + var(--s-section));
}

.account-dashboard>*:not(:last-child) {
    padding-bottom: 40px;
    margin-bottom: 40px;
    border-bottom: 1px solid var(--cr-subtle);
}

.account-order {
    padding-block: calc(var(--s-header-space) + var(--s-section));
}

.account-order>*:not(:last-child) {
    margin-bottom: 40px;
}

.account-order__header {
    padding-bottom: 40px;
    border-bottom: 1px solid var(--cr-subtle);
}

.account-order__details {
    gap: 24px;
}

.account-order__details__col {
    flex: 1;
}

.account-order__details p:not(:first-child) {
    margin-top: 6px;
}

.account-order__details p:not(:last-child) {
    margin-bottom: 12px;
}

@media screen and (max-width: 600px) {
    .account-order__details__col {
        flex: unset;
        width: 100%;
    }
}

.account-order__items .item-thumbnail {
    width: 33.33%;
}

.account-order__items .item-thumbnail .item-thumbnail-interior {
    position: relative;
    width: 150px;
    height: 150px;
}

.account-order__items .item-thumbnail .item-thumbnail-interior>* {
    object-position: center left;
}

.account-order__summary__row {
    width: calc(66.66% - 10px);
    margin-left: auto;
    gap: 10px;
}

.account-order__summary__row:not(:last-child) {
    margin-bottom: 6px;
    padding-bottom: 6px;
    border-bottom: 1px solid var(--cr-subtle);
}

@media screen and (max-width: 600px) {
    .account-order__summary__row {
        width: 100%;
    }
}

.account-gate {
    min-height: calc(100svh - var(--s-announcement, 0px) - var(--s-header, 0px));
    padding-block: calc(var(--s-header-space) + 50px);
}

.account-gate__wrapper {
    gap: 40px;
}

.account-gate__wrapper>* {
    flex: 1;
}

.account-gate__wrapper__divider {
    flex: none;
    height: unset;
    align-self: stretch;
    border-left: 1px solid;
}

@media screen and (max-width: 1024px) {
    .account-gate__wrapper {
        flex-direction: column;
    }

    .account-gate__wrapper>* {
        width: 100%;
    }
}

html.is-account-recover-active .account-gate__wrapper {
    display: none;
}

.account-gate__form {
    gap: 30px;
}

.account-gate__form__footer {
    gap: 10px;
}

.account-gate__form__footer [type=submit] {
    width: 100%;
}

.account-gate__form__footer__recover {
    width: fit-content;
    margin: auto;
}

.account-gate__form .errors {
    padding: 10px;
    background-color: var(--cr-subtle);
}

.account-gate .account-recover {
    padding: 0 var(--padding-sm);
}

html:not(.is-account-recover-active) .account-recover {
    display: none;
}

.collection-content {
    padding-top: calc(var(--s-header-space) + 50px);
}

.collection-content__hero {
    padding-inline: var(--s-contain);
    gap: 20px;
    margin-bottom: 45px;
}

.collection-content__hero__image {
    width: 50%;
}

.collection-content__hero__content {
    flex: 1;
    gap: 13px 10px;
}

.collection-content__hero__content .c-filters-sort__list {
    width: 100%;
    overflow-x: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.collection-content__hero__content .c-filters-sort__list::-webkit-scrollbar {
    display: none;
}

.collection-content__hero .c-filters-sort.is-only-product-types {
    width: 100%;
}

@media screen and (max-width: 600px) {
    .collection-content__hero {
        margin-bottom: 20px;
    }

    .collection-content__hero__title {
        order: 1;
    }

    .collection-content__hero__content {
        flex: 1;
        gap: 10px;
    }

    .collection-content__hero__content .c-filters-sort {
        order: 3;
    }

    .collection-content__hero__content .c-filters-sort.is-only-product-types {
        order: 2;
        width: 100%;
        margin-bottom: 10px;
    }
}

.collection-content__empty:empty,.collection-content__products:empty,.collection-content__pagination:empty {
    display: none;
}

.collection-content__empty {
    gap: 40px;
    padding-inline: var(--s-contain);
    min-height: 70svh;
}

.collection-content__products {
    padding-inline: var(--s-contain);
    grid-template-columns: repeat(4, 1fr);
    gap: min(3.5vw,70px);
}

@media screen and (min-width: 2200px) {
    .collection-content__products {
        grid-template-columns: repeat(6, 1fr);
    }
}

@media screen and (max-width: 1024px) {
    .collection-content__products {
        grid-template-columns: repeat(3, 1fr);
        gap: 20px 15px;
    }
}

@media screen and (max-width: 600px) {
    .collection-content__products {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px 10px;
    }
}

.collection-content__pagination {
    margin: var(--s-section) auto;
    text-align: center;
    gap: 10px;
}

.collection-content__pagination a.is-inactive {
    cursor: not-allowed;
    color: var(--cr-subtle-3);
}

@media screen and (max-width: 600px) {
    .collection-content {
        padding-top: calc(var(--s-header-space) + 25px);
    }

    .collection-content__hero,.collection-content__empty,.collection-content__products {
        padding-inline: 0px;
    }
}

.product-hero {
    --hero-height: 100vh;
    --hero-height: 100svh;
    --spacing-lg: 40px;
    --spacing-md: 20px;
    --spacing-top: calc(var(--s-header-space) + 40px);
    --aspect-ratio: 0.75;
    padding-top: var(--spacing-top);
    padding-inline: calc(var(--s-contain)*4);
    margin-bottom: var(--s-section);
}

@media (hover: hover) {
    .product-hero:hover .product-hero__gallery__thumbnails {
        opacity: 1;
    }
}

.product-hero__gallery {
    flex: 60% 0 0;
}

.product-hero__gallery.is-fade {
    height: var(--hero-height);
}

.product-hero__gallery.is-fade .product-hero__gallery__thumbnails__wrapper {
    height: 100%;
}

.product-hero__gallery.is-fade .product-hero__gallery__slider {
    height: 100%;
}

.product-hero__gallery.is-fade .slider-block {
    opacity: 0;
    pointer-events: none;
    transition: .4s;
    height: 100%;
}

.product-hero__gallery.is-fade .slider-block.is-active {
    opacity: 1;
    pointer-events: auto;
}

.product-hero__gallery.is-scroll .slider-block {
    position: relative;
    flex: 0 0 100%;
    width: 100%;
    height: fit-content;
}

.product-hero__gallery.is-scroll .slider-block.is-model {
    aspect-ratio: var(--aspect-ratio);
}

.product-hero__gallery.is-scroll.is-natural .c-video iframe {
    top: unset;
    left: unset;
    width: 100%;
    height: 100%;
    transform: unset;
}

.product-hero__gallery.is-scroll.is-fit .c-video {
    position: absolute;
}

.product-hero__gallery.is-scroll.is-fit .slider-block {
    aspect-ratio: var(--aspect-ratio);
    overflow: hidden;
}

.product-hero__gallery.is-fit .slider-block video {
    object-fit: cover;
}

.product-hero__gallery.is-fit .slider-block img {
    object-fit: cover;
}

.product-hero__gallery__slider {
    overflow: hidden;
    width: 100%;
    height: 100%;
    gap: 15px;
}

.product-hero__gallery__thumbnails {
    position: sticky;
    top: var(--spacing-top);
    max-width: 100px;
    width: 100%;
    height: 100%;
    transition: .4s ease;
    z-index: 5;
    max-height: 550px;
    overflow-x: hidden;
    overflow-y: auto;
    direction: rtl;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.product-hero__gallery__thumbnails::-webkit-scrollbar {
    display: none;
}

.product-hero__gallery__thumbnails__wrapper {
    gap: 15px;
    position: sticky;
    top: 0;
}

.product-hero__gallery__thumbnail {
    position: relative;
    width: 100%;
}

.product-hero__gallery__thumbnail:after {
    content: "";
    display: block;
    padding-top: 133%;
}

.product-hero__gallery__thumbnail:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -7.5px;
    width: 100%;
    height: 1px;
    border-bottom: 1px solid rgba(0,0,0,0);
    transition: .2s;
}

.product-hero__gallery__thumbnail.is-active {
    pointer-events: none;
}

.product-hero__gallery__thumbnail.is-active:before {
    border-color: var(--cr-accent);
}

@media (hover: hover) {
    .product-hero__gallery__thumbnail:hover:before {
        border-color: var(--cr-accent);
    }
}

.product-hero__gallery__block {
    display: flex;
    gap: 20px 40px;
    position: absolute;
    inset: 0;
    opacity: 0;
    pointer-events: none;
}

.product-hero__gallery__block.is-active {
    position: relative;
    opacity: 1;
    pointer-events: auto;
}

.product-hero__gallery__block .c-slider__slide {
    margin-bottom: 15px;
}

.product-hero__gallery__block .c-slider__dots {
    display: none;
    margin-top: 0;
}

.product-hero__sticky-scroll-track {
    flex: 1;
}

.product-hero__header {
    margin-bottom: var(--spacing-md);
    padding-bottom: 15px;
    border-bottom: 1px solid var(--cr-gray);
}

.product-hero__tabs {
    margin-bottom: var(--spacing-md);
    padding-bottom: var(--spacing-md);
    border-bottom: 1px solid var(--cr-gray);
}

.product-hero__tabs__options {
    gap: var(--spacing-lg);
    margin-bottom: 15px;
}

.product-hero__tabs__option {
    position: relative;
    font-size: 11px;
    opacity: .6;
    transition: var(--t-1);
}

.product-hero__tabs__option.is-active {
    opacity: 1;
}

@media (hover: hover) {
    .product-hero__tabs__option:hover {
        opacity: 1;
    }
}

.product-hero__tabs__content {
    position: relative;
    overflow: hidden;
    transition: height .4s ease;
}

.product-hero__tabs__block {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    pointer-events: none;
    transition: var(--t-2);
}

.product-hero__tabs__block.is-active {
    position: relative;
    opacity: 1;
    pointer-events: auto;
}

.product-hero__tabs__item {
    gap: var(--spacing-md);
    max-width: 600px;
}

.product-hero__tabs__item:not(:last-child) {
    margin-bottom: var(--spacing-md);
}

.product-hero__tabs__image {
    max-width: 50px;
    width: 100%;
}

.product-hero__form {
    margin-bottom: 10px;
}

.product-hero__content {
    flex: 40% 0 0;
    padding-left: clamp(40px,5vw,96px);
}

.product-hero__content__interior {
    position: sticky;
    bottom: 0;
    top: var(--spacing-top);
    min-height: var(--hero-height);
    max-width: 460px;
    width: 100%;
}

.product-hero__accordions .c-accordion {
    --padding-v: 8px;
    border-bottom: 0px;
}

.product-hero__accordions .c-accordion__toggle {
    font: var(--t-h-3);
    gap: 15px;
    padding: 0;
}

.product-hero__accordions .c-accordion__content-interior {
    padding-top: var(--padding-v);
}

.product-hero__guide__convert {
    gap: .5em;
    margin-bottom: 15px;
}

.product-hero__guide__convert [data-convert-trigger] {
    opacity: .6;
    transition: var(--t-1);
}

.product-hero__guide__convert [data-convert-trigger].is-active {
    opacity: 1;
    pointer-events: none;
}

@media (hover: hover) {
    .product-hero__guide__convert [data-convert-trigger]:hover {
        opacity: 1;
    }
}

.product-hero__guide__table {
    display: block;
    overflow-x: auto;
    overflow-y: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none;
    white-space: nowrap;
    width: 100%;
    border-top: 1px solid var(--cr-gray);
}

.product-hero__guide__table::-webkit-scrollbar {
    display: none;
}

.product-hero__guide__table:not(:last-child) {
    margin-bottom: 10px;
}

.product-hero__guide__table th,.product-hero__guide__table td {
    padding-block: 15px;
    min-width: 75px;
    text-align: center;
    border-bottom: 1px solid var(--cr-gray);
    font: var(--t-l-3);
    line-height: 1;
    font-weight: 500;
}

.product-hero__guide__table tbody tr:nth-child(odd) {
    background-color: var(--cr-cream);
}

.product-hero__guide__description {
    margin-top: 10px;
}

@media screen and (max-width: 1024px) {
    .product-hero {
        --spacing-top: var(--s-header-space);
        flex-direction: column;
        padding-top: var(--spacing-top);
        padding-inline: 0px;
    }

    .product-hero>* {
        flex: 100%;
        position: relative;
        top: 0;
    }

    .product-hero__image {
        overflow: hidden;
        aspect-ratio: var(--aspect-ratio);
    }

    .product-hero__gallery {
        position: relative;
        overflow: hidden;
        margin-bottom: 20px;
    }

    .product-hero__gallery .c-slider .c-slider__viewport {
        margin-bottom: 15px;
    }

    .product-hero__gallery .c-slider .c-slider__dots {
        display: flex;
        gap: 10px;
    }

    .product-hero__gallery .c-slider .c-slider__dot {
        --dot-size: 5px;
        --bg-color: var(--cr-gray);
    }

    .product-hero__gallery__block {
        flex-direction: column;
    }

    .product-hero__gallery__block .c-slider__slide {
        margin-right: 10px;
        margin-bottom: 0;
        max-width: calc(100% - var(--s-contain)*2 - 40px);
    }

    .product-hero__gallery__block .c-slider__slide>* {
        transform: scale(0.95);
        transition: transform .4s ease;
    }

    .product-hero__gallery__block .c-slider__slide.is-snapped>* {
        transform: scale(1);
    }

    .product-hero__gallery__block.is-active .c-slider__viewport {
        pointer-events: auto;
    }

    .product-hero__content {
        padding-left: 0;
    }

    .product-hero__content__interior {
        min-height: unset;
    }

    .product-hero__content__interior {
        display: flex;
        flex-direction: column;
        max-width: unset;
    }

    .product-hero__content__interior>* {
        order: 3;
    }

    .product-hero__header {
        order: 1;
        padding-bottom: 0;
        border-bottom: 0px;
    }

    .product-hero__form {
        order: 2;
        margin-bottom: 40px;
    }

    .product-hero__header,.product-hero__tabs,.product-hero__form,.product-hero__accordions {
        padding-inline: var(--s-contain);
    }

    .product-hero__tabs {
        border-bottom: 0px;
        margin-bottom: 0px;
    }

    .product-hero__tabs__option:after {
        content: "";
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: currentColor;
        opacity: 0;
        transition: var(--t-1);
    }

    .product-hero__tabs__option.is-active:after {
        opacity: 1;
    }
}

@media screen and (max-width: 600px) {
    .product-hero {
        --spacing-lg: 30px;
        --spacing-md: 20px;
        margin-bottom: var(--spacing-lg);
    }

    .product-hero__header__title {
        font: var(--t-b-2);
        font-weight: 500;
        font-size: 15px;
    }

    .product-hero__header .c-item-price {
        font-size: 13px;
    }

    .product-hero__description.wysiwyg p,.product-hero__description.wysiwyg ol,.product-hero__description.wysiwyg ul {
        font: var(--t-b-3);
    }
}

.products-related {
    position: relative;
    padding-block: 35px;
}

.products-related:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    width: 70%;
    left: 50%;
    transform: translate3d(-50%, 0, 0);
    border-top: 1px solid var(--cr-gray);
}

.products-related__title {
    margin-bottom: 35px;
    padding-inline: calc(var(--s-contain)*4);
    text-align: center;
}

@media screen and (max-width: 600px) {
    .products-related__title {
        padding-inline: var(--s-contain);
        margin-bottom: 25px;
    }
}

.products-related__blocks {
    gap: 20px;
    overflow-x: auto;
    overflow-y: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none;
    padding-inline: calc(var(--s-contain)*4);
}

.products-related__blocks>.c-item-card {
    flex: 1;
}

@media screen and (max-width: 1024px) {
    .products-related__blocks {
        justify-content: flex-start;
    }

    .products-related__blocks>.c-item-card {
        flex: 0 0 auto;
        width: 35%;
    }
}

@media screen and (max-width: 600px) {
    .products-related__blocks {
        padding-inline: var(--s-contain);
    }

    .products-related__blocks>.c-item-card {
        width: 45%;
    }
}

@media screen and (max-width: 600px) {
    .products-related {
        padding-top: 30px;
        padding-bottom: 30px;
    }
}

.products-complementary {
    padding-top: 15px;
}

.products-complementary__title {
    font: var(--t-h-2);
    margin-bottom: 15px;
}

.products-complementary__blocks {
    gap: 15px;
    overflow-x: auto;
    overflow-y: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.products-complementary__blocks>.c-item-card {
    flex: 0 0 auto;
    width: 45%;
}

@media screen and (max-width: 1024px) {
    .products-complementary__title,.products-complementary__blocks {
        padding-inline: var(--s-contain);
    }
}

@media screen and (max-width: 600px) {
    .products-complementary__blocks>.c-item-card {
        width: 45%;
    }
}

.blog-content__empty:empty,.blog-content__articles:empty,.blog-content__articles-pagination:empty {
    display: none;
}

.blog-content__tags {
    margin: 20px 0;
    gap: 10px;
}

.blog-content__tags a {
    padding: .4em .6em;
    white-space: nowrap;
    background-color: var(--cr-subtle);
}

.blog-content__tags a.is-active {
    color: var(--cr-white);
    background-color: var(--cr-black);
}

.blog-content__articles {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

@media screen and (min-width: 2200px) {
    .blog-content__articles {
        grid-template-columns: repeat(6, 1fr);
        gap: 20px 10px;
    }
}

@media screen and (min-width: 1800px) {
    .blog-content__articles {
        grid-template-columns: repeat(4, 1fr);
        gap: 20px 10px;
    }
}

@media screen and (max-width: 1024px) {
    .blog-content__articles {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px 10px;
    }
}

.blog-content__articles__pagination {
    margin: var(--s-section) auto;
    text-align: center;
    gap: 10px;
}

.blog-content__articles__pagination a.is-inactive {
    cursor: not-allowed;
    color: var(--cr-subtle-3);
}

.article-content {
    padding-top: var(--s-header-space);
}

.article-content__hero {
    position: relative;
    gap: 40px;
    margin-bottom: calc(var(--s-section)*1.5);
}

.article-content__hero__title {
    margin-bottom: var(--s-section);
}

.article-content__hero__image {
    position: sticky;
    top: var(--s-header-space);
    overflow: hidden;
    height: calc(100vh - var(--s-header-space));
    height: calc(100svh - var(--s-header-space));
}

.article-content__hero__content {
    flex: 1;
    max-width: 800px;
    height: 100%;
    margin-top: auto;
    padding: 20% 0 20px var(--s-contain);
}

@media screen and (max-width: 1024px) {
    .article-content__hero {
        flex-wrap: wrap;
        flex-direction: column-reverse;
        gap: 30px;
        height: unset;
    }

    .article-content__hero__content {
        max-width: 800px;
        padding: 0 var(--s-contain);
    }

    .article-content__hero__image {
        position: relative;
        top: 0;
        width: 100%;
        height: unset;
        aspect-ratio: .8;
    }
}

.article-gallery {
    margin-block: var(--s-section);
}

.article-gallery__title {
    margin-bottom: 40px;
}

@media screen and (max-width: 600px) {
    .article-gallery__title {
        margin-bottom: 20px;
    }
}

.article-gallery__blocks {
    padding-inline: calc(var(--s-contain)*3);
    gap: 40px 20px;
}

@media screen and (max-width: 1024px) {
    .article-gallery__blocks {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media screen and (max-width: 600px) {
    .article-gallery__blocks {
        padding-inline: 0;
        grid-template-columns: repeat(3, 1fr);
        gap: 15.5px 10px;
    }
}

.search-content {
    padding-top: calc(var(--s-header-space) + 50px);
    padding-bottom: calc(var(--s-section)*2);
}

.search-content__hero {
    padding-inline: var(--s-contain);
    gap: 20px;
    margin-bottom: 45px;
}

.search-content__hero__content {
    flex: 1;
    gap: 20px 10px;
}

.search-content__hero__content .c-filters-sort__list {
    width: 100%;
    overflow-x: auto;
}

.search-content__results {
    padding-inline: var(--s-contain);
    grid-template-columns: repeat(4, 1fr);
    gap: min(3.5vw,70px);
}

@media screen and (min-width: 2200px) {
    .search-content__results {
        grid-template-columns: repeat(6, 1fr);
    }
}

@media screen and (max-width: 1024px) {
    .search-content__results {
        grid-template-columns: repeat(3, 1fr);
        gap: 20px 15px;
    }
}

@media screen and (max-width: 600px) {
    .search-content__results {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px 10px;
    }
}

.search-content__empty {
    height: calc(100vh - var(--s-header-space) - 50px);
    height: calc(100svh - var(--s-header-space) - 50px);
    gap: var(--s-section);
    text-align: center;
}

.search-content__empty>*:not(:last-child) {
    margin-bottom: 20px;
}

.search-content__empty__form {
    gap: 20px;
    width: 100%;
    max-width: 450px;
}

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

.search-content__message__empty>*:not(:last-child) {
    margin-bottom: 20px;
}

@media screen and (max-width: 600px) {
    .search-content__hero,.search-content__results {
        padding-inline: 0px;
    }
}

.about-content {
    padding-top: calc(var(--s-header-space) + var(--s-section));
    padding-bottom: var(--s-section);
}

.about-content__image {
    position: relative;
    overflow: hidden;
    max-height: 560px;
    max-width: 600px;
    margin-inline: auto;
}

.about-content__image:not(:last-child) {
    margin-bottom: var(--s-section);
}

.about-content__inner {
    position: relative;
    gap: 40px;
    width: 100%;
    max-width: 600px;
    margin-inline: auto;
}

.about-content__title {
    position: absolute;
    left: 0;
    top: 0;
    transform: translate3d(calc((100% + var(--s-section)) * -1), 0, 0);
}

@media screen and (max-width: 1024px) {
    .about-content__title {
        position: relative;
        transform: none;
    }

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

.contact-content {
    padding-block: calc(var(--s-header-space) + var(--s-section)*2);
    min-height: 100vh;
    min-height: 100svh;
}

.contact-content__inner {
    gap: var(--s-section);
    width: 100%;
}

.contact-content__main {
    gap: 40px;
}

.contact-content__list {
    gap: 15px;
}

.contact-content__label {
    margin-bottom: 5px;
}

@media screen and (max-width: 600px) {
    .contact-content__inner {
        flex-wrap: wrap;
    }
}

.stockists-content {
    padding-block: calc(var(--s-header-space) + var(--s-section)*2);
    min-height: 100vh;
    min-height: 100svh;
}

.stockists-content__inner {
    gap: var(--s-section);
    width: 100%;
}

.stockists-content__main {
    width: 100%;
    padding-top: 2px;
}

.stockists-content__main .c-accordion {
    width: 100%;
    max-width: 600px;
}

.stockists-content__main .c-accordion:first-child .c-accordion__toggle {
    padding-top: 0px;
}

.stockists-content__main .c-accordion__content ul {
    list-style: none;
}

.stockists-content__main .c-accordion__content ul li:not(:last-child) {
    margin-bottom: 10px;
}

@media screen and (max-width: 600px) {
    .stockists-content__inner {
        flex-wrap: wrap;
    }
}

.authentication-content {
    padding-block: calc(var(--s-header-space) + var(--s-section)*2);
    min-height: 100vh;
    min-height: 100svh;
}

.authentication-content__inner {
    gap: var(--s-section);
    width: 100%;
}

.authentication-content__main {
    gap: 40px;
}

.authentication-content__form {
    gap: 10px;
    width: 100%;
}

.authentication-content__logo {
    max-width: 150px;
    width: 100%;
}

.authentication-content__images {
    gap: 20px;
    width: 100%;
}

.authentication-content__images>* {
    position: relative;
    flex: 1;
    width: 100%;
}

@media screen and (max-width: 600px) {
    .authentication-content__inner {
        flex-wrap: wrap;
    }

    .authentication-content__images {
        flex-direction: column;
    }
}
/* Header image menu */
.g-header__visual-menu {
    width: 100%;
    padding-block: 28px 6px;
}

.g-header__visual-menu__cards {
    align-items: flex-start;
    justify-content: flex-start;
    gap: clamp(24px, 2.8vw, 40px);
    overflow-x: auto;
    overflow-y: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.g-header__visual-menu__cards::-webkit-scrollbar {
    display: none;
}

.g-header__visual-menu__card {
    flex: 0 0 clamp(180px, 16vw, 230px);
    min-width: 0;
}

.g-header__visual-menu__image {
    position: relative;
    overflow: hidden;
    width: 100%;
    aspect-ratio: 1 / 1;
}

.g-header__visual-menu__image > * {
    transition: transform .4s ease;
}

.g-header__visual-menu__title {
    margin-top: 10px;
    text-align: center;
    font-size: 13px;
    line-height: 1.2;
}

@media (hover: hover) {
    .g-header__visual-menu__card:hover .g-header__visual-menu__image > * {
        transform: scale(1.015);
    }

    .g-header__visual-menu__card:hover .g-header__visual-menu__title {
        text-decoration: underline;
        text-underline-offset: 3px;
    }
}

@media screen and (max-width: 1024px) {
    .g-header__visual-menu.is-mobile {
        padding-block: 10px 5px;
    }

    .g-header__visual-menu.is-mobile .g-header__visual-menu__cards {
        gap: 12px;
    }

    .g-header__visual-menu.is-mobile .g-header__visual-menu__card {
        flex-basis: 58%;
        max-width: 220px;
    }

    .g-header__visual-menu.is-mobile .g-header__visual-menu__title {
        margin-top: 7px;
        font-size: 11px;
    }
}
