.announcement-bar {
    --announcement-bar-slide-height: auto;
    --announcement-bar-transition-duration: .45s;
    display: block;
    width: 100%
}

.announcement-bar[hidden] {
    display: none
}

.announcement-bar__layout {
    align-items: center;
    column-gap: var(--spacing-16);
    display: grid;
    grid-template-columns: 1.4rem minmax(0, 1fr) 1.4rem;
    min-height: 4rem;
    padding-inline: var(--page-margin)
}

.announcement-bar__viewport {
    grid-column: 2;
    display: block;
    min-width: 0;
    overflow: hidden;
    position: relative
}

.announcement-bar__slides {
    min-height: var(--announcement-bar-slide-height, auto);
    position: relative
}

.announcement-bar__slides>* {
    align-items: center;
    display: flex;
    inline-size: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    transform: translate3d(0, 100%, 0);
    transition: transform var(--announcement-bar-transition-duration) ease, opacity var(--announcement-bar-transition-duration) ease, visibility 0s var(--announcement-bar-transition-duration);
    visibility: hidden
}

.announcement-bar__slides>*[data-state=active] {
    opacity: 1;
    pointer-events: auto;
    position: relative;
    transform: translateZ(0);
    transition-delay: 0s;
    visibility: visible
}

.announcement-bar__slides>*:first-child:not([data-state]) {
    opacity: 1;
    pointer-events: auto;
    position: relative;
    transform: translateZ(0);
    visibility: visible
}

.announcement-bar__slides>*[data-state=exit] {
    opacity: 0;
    pointer-events: none;
    transform: translate3d(0, -100%, 0);
    visibility: hidden
}

.announcement-bar__slides>* {
    text-align: center
}

.announcement-bar__slides>* .text-block,
.announcement-bar__slides>*.text-block {
    inline-size: 100%
}

.announcement-bar__slides>*.text-block>*:first-child,
.announcement-bar__slides>* .text-block>*:first-child {
    margin-block-start: 0
}

.announcement-bar__slides>*.text-block>*:last-child,
.announcement-bar__slides>* .text-block>*:last-child {
    margin-block-end: 0
}

.announcement-bar__close {
    align-self: center;
    color: inherit;
    flex: 0 0 auto
}

.announcement-bar__close svg {
    display: block
}

@media(prefers-reduced-motion:reduce) {
    .announcement-bar__slides>* {
        transition: none
    }
}

@media screen and (max-width:749px) {
    .announcement-bar__layout {
        column-gap: var(--spacing-8);
        min-height: 3.5rem;
        padding-inline: var(--page-margin-mobile, var(--page-margin))
    }
    .announcement-bar__slides>* {
        text-align: start
    }
}

.grid-section__slide-media {
    aspect-ratio: 4 / 5;
    background: color-mix(in oklab, var(--color-foreground) 4%, var(--color-background));
    overflow: hidden;
    width: 100%;
    object-fit: cover
}

.collab-spotlight__layout {
    display: grid;
    gap: var(--spacing-64);
    grid-template-areas: "content" "media"
}

.collab-spotlight__medias {
    grid-area: media
}

.collab-spotlight__medias:focus-visible {
    outline: var(--focus-ring);
    outline-offset: 2px
}

.collab-spotlight__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: var(--spacing-64);
    grid-area: content
}

@media screen and (max-width:749px) {
    .collab-spotlight__layout[data-main-media-mobile-first=true] {
        grid-template-areas: "media" "content"
    }
    .collab-spotlight__medias {
        margin-inline: calc(var(--page-margin) * -1);
        overflow: auto;
        padding-inline: var(--page-margin);
        scroll-behavior: smooth;
        scroll-padding-left: var(--page-margin);
        scroll-snap-type: x mandatory;
        scrollbar-width: thin;
        scrollbar-color: color-mix(in oklab, var(--color-foreground) 30%, transparent) transparent
    }
    .collab-spotlight__medias::-webkit-scrollbar {
        height: .6rem
    }
    .collab-spotlight__medias::-webkit-scrollbar-thumb {
        background: color-mix(in oklab, var(--color-foreground) 30%, transparent)
    }
    .collab-spotlight__medias::-webkit-scrollbar-track {
        background: transparent
    }
    .collab-spotlight__medias .section__inner>*>* {
        scroll-snap-align: start;
        scroll-snap-stop: always;
        width: 28rem
    }
    .collab-spotlight__medias .section__inner>*:last-child {
        padding-right: var(--page-margin)
    }
}

@media screen and (min-width:750px) {
    .collab-spotlight__layout {
        align-items: center;
        gap: var(--spacing-4);
        grid-template-areas: ". content . media";
        grid-template-columns: auto 27% auto 50%
    }
    .collab-spotlight__layout[data-main-media-desktop-first=true] {
        grid-template-areas: "media . content .";
        grid-template-columns: 50% auto 27% auto
    }
    .collab-spotlight__medias .section__inner>* {
        flex: 1
    }
}

.collection__top {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-16)
}

.collection__top.--edito {
    gap: var(--spacing-32)
}

@media screen and (min-width:750px) {
    .collection__top.--edito {
        align-items: flex-end;
        display: grid;
        grid-template-columns: minmax(auto, 77rem) auto;
        gap: var(--spacing-16);
        justify-content: space-between;
        margin-bottom: var(--spacing-32)
    }
    .collection__top.--edito .collection__header {
        align-items: flex-start;
        flex-direction: column;
        max-width: 77rem
    }
    .collection__top.--edito .collection__settings {
        padding: 0
    }
}

.collection__top.--edito .collection__filter {
    margin-left: auto
}

.collection__header {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-24)
}

@media screen and (min-width:750px) {
    .collection__header {
        align-items: flex-end;
        flex-direction: row;
        justify-content: space-between
    }
}

.collection__title {
    font-weight: 700;
    text-transform: uppercase
}

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

@media screen and (max-width:749px) {
    .collection__nav {
        margin-inline: calc(var(--page-margin) * -1);
        padding-inline: var(--page-margin)
    }
}

.collection__nav::-webkit-scrollbar {
    display: none
}

.collection__nav__list {
    display: flex;
    gap: var(--spacing-16);
    list-style: none;
    padding: 0;
    white-space: nowrap
}

@media screen and (max-width:749px) {
    .collection__nav__item:last-child {
        padding-right: var(--page-margin)
    }
}

.collection__nav__link {
    display: block;
    text-decoration: none;
    text-transform: uppercase
}

.collection__nav__link.--active {
    font-weight: 700
}

.collection__settings {
    align-items: center;
    display: flex;
    gap: var(--spacing-12);
    justify-content: space-between;
    padding-bottom: var(--spacing-24)
}

@media screen and (min-width:750px) {
    .collection__settings {
        padding-top: var(--spacing-24)
    }
}

.product-grid {
    --column-gap: var(--column-gap-mobile, var(--spacing-4));
    --row-gap: var(--row-gap-mobile, var(--spacing-16));
    column-gap: var(--column-gap);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    list-style: none;
    margin: 0;
    padding: 0;
    row-gap: var(--row-gap)
}

@media screen and (min-width:750px) {
    .product-grid {
        --column-gap: var(--column-gap-desktop, var(--spacing-4));
        --row-gap: var(--row-gap-desktop, var(--spacing-24));
        grid-template-columns: repeat(4, 1fr)
    }
}

.product-grid.--edito {
    grid-template-columns: 1fr
}

@media screen and (min-width:750px) {
    .product-grid.--edito {
        grid-template-columns: repeat(12, 1fr)
    }
}

.product-grid__item {
    --grid-columns: 1;
    grid-column: span var(--grid-columns)
}

.product-grid.--edito .product-grid__item {
    grid-column: span 1
}

@media screen and (min-width:750px) {
    .product-grid.--edito .product-grid__item:nth-child(9n+1),
    .product-grid.--edito .product-grid__item:nth-child(9n+2) {
        grid-column: span 6
    }
    .product-grid.--edito .product-grid__item:nth-child(9n+3),
    .product-grid.--edito .product-grid__item:nth-child(9n+4),
    .product-grid.--edito .product-grid__item:nth-child(9n+5) {
        grid-column: span 4
    }
    .product-grid.--edito .product-grid__item:nth-child(9n),
    .product-grid.--edito .product-grid__item:nth-child(9n+6),
    .product-grid.--edito .product-grid__item:nth-child(9n+7),
    .product-grid.--edito .product-grid__item:nth-child(9n+8) {
        grid-column: span 3
    }
}

.product-grid__pagination__nav {
    align-items: center;
    display: flex
}

.product-grid__pagination__nav>span {
    align-items: center;
    display: flex!important;
    justify-content: center;
    min-height: 2.4rem;
    min-width: 2.4rem;
    text-align: center
}

.product-grid__pagination__nav a {
    align-items: center;
    display: flex!important;
    min-height: 2.4rem;
    min-width: 2.4rem;
    justify-content: center;
    position: relative;
    text-align: center;
    text-decoration: none
}

.product-grid__pagination__nav a:before {
    background: currentColor;
    bottom: 0;
    content: "";
    display: block;
    height: 1px;
    left: 0;
    opacity: 0;
    position: absolute;
    transition: .3s ease-in-out;
    width: 0
}

.product-grid__pagination__nav .prev a,
.product-grid__pagination__nav .next a {
    background-image: url("data:image/svg+xml,%3Csvg width='6' height='12' viewBox='0 0 6 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.384169 0.320068L4.82861 5.6534L0.384168 10.9867' stroke='currentColor'/%3E%3C/svg%3E%0A");
    background-position: center;
    background-repeat: no-repeat;
    height: 1.6rem;
    font-size: 0;
    width: 1.6rem
}

.product-grid__pagination__nav .prev a {
    background-image: url("data:image/svg+xml,%3Csvg width='6' height='12' viewBox='0 0 6 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.09532 0.320068L0.650879 5.6534L5.09532 10.9867' stroke='currentColor'/%3E%3C/svg%3E%0A")
}

.collections-list {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-48)
}

.collections-list__collections {
    column-gap: var(--spacing-4);
    display: grid;
    grid-template-columns: repeat(var(--collections-list-columns-mobile), minmax(0, 1fr));
    list-style: none;
    margin: 0;
    padding: 0;
    row-gap: var(--spacing-16)
}

.collections-list__content {
    display: flex
}

.collections-list__title {
    width: 100%
}

.collections-list__title>* {
    font-family: var(--font-heading-family);
    font-size: var(--headline-font-size);
    font-weight: var(--heading-font-weight);
    letter-spacing: var(--headline-letter-spacing);
    line-height: var(--headline-line-height);
    margin: 0;
    text-transform: uppercase;
    text-wrap: pretty
}

.collections-list__title>*+* {
    margin-top: var(--spacing-12)
}

.collections-list__title a {
    color: inherit
}

.collections-list-placeholder {
    display: block
}

.collections-list-placeholder__image {
    overflow: hidden
}

.collections-list-placeholder__svg {
    aspect-ratio: 4 / 5;
    background: color-mix(in oklab, var(--color-background) 92%, var(--color-foreground));
    display: block;
    height: auto;
    width: 100%
}

.collections-list-placeholder__content {
    display: flex
}

.collections-list-placeholder__content:not(:first-child) {
    margin-top: var(--spacing-12)
}

.collections-list-placeholder__title {
    display: flex;
    font-family: var(--font-heading-family);
    font-size: var(--body-2-font-size);
    font-weight: 500;
    letter-spacing: var(--body-2-letter-spacing);
    line-height: var(--body-2-line-height);
    margin: 0;
    text-transform: uppercase
}

@media screen and (min-width:750px) {
    .collections-list__collections {
        flex: 1;
        grid-template-columns: repeat(var(--collections-list-columns-desktop), minmax(0, 1fr))
    }
}

@media screen and (min-width:1200px) {
    .collections-list {
        flex-direction: row;
        gap: var(--spacing-64)
    }
    .collections-list__content {
        flex: 0 0 44rem;
        max-width: 44rem
    }
}

@media screen and (min-width:1440px) {
    .collections-list {
        gap: var(--spacing-140)
    }
}

.contact-form-section__layout {
    display: grid;
    gap: var(--spacing-48)
}

.contact-form-section__content {
    display: grid;
    gap: var(--spacing-32);
    min-width: 0
}

.contact-form-section__intro {
    display: grid;
    gap: var(--spacing-32)
}

.contact-form-section__title {
    margin: 0;
    text-transform: uppercase
}

.contact-form-section__title>*:first-child {
    margin-block-start: 0
}

.contact-form-section__title>*:last-child {
    margin-block-end: 0
}

.contact-form-section__title:is(.contact-form-section__title--heading,
.contact-form-section__title--h1,
.contact-form-section__title--h2,
.contact-form-section__title--h3,
.contact-form-section__title--h4,
.contact-form-section__title--body-1,
.contact-form-section__title--body-2,
.contact-form-section__title--body-3) :is(h1,
h2,
h3,
h4,
h5,
h6,
p,
li,
small,
blockquote,
a,
span,
em) {
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit
}

.contact-form-section__title--heading {
    font-family: var(--font-heading-family);
    font-size: var(--headline-font-size);
    font-weight: var(--heading-font-weight);
    letter-spacing: var(--headline-letter-spacing);
    line-height: var(--headline-line-height)
}

.contact-form-section__title--h1 {
    font-family: var(--font-heading-family);
    font-size: var(--h1-font-size);
    font-weight: var(--heading-font-weight);
    letter-spacing: var(--h1-letter-spacing);
    line-height: var(--h1-line-height)
}

.contact-form-section__title--h2 {
    font-family: var(--font-heading-family);
    font-size: var(--h2-font-size);
    font-weight: var(--heading-font-weight);
    letter-spacing: var(--h2-letter-spacing);
    line-height: var(--h2-line-height)
}

.contact-form-section__title--h3 {
    font-family: var(--font-heading-family);
    font-size: var(--h3-font-size);
    font-weight: var(--heading-font-weight);
    letter-spacing: var(--h3-letter-spacing);
    line-height: var(--h3-line-height)
}

.contact-form-section__title--h4 {
    font-family: var(--font-heading-family);
    font-size: var(--h4-font-size);
    font-weight: var(--heading-font-weight);
    letter-spacing: var(--h4-letter-spacing);
    line-height: var(--h4-line-height)
}

.contact-form-section__title--body-1 {
    font-size: var(--body-1-font-size);
    letter-spacing: var(--body-1-letter-spacing);
    line-height: var(--body-1-line-height)
}

.contact-form-section__title--body-2 {
    font-size: var(--body-2-font-size);
    letter-spacing: var(--body-2-letter-spacing);
    line-height: var(--body-2-line-height)
}

.contact-form-section__title--body-3 {
    font-size: var(--body-3-font-size);
    letter-spacing: var(--body-3-letter-spacing);
    line-height: var(--body-3-line-height)
}

.contact-form-section__contact-meta {
    display: grid;
    gap: var(--spacing-8)
}

.contact-form-section__contact-item {
    display: flex;
    gap: var(--spacing-8);
    justify-content: space-between;
    margin: 0
}

.contact-form-section__contact-label {
    font-family: var(--font-heading-family);
    font-weight: 700;
    text-transform: uppercase
}

.contact-form-section__schedule {
    text-align: right
}

.contact-form-section__schedule>*:first-child,
.contact-form-section__description>*:first-child {
    margin-block-start: 0
}

.contact-form-section__schedule>*:last-child,
.contact-form-section__description>*:last-child {
    margin-block-end: 0
}

.contact-form-section__media {
    position: relative;
    aspect-ratio: var(--contact-form-image-desktop-aspect-ratio);
    min-height: 0;
    overflow: hidden
}

.contact-form-section__media-item,
.contact-form-section__media-placeholder {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    position: absolute
}

.contact-form-section__media-item--mobile {
    display: none
}

.contact-form-section__media-item--desktop {
    display: block
}

.contact-form-section__media-placeholder {
    height: 100%;
    width: 100%
}

.contact-form-section__image {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%
}

.contact-form-section__media :is(picture,
img,
video,
lazy-video,
.contact-form-section__media-placeholder,
svg) {
    height: 100%;
    width: 100%
}

.contact-form-section__image--placeholder {
    background: color-mix(in oklab, var(--color-background) 88%, var(--color-foreground))
}

.contact-form {
    width: 100%
}

.contact-form__form {
    display: flex;
    flex-direction: column
}

.contact-form__success {
    background: color-mix(in oklab, var(--color-foreground) 10%, transparent);
    border-radius: var(--style-border-radius-inputs);
    padding: var(--spacing-24);
    text-align: center
}

.contact-form__fields {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-10)
}

.contact-form__field {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-16)
}

.contact-form__submit {
    margin-block-start: var(--spacing-32)
}

@media screen and (max-width:749px) {
    .contact-form-section__media {
        aspect-ratio: var(--contact-form-image-mobile-aspect-ratio)
    }
    .contact-form-section__media-item--mobile {
        display: block
    }
    .contact-form-section__media-item--desktop {
        display: none
    }
}

@media screen and (min-width:750px) {
    .contact-form-section__layout {
        align-items: start;
        grid-template-areas: "content media";
        grid-template-columns: minmax(0, 1fr) minmax(0, 60rem)
    }
    .contact-form-section__layout[data-image-right-desktop=false] {
        grid-template-areas: "media content";
        grid-template-columns: minmax(0, 60rem) minmax(0, 1fr)
    }
    .contact-form-section__content {
        grid-area: content;
        justify-self: center;
        width: min(100%, 44rem)
    }
    .contact-form-section__contact-meta {
        gap: var(--spacing-2)
    }
    .contact-form-section__media {
        grid-area: media;
        max-width: 60rem;
        position: sticky;
        top: calc(var(--header-height, 0px) + var(--spacing-24));
        width: 100%
    }
}

.faq__component {
    display: grid;
    gap: var(--spacing-32)
}

@media screen and (min-width:750px) {
    .faq__component {
        gap: var(--spacing-64)
    }
}

.faq__title {
    font-weight: 700;
    text-transform: uppercase
}

.faq__layout {
    display: grid;
    gap: var(--spacing-32)
}

.faq__sidebar,
.faq__content,
.faq__panels,
.faq__panel {
    min-width: 0
}

.faq__categories ul {
    display: flex;
    flex-wrap: nowrap;
    gap: var(--spacing-12);
    list-style: none;
    padding: 0;
    overflow: auto;
    margin: 0;
    margin-inline: calc(var(--page-margin) * -1);
    padding-inline: var(--page-margin)
}

.faq__category-link {
    cursor: pointer;
    font-family: var(--font-heading-family);
    font-weight: 500;
    text-decoration: none
}

.faq__category-link:focus-visible {
    text-decoration: none
}

.faq__panels {
    display: block;
    gap: var(--spacing-24)
}

.faq__panel {
    display: none;
    scroll-margin-block-start: var(--spacing-32)
}

.faq__panel--active {
    display: block
}

.faq__panel:focus {
    outline: none
}

.faq__category-link--active {
    text-decoration: underline
}

.faq__text-bottom {
    margin-top: var(--spacing-32)
}

@media screen and (min-width:750px) {
    .faq__text-bottom {
        margin-top: var(--spacing-64)
    }
}

.faq__empty {
    color: color-mix(in oklab, currentColor 72%, transparent);
    font-size: var(--body-2-font-size);
    letter-spacing: var(--body-2-letter-spacing);
    line-height: var(--body-2-line-height);
    margin: 0
}

@media screen and (min-width:750px) {
    .faq__layout {
        align-items: start;
        gap: var(--spacing-32);
        grid-template-columns: minmax(0, 24rem) auto minmax(0, 1fr);
        grid-template-areas: "sidebar . content"
    }
    .faq__sidebar {
        grid-area: sidebar;
        position: sticky;
        top: var(--spacing-32)
    }
    .faq__content {
        grid-area: content
    }
    .faq__categories ul {
        align-items: stretch;
        flex-direction: column;
        flex-wrap: wrap;
        gap: var(--spacing-16);
        margin: 0;
        padding: 0
    }
}

.footer__columns {
    display: grid;
    gap: var(--spacing-48);
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: var(--spacing-48)
}

.footer-col {
    flex: var(--size-desktop);
    grid-column: span var(--size)
}

@media screen and (min-width:750px) {
    .footer__columns {
        display: flex;
        justify-content: space-between;
        gap: var(--spacing-20);
        margin-bottom: var(--spacing-120)
    }
}

@media screen and (min-width:990px) {
    .footer__columns {
        gap: var(--spacing-40)
    }
}

@media screen and (min-width:1200px) {
    .footer__columns {
        gap: var(--spacing-64)
    }
}

@media screen and (min-width:1440px) {
    .footer__columns {
        gap: var(--spacing-104)
    }
}

.footer-col__title {
    font-family: var(--font-heading-family);
    font-weight: 700;
    text-transform: uppercase
}

.footer-col__title:not(:last-child) {
    margin-bottom: var(--spacing-24)
}

.footer-col:has(.footer-col__menu) .footer-col__title:not(:last-child) {
    margin-bottom: calc(var(--spacing-24) - var(--spacing-6))
}

.footer-col__description {
    opacity: .6
}

.footer-col__description:not(:last-child) {
    margin-bottom: var(--spacing-16)
}

.footer-col__menu ul {
    display: flex;
    flex-direction: column;
    list-style: none;
    margin: 0;
    padding: 0
}

.footer-col__menu a {
    display: block;
    opacity: .6;
    padding-block: var(--spacing-6);
    text-decoration: none;
    transition: .2s ease-in-out
}

.footer-col__menu a:hover {
    opacity: 1
}

.footer-col__checkbox {
    margin-top: var(--spacing-10)
}

.footer-col__message {
    border: 1px solid var(--color-foreground);
    padding: var(--spacing-10);
    margin-top: var(--spacing-10)
}

.footer__logo a,
.footer__logo svg {
    display: block;
    text-decoration: none
}

.footer__logo svg {
    width: 100%;
    height: auto
}

.footer__bottom {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-24);
    margin-top: var(--spacing-24)
}

@media screen and (min-width:990px) {
    .footer__bottom {
        flex-direction: row;
        justify-content: space-between;
        margin-top: var(--spacing-32)
    }
}

.footer__policies {
    display: flex;
    flex-wrap: wrap;
    column-gap: var(--spacing-12);
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: center
}

.footer__policies a,
.footer__policies .footer__cookie-btn {
    display: block;
    opacity: .6;
    padding-block: var(--spacing-6);
    text-decoration: none;
    transition: .2s ease-in-out
}

.footer__policies a:hover,
.footer__cookie-btn:hover {
    opacity: 1
}

.footer__cookie-btn {
    font: inherit;
    opacity: .6;
    transition: .2s ease-in-out
}

.footer__copyright>span:first-child {
    text-transform: uppercase
}

.footer__copyright span:not(:has(span)) {
    opacity: .6
}

.footer__copyright a {
    opacity: .6;
    text-transform: uppercase;
    transition: .2s ease-in-out
}

.footer__copyright a:hover {
    opacity: 1
}

@media screen and (max-width:989px) {
    .footer__copyright {
        display: flex;
        justify-content: space-between;
        gap: var(--spacing-16)
    }
    .footer__copyright>span:nth-child(2) {
        display: none
    }
}

.gift-card {
    min-height: 100vh;
    padding-block: var(--spacing-48)
}

@media screen and (min-width:750px) {
    .gift-card {
        display: grid;
        gap: var(--spacing-16);
        grid-template-areas: ". content . media";
        grid-template-columns: auto minmax(auto, 43rem) auto 45%;
        min-height: 0
    }
}

.gift-card__media {
    display: none;
    grid-area: media
}

@media screen and (min-width:750px) {
    .gift-card__media {
        display: block
    }
}

.gift-card__content {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-24);
    grid-area: content;
    height: 100%
}

@media screen and (min-width:750px) {
    .gift-card__content {
        gap: var(--spacing-32);
        height: auto;
        padding-block: var(--spacing-16)
    }
}

.gift-card__logo {
    display: flex;
    justify-content: center
}

.gift-card__logo svg {
    display: block;
    height: auto;
    max-height: 2.7rem;
    width: auto
}

@media screen and (min-width:750px) {
    .gift-card__logo svg {
        max-height: 4rem
    }
}

.gift-card__text {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: var(--spacing-24);
    justify-content: center;
    text-align: center
}

@media screen and (min-width:750px) {
    .gift-card__text {
        gap: var(--spacing-32)
    }
}

.gift-card__title,
.gift-card__remain {
    font-weight: 700;
    text-transform: uppercase
}

.gift-card__buttons {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-16)
}

.gift-card__code {
    align-items: center;
    background: linear-gradient(0deg, #e7e7e7, #f3f3f3);
    column-gap: var(--spacing-24);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: var(--spacing-16);
    row-gap: var(--spacing-6)
}

.gift-card__code-text {
    font-family: var(--font-heading-family);
    font-weight: 500
}

.gift-card__copy:not(.success):not(.error) {
    text-decoration: underline
}

.gift-card__copy.success,
.gift-card__copy.error {
    cursor: default
}

.gift-card__buttons a {
    width: 100%
}

.gift-card__wallet {
    display: flex;
    justify-content: center
}

.gift-card__bottom {
    text-align: center
}

.grid-section-wrapper {
    overflow: hidden
}

.grid-section__title {
    font-weight: var(--heading-font-weight);
    margin-bottom: var(--spacing-16);
    text-transform: uppercase
}

@media screen and (min-width:750px) {
    .grid-section__title {
        margin-bottom: var(--spacing-24)
    }
}

.grid-section__layout {
    min-width: 0;
    position: relative
}

.grid-section__grid {
    display: grid;
    grid-template-columns: repeat(var(--grid-columns-mobile), minmax(0, 1fr));
    column-gap: var(--grid-column-gap-mobile);
    row-gap: var(--grid-row-gap-mobile)
}

.grid-section__grid>* {
    min-width: 0
}

.grid-section__slider {
    position: relative
}

.grid-section__viewport {
    overflow: hidden
}

.grid-section--overflow .grid-section__viewport {
    overflow: visible
}

.grid-section__container {
    display: flex;
    gap: var(--grid-column-gap-mobile);
    align-items: stretch
}

.grid-section__slider[loop=true] .grid-section__slide:last-child {
    margin-inline-end: var(--grid-column-gap-mobile)
}

.grid-section__slide {
    flex: 0 0 calc((100% - ((var(--grid-columns-mobile) - 1) * var(--grid-column-gap-mobile))) / var(--grid-columns-mobile));
    display: flex;
    flex-direction: column;
    min-width: 0
}

.grid-section__slide>* {
    display: flex;
    flex-direction: column;
    height: 100%
}

@media screen and (max-width:749px) {
    .grid-section__layout--slider-mobile,
    .grid-section__layout--slider-mobile .grid-section__slider {
        overflow: visible
    }
    .grid-section__layout--slider-mobile .grid-section__viewport {
        overflow: visible;
        padding-inline-start: 0;
        padding-inline-end: 0
    }
    .grid-section__layout:not(.grid-section__layout--slider-mobile) .grid-section__viewport {
        overflow: visible
    }
    .grid-section__layout:not(.grid-section__layout--slider-mobile) .grid-section__container {
        display: grid;
        grid-template-columns: repeat(var(--grid-columns-mobile), minmax(0, 1fr));
        column-gap: var(--grid-column-gap-mobile);
        row-gap: var(--grid-row-gap-mobile)
    }
    .grid-section__layout:not(.grid-section__layout--slider-mobile) .grid-section__slide {
        flex: none;
        height: 100%
    }
    .grid-section__layout:not(.grid-section__layout--slider-mobile) .grid-section__navigation {
        display: none
    }
    .grid-section__slider--peek-mobile.grid-section__slider:is(.slider-mobile-only,
    .slider-mobile-tablet,
    .slider-mobile-desktop,
    .slider-always) .grid-section__container {
        padding-inline-end: calc(var(--grid-column-gap-mobile) * 6.5)
    }
}

@media screen and (min-width:750px) {
    .grid-section--section-full-width .grid-section__viewport {
        padding-inline-start: var(--grid-column-gap-tablet);
        padding-inline-end: var(--grid-column-gap-tablet)
    }
    .shopify-section>.grid-section--section-full-width {
        grid-column: 1 / -1
    }
    .grid-section__grid {
        grid-template-columns: repeat(var(--grid-columns-tablet), minmax(0, 1fr));
        column-gap: var(--grid-column-gap-tablet);
        row-gap: var(--grid-row-gap-tablet)
    }
    .grid-section__container {
        gap: var(--grid-column-gap-tablet)
    }
    .grid-section__slider[loop=true] .grid-section__slide:last-child {
        margin-inline-end: var(--grid-column-gap-tablet)
    }
    .grid-section__slide {
        flex-basis: calc((100% - ((var(--grid-columns-tablet) - 1) * var(--grid-column-gap-tablet))) / var(--grid-columns-tablet))
    }
}

@media screen and (min-width:750px)and (max-width:989px) {
    .grid-section__layout:not(.grid-section__layout--slider-tablet) .grid-section__viewport {
        overflow: visible
    }
    .grid-section__layout:not(.grid-section__layout--slider-tablet) .grid-section__container {
        display: grid;
        grid-template-columns: repeat(var(--grid-columns-tablet), minmax(0, 1fr));
        column-gap: var(--grid-column-gap-tablet);
        row-gap: var(--grid-row-gap-tablet)
    }
    .grid-section__layout:not(.grid-section__layout--slider-tablet) .grid-section__slide {
        flex: none;
        height: 100%
    }
    .grid-section__layout:not(.grid-section__layout--slider-tablet) .grid-section__navigation {
        display: none
    }
    .grid-section__slider--peek-tablet.grid-section__slider:is(.slider-tablet-only,
    .slider-mobile-tablet,
    .slider-tablet-desktop,
    .slider-always) .grid-section__container {
        padding-inline-end: calc(var(--grid-column-gap-tablet) * 6.5)
    }
}

@media screen and (min-width:990px) {
    .grid-section--section-full-width .grid-section__viewport {
        padding-inline-start: var(--grid-column-gap-desktop);
        padding-inline-end: var(--grid-column-gap-desktop)
    }
    .grid-section__grid {
        grid-template-columns: repeat(var(--grid-columns-desktop), minmax(0, 1fr));
        column-gap: var(--grid-column-gap-desktop);
        row-gap: var(--grid-row-gap-desktop)
    }
    .grid-section__container {
        gap: var(--grid-column-gap-desktop)
    }
    .grid-section__slider[loop=true] .grid-section__slide:last-child {
        margin-inline-end: var(--grid-column-gap-desktop)
    }
    .grid-section__slide {
        flex-basis: calc((100% - ((var(--grid-columns-desktop) - 1) * var(--grid-column-gap-desktop))) / var(--grid-columns-desktop))
    }
    .grid-section__layout:not(.grid-section__layout--slider-desktop) .grid-section__viewport {
        overflow: visible
    }
    .grid-section__layout:not(.grid-section__layout--slider-desktop) .grid-section__container {
        display: grid;
        grid-template-columns: repeat(var(--grid-columns-desktop), minmax(0, 1fr));
        column-gap: var(--grid-column-gap-desktop);
        row-gap: var(--grid-row-gap-desktop)
    }
    .grid-section__layout:not(.grid-section__layout--slider-desktop) .grid-section__slide {
        flex: none;
        height: 100%
    }
    .grid-section__layout:not(.grid-section__layout--slider-desktop) .grid-section__navigation {
        display: none
    }
    .grid-section--constrained-desktop .grid-section__grid,
    .grid-section--constrained-desktop .grid-section__layout:not(.grid-section__layout--slider-desktop) .grid-section__container {
        grid-template-columns: repeat(var(--grid-columns-desktop), minmax(0, var(--grid-column-max-width-desktop)));
        justify-content: space-between;
        column-gap: 0
    }
    .grid-section--constrained-desktop .grid-section__layout--slider-desktop .grid-section__slide {
        flex-basis: min(var(--grid-column-max-width-desktop), calc((100% - ((var(--grid-columns-desktop) - 1) * var(--grid-column-gap-desktop))) / var(--grid-columns-desktop)))
    }
    .grid-section__slider--peek-desktop.grid-section__slider:is(.slider-desktop-only,
    .slider-mobile-desktop,
    .slider-tablet-desktop,
    .slider-always) .grid-section__container {
        padding-inline-end: calc(var(--grid-column-gap-desktop) * 6.5)
    }
}

.grid-section__navigation {
    position: absolute;
    inset-block-start: 50%;
    inset-inline: 0;
    transform: translateY(-50%);
    pointer-events: none
}

.grid-section__nav-button {
    position: absolute;
    inset-block-start: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 2.8rem;
    padding: 0;
    border: 1px solid var(--color-button-primary-border);
    border-radius: 10rem;
    background: var(--color-button-primary-background);
    color: var(--color-button-primary-text);
    cursor: pointer;
    pointer-events: auto;
    transform: translateY(-50%);
    transition: opacity .2s ease, background-color .2s ease
}

.grid-section__nav-button:hover:not(:disabled) {
    background: var(--color-button-primary-background-hover);
    border-color: var(--color-button-primary-border-hover);
    color: var(--color-button-primary-text-hover)
}

.grid-section__nav-button:disabled {
    border-color: rgb(var(--color-button-disabled-border-rgb) / 0);
    background: rgb(var(--color-button-disabled-background-rgb) / 1);
    color: var(--color-button-disabled-text);
    cursor: not-allowed
}

.grid-section__nav-button--prev {
    inset-inline-start: 2.5rem
}

.grid-section__nav-button--prev svg {
    transform: rotate(180deg)
}

.grid-section__nav-button--next {
    inset-inline-end: 2.5rem
}

@media(min-width:990px)and (hover:none),
(min-width:990px)and (pointer:coarse) {
    .grid-section__slider.grid-section__slider--peek-desktop .grid-section__nav-button {
        display: none
    }
}

@media(min-width:750px)and (max-width:989px)and (hover:none),
(min-width:750px)and (max-width:989px)and (pointer:coarse) {
    .grid-section__slider.grid-section__slider--peek-tablet .grid-section__nav-button {
        display: none
    }
}

@media(max-width:749px)and (hover:none),
(max-width:749px)and (pointer:coarse) {
    .grid-section__slider.grid-section__slider--peek-mobile .grid-section__nav-button {
        display: none
    }
}

@media(hover:hover)and (pointer:fine) {
    .grid-section__nav-button {
        display: flex
    }
}

.header-menu-dialog {
    display: contents
}

.header__logo-heading {
    display: contents;
    margin: 0
}

.header-menu-trigger.header-action-link {
    align-items: center;
    display: flex;
    gap: var(--spacing-12);
    padding: var(--spacing-8)
}

@media screen and (min-width:750px) {
    .header-menu-trigger.header-action-link {
        padding-inline: var(--spacing-0)
    }
}

.header-menu-trigger__icon {
    display: grid;
    gap: var(--spacing-6)
}

.header-menu-trigger__icon span {
    background: currentColor;
    display: block;
    height: 2px;
    width: 1.8rem
}

.header-menu-trigger__label {
    display: none;
    font-family: var(--font-heading-family);
    font-weight: 700;
    text-transform: uppercase
}

@media screen and (min-width:750px) {
    .header-menu-trigger__label {
        display: block
    }
}

.header-menu-dialog__drawer {
    overflow: visible
}

@media screen and (min-width:750px) {
    .header-menu-dialog__drawer {
        margin-left: 1.2rem;
        margin-right: auto
    }
    .header-menu-dialog__drawer.dialog-opening {
        animation: drawer-slide-in-left .4s cubic-bezier(.16, 1, .3, 1)
    }
    dialog.dialog-closing.header-menu-dialog__drawer {
        animation: drawer-slide-out-left .35s cubic-bezier(.7, 0, .84, 0) forwards
    }
}

.header-menu-dialog__header {
    padding-bottom: var(--spacing-0)
}

.header-menu-dialog__header-top {
    border-bottom: 1px solid var(--color-border);
    padding-bottom: var(--spacing-24)
}

.header-menu-dialog__header-close {
    align-items: center;
    display: flex;
    gap: var(--spacing-12)
}

.header-menu-dialog__header-label {
    font-family: var(--font-heading-family);
    font-size: var(--body-1-font-size);
    line-height: var(--body-1-line-height);
    text-transform: uppercase;
    letter-spacing: var(--body-1-letter-spacing);
    font-weight: 500
}

.header-menu-dialog__list {
    display: grid;
    gap: var(--spacing-16);
    list-style: none;
    padding: 0
}

.header-menu-dialog__supplementary-menu {
    border-top: 1px solid var(--color-border);
    margin-top: var(--drawer-vertical-spacing);
    padding-top: var(--drawer-vertical-spacing)
}

.header-menu-dialog__supplementary-list {
    display: grid;
    gap: var(--spacing-12);
    list-style: none;
    margin: 0;
    padding: 0
}

.header-menu-dialog__supplementary-menu--bottom .header-menu-dialog__supplementary-list {
    gap: var(--spacing-8)
}

.header-menu-dialog__supplementary-link {
    color: inherit;
    text-decoration: none
}

.header-menu-dialog__list:has(.header-menu-item[data-menu-active=true])>.header-menu-dialog__list-item {
    display: none
}

.header-menu-dialog__content:not(:has(.header-menu-item[data-menu-active=true])) {
    padding-block-start: var(--drawer-vertical-spacing)
}

.header-menu-dialog__content:has(.header-menu-item[data-menu-active=true]) {
    -webkit-mask-image: linear-gradient(transparent 0%, black 0%, black 90%, transparent 100%)!important;
    mask-image: linear-gradient(transparent 0%, black 0%, black 90%, transparent 100%)!important
}

.header-menu-dialog__list:has(.header-menu-item[data-menu-active=true])>.header-menu-dialog__list-item:has(.header-menu-item[data-menu-active=true]) {
    display: block
}

.header-menu-dialog__panel--root:has(.header-menu-item[data-menu-active=true]) .header-menu-dialog__supplementary-menu {
    display: none
}

.hero-editorial__content,
.hero-editorial__media {
    min-width: 0
}

.hero-editorial__content {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-16);
    grid-area: content;
    justify-content: center
}

.hero-editorial__surtitle:not(:last-child) {
    margin-bottom: var(--spacing-16)
}

.hero-editorial__title:not(:last-child) {
    margin-bottom: var(--spacing-24)
}

.hero-editorial__text:not(:last-child) {
    margin-bottom: var(--spacing-24)
}

.hero-editorial__buttons .section__inner {
    width: fit-content;
    flex-wrap: wrap
}

.hero-editorial__media {
    grid-area: media;
    overflow: hidden
}

@media screen and (max-width:749px) {
    .hero-editorial__layout {
        display: grid;
        gap: var(--spacing-32);
        grid-template-areas: "content" "media"
    }
    .hero-editorial__layout[data-main-media-top-mobile=true] {
        grid-template-areas: "media" "content"
    }
}

@media screen and (min-width:750px) {
    .hero-editorial__layout {
        align-items: center;
        display: grid;
        gap: var(--spacing-4);
        grid-template-areas: ". content . media";
        grid-template-columns: auto minmax(0, 40rem) auto minmax(0, 50%)
    }
    .hero-editorial__layout[data-main-media-left-desktop=true] {
        grid-template-areas: "media . content .";
        grid-template-columns: minmax(0, 50%) auto minmax(0, 40rem) auto
    }
    .hero-editorial__title:not(:last-child) {
        margin-bottom: var(--spacing-32)
    }
    .hero-editorial__text:not(:last-child) {
        margin-bottom: var(--spacing-32)
    }
}

.hero {
    width: 100%
}

.hero__panels {
    display: grid;
    gap: var(--spacing-4);
    width: 100%
}

.hero--single {
    grid-template-columns: minmax(0, 1fr)
}

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

.hero__panels>* {
    min-width: 0
}

@media screen and (max-width:749px) {
    .hero--split {
        grid-template-columns: minmax(0, 1fr)
    }
}

.page-content {
    --page-width: 1070px;
    --content-width: min(calc(var(--page-width) - (var(--page-margin) * 2)), calc(100% - (var(--page-margin) * 2)));
    --content-margin: minmax(var(--page-margin), 1fr);
    --content-grid: var(--content-margin) var(--content-width) var(--content-margin);
    position: relative;
    display: grid;
    width: 100%;
    grid-template-columns: var(--content-grid);
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing)
}

.page-content>* {
    grid-column: 2
}

.page-content h1 {
    font-weight: 700;
    margin-bottom: var(--spacing-64);
    text-transform: uppercase
}

.page-content h2,
.page-content h3,
.page-content h4 {
    font-weight: 700;
    text-transform: uppercase
}

.page-content h2 {
    font-size: var(--h3-font-size);
    line-height: var(--h3-line-height);
    letter-spacing: var(--h3-letter-spacing)
}

.page-content h2:not(:first-child) {
    margin-block-start: var(--spacing-64)
}

.page-content h3 {
    font-size: var(--h4-font-size);
    line-height: var(--h4-line-height);
    letter-spacing: var(--h4-letter-spacing)
}

.page-content h3:not(:first-child) {
    margin-block-start: var(--spacing-24)
}

.page-content h4 {
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing)
}

.page-content *:has(>table) {
    overflow: auto
}

.page-content table {
    border-spacing: 0
}

.page-content table:not(:first-child) {
    margin-block-start: var(--spacing-24)
}

.page-content table:not(:last-child) {
    margin-block-end: var(--spacing-24)
}

@media screen and (max-width:749px) {
    .page-content table th,
    .page-content table td {
        min-width: 200px
    }
}

.page-content table th,
.page-content table strong {
    font-family: var(--font-heading-family);
    font-size: var(--body-3-font-size);
    font-weight: 700;
    line-height: var(--body-3-line-height);
    letter-spacing: var(--body-3-letter-spacing);
    text-transform: uppercase
}

.page-content table th,
.page-content table td {
    padding: var(--spacing-12);
    text-align: left!important;
    vertical-align: top
}

.page-content table tr:nth-child(2n) th,
.page-content table tr:nth-child(2n) td {
    background: linear-gradient(0deg, #e7e7e7, #f3f3f3)
}

.password {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-12);
    height: 100vh;
    position: relative
}

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

.password__entry-form,
.password__entry {
    display: contents
}

.password__logo {
    align-self: center;
    color: inherit;
    display: block
}

.password__logo svg {
    display: block
}

.password__dialog-shell {
    width: min(40rem, 100vw)
}

.password__dialog-layout {
    height: 100dvh
}

.password__dialog-header-top {
    align-items: center;
    display: flex;
    gap: var(--spacing-12)
}

.password__dialog-content {
    align-content: start
}

.password__form {
    display: grid;
    gap: var(--spacing-12)
}

.password__message {
    margin: 0
}

.password__message--error {
    color: var(--color-error, #c00);
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height)
}

.password__dialog-footer {
    margin-top: auto
}

.password__content {
    align-items: center;
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: var(--spacing-12);
    justify-content: center;
    text-align: center
}

@media screen and (min-width:750px) {
    .password__content {
        gap: var(--spacing-24)
    }
}

.password__title {
    font-weight: 700;
    text-transform: uppercase
}

.password__social {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: var(--spacing-6);
    justify-content: space-between;
    list-style: none;
    margin: 0;
    padding: 0
}

@media screen and (min-width:750px) {
    .password__social {
        flex-direction: row;
        gap: var(--spacing-24)
    }
}

.password__social a {
    font-family: var(--font-heading-family);
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none
}

.private-sale-gate {
    position: relative;
    display: grid;
    grid-template: 1fr / minmax(0, 1fr);
    aspect-ratio: var(--private-sale-gate-desktop-aspect-ratio);
    min-height: 54rem;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    background: color-mix(in oklab, var(--color-background) 82%, var(--color-foreground));
    isolation: isolate
}

.private-sale-gate__media,
.private-sale-gate__overlay,
.private-sale-gate__content {
    grid-area: 1 / 1;
    min-width: 0
}

.private-sale-gate__media {
    position: relative;
    min-height: 100%
}

.private-sale-gate__media-item,
.private-sale-gate__media-placeholder {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.private-sale-gate__media-item picture,
.private-sale-gate__media-item img,
.private-sale-gate__media-placeholder {
    width: 100%;
    max-width: 100%;
    height: 100%
}

.private-sale-gate__media-item img,
.private-sale-gate__media-placeholder {
    object-fit: cover
}

.private-sale-gate__media-placeholder {
    display: grid;
    place-items: center;
    background: color-mix(in oklab, var(--color-background) 88%, var(--color-foreground))
}

.private-sale-gate__placeholder-svg {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.private-sale-gate__overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: var(--private-sale-gate-overlay-color);
    opacity: var(--private-sale-gate-overlay-opacity);
    pointer-events: none;
    z-index: 1
}

.private-sale-gate__content {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: clamp(2rem, 5vw, 5.8rem);
    min-width: 0;
    color: var(--color-foreground)
}

.private-sale-gate__content-body {
    display: grid;
    gap: var(--spacing-16);
    width: min(100%, var(--private-sale-gate-content-max-width));
    text-align: left
}

.private-sale-gate__title {
    font-family: var(--font-heading-family);
    font-size: var(--h3-font-size);
    line-height: var(--h3-line-height);
    letter-spacing: var(--h3-letter-spacing);
    font-weight: var(--heading-font-weight);
    text-transform: uppercase
}

.private-sale-gate__message {
    max-width: 42rem;
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing)
}

.private-sale-gate__countdown {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: .08em;
    font-family: var(--font-heading-family);
    font-size: clamp(4.2rem, 5vw, 6.4rem);
    line-height: .9;
    font-weight: var(--heading-font-weight);
    letter-spacing: 0;
    text-transform: uppercase
}

.private-sale-gate__countdown-days {
    display: none;
    margin-right: var(--spacing-8)
}

.private-sale-gate__countdown[data-has-days] .private-sale-gate__countdown-days {
    display: inline
}

.private-sale-gate__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--spacing-12)
}

.private-sale-gate__link {
    width: fit-content;
    color: inherit;
    border-color: currentColor
}

@media screen and (max-width:749px) {
    .private-sale-gate {
        aspect-ratio: var(--private-sale-gate-mobile-aspect-ratio);
        min-height: 62rem
    }
    .private-sale-gate__content {
        align-items: center;
        padding: var(--spacing-24)
    }
    .private-sale-gate__content-body {
        gap: var(--spacing-12)
    }
    .private-sale-gate__message {
        max-width: 28rem
    }
    .private-sale-gate__countdown {
        font-size: clamp(3.8rem, 15vw, 5.2rem)
    }
}

.product-spotlight__card {
    color: inherit;
    column-gap: var(--product-spotlight-gap);
    display: grid;
    grid-template-areas: "image-1" "meta" "image-2";
    row-gap: var(--spacing-12);
    text-decoration: none
}

.product-spotlight__card[data-has-secondary-image=false] {
    grid-template-areas: "image-1" "meta"
}

.product-spotlight__image {
    aspect-ratio: 4 / 5;
    overflow: hidden
}

.product-spotlight__image--primary {
    grid-area: image-1
}

.product-spotlight__image--secondary {
    grid-area: image-2
}

.product-spotlight__asset {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%
}

.product-spotlight__asset--placeholder {
    background: color-mix(in oklab, var(--color-background) 92%, var(--color-foreground))
}

.product-spotlight__meta {
    display: grid;
    gap: var(--spacing-8);
    grid-area: meta;
    justify-items: start
}

.product-spotlight__title {
    font-weight: 700;
    margin: 0
}

.product-spotlight__price {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing-8)
}

.product-spotlight__card:focus-visible {
    outline: var(--focus-ring);
    outline-offset: 2px
}

@media screen and (min-width:750px) {
    .product-spotlight__card {
        grid-template-areas: "image-1 image-2" "meta meta";
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr)
    }
    .product-spotlight__card[data-has-secondary-image=false] {
        grid-template-areas: "image-1" "meta";
        grid-template-columns: minmax(0, 1fr)
    }
}

.product-page__inner>* {
    flex: 1 1 0
}

@property --header-offset {
    syntax: "<length>";
    inherits: false;
    initial-value: 0px;
}

@media screen and (min-width:750px) {
    .product-details {
        --header-offset: 0px;
        position: sticky;
        top: calc(var(--sticky-top, 0px) + var(--header-offset));
        align-self: flex-start;
        transition: --header-offset var(--header-transition-duration) ease
    }
    body:has(sticky-header[data-sticky-state=visible]) .product-details {
        --header-offset: var(--header-height, 0px)
    }
    .product-page {
        padding-block-end: 0
    }
    .product-page__inner .product-media,
    .product-page__inner .product-details__inner {
        padding-block-end: var(--section-padding-block-end-desktop)
    }
}

@media screen and (max-width:749px) {
    .product-details {
        width: 100%
    }
}

.product-details__inner {
    max-width: calc(var(--product-details-max-width) + var(--product-details-inline-padding) * 2);
    width: 100%;
    min-width: min(var(--product-details-min-width), 100%);
    margin-inline: auto;
    padding-block-start: var(--spacing-48)
}

@media screen and (min-width:750px) {
    .product-details__inner {
        padding-inline: var(--product-details-inline-padding)
    }
}

@media screen and (max-width:749px) {
    .product-details__inner {
        max-width: 100%;
        width: 100%;
        padding-block: var(--spacing-32) 0
    }
}

.product-details__badges-mobile {
    display: none
}

@media screen and (max-width:749px) {
    .product-details__badges-mobile {
        display: block;
        margin-block-end: var(--spacing-12)
    }
    .product-details__badges-mobile .product-badges {
        position: static;
        align-items: flex-start;
        flex-direction: row
    }
    .product-details__badges-mobile .product-badges__badge {
        padding: 0;
        font-size: var(--body-3-font-size);
        line-height: var(--body-3-line-height);
        letter-spacing: var(--body-3-letter-spacing)
    }
}

.product-details__title>:not(:last-child) {
    margin-block-end: var(--spacing-4)
}

.product-details__price {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: var(--spacing-8);
    line-height: 1;
    text-box: trim-both cap alphabetic
}

.price {
    font-weight: 700
}

.product-details__title-row {
    display: flex;
    justify-content: space-between;
    gap: var(--spacing-16);
    align-items: flex-start
}

.product-details__inner>:not(:last-child) {
    margin-block-start: 0;
    margin-block-end: var(--spacing-48)
}

.product-details__inner>:not(:empty):has(~:last-child:empty):not(:has(~:not(:empty)~:last-child)) {
    margin-block-end: 0
}

.product-details__purchase>:not(:last-child) {
    margin-block-start: 0;
    margin-block-end: var(--spacing-32)
}

variant-picker,
product-price {
    display: block
}

.variant-picker {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-12)
}

.size-guide-drawer:not(:has(.size-guide__accordion)) {
    display: none
}

.quick-add-product {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-24)
}

.quick-add__gallery {
    display: grid;
    grid-template-columns: auto 1fr auto;
    grid-template-rows: 1fr auto;
    margin-block-end: var(--spacing-12)
}

.quick-add__gallery .media-gallery__viewport {
    grid-column: 1 / -1;
    grid-row: 1 / -1
}

.quick-add__gallery .media-gallery__nav {
    grid-row: 1 / -1;
    z-index: 1;
    align-self: stretch;
    padding-inline: var(--spacing-12)
}

.quick-add__gallery .media-gallery__nav--prev {
    grid-column: 1;
    justify-self: start
}

.quick-add__gallery .media-gallery__nav--next {
    grid-column: 3;
    justify-self: end
}

.quick-add__gallery .media-gallery__pagination {
    grid-column: 1 / -1;
    grid-row: 2
}

.quick-add__title {
    margin: 0;
    font-family: var(--font-heading-family);
    font-size: var(--body-2-font-size);
    letter-spacing: var(--body-2-letter-spacing);
    line-height: var(--body-2-line-height);
    font-weight: 700
}

.quick-add__price {
    display: block;
    margin-block-start: var(--spacing-4);
    font-size: var(--body-2-font-size);
    letter-spacing: var(--body-2-letter-spacing);
    line-height: var(--body-2-line-height)
}

.quick-add__form {
    display: block
}

.quick-add__form .variant-picker {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-12);
    margin-block-end: var(--spacing-24)
}

.quick-add__form .variant-option__radios {
    --input-min-width: 4.4rem
}

.quick-add__view-product {
    display: inline-flex;
    justify-self: baseline;
    align-self: baseline;
    align-items: center;
    gap: var(--spacing-2);
    text-decoration: none
}

.quick-add__view-product svg {
    width: 1rem;
    height: 1rem
}

.quick-add__view-product--desktop {
    display: none
}

@media screen and (min-width:750px) {
    .quick-add__view-product--desktop {
        display: inline-flex
    }
    .quick-add__view-product--mobile {
        display: none
    }
}

@media screen and (max-width:749px) {
    .quick-add__product {
        display: grid;
        gap: var(--spacing-8) var(--spacing-16);
        grid-template-columns: 9.1rem 1fr;
        grid-template-rows: auto auto 1fr;
        align-items: start;
        padding-block-end: var(--spacing-24);
        border-block-end: solid 1px var(--color-border)
    }
    .quick-add__gallery {
        margin: 0;
        grid-row: 1 / -1
    }
    .quick-add__gallery .media-gallery__nav {
        display: none
    }
    .quick-add__price {
        margin: 0
    }
}

.quote-carousel-section--with-borders {
    border-block: 1px solid currentcolor
}

.quote-carousel {
    --quote-carousel-gap-mobile: var(--spacing-24);
    --quote-carousel-gap-desktop: var(--spacing-24);
    --quote-carousel-gap: var(--quote-carousel-gap-mobile);
    --quote-carousel-distance: 0px;
    --quote-carousel-duration: 24s;
    display: block;
    max-width: 100%;
    width: 100%
}

@media screen and (min-width:750px) {
    .quote-carousel {
        --quote-carousel-gap: var(--quote-carousel-gap-desktop)
    }
}

.quote-carousel__viewport {
    -webkit-mask-image: linear-gradient(90deg, transparent, rgb(0 0 0 / 1) 8%, rgb(0 0 0 / 1) 92%, transparent);
    mask-image: linear-gradient(90deg, transparent, rgb(0 0 0 / 1) 8%, rgb(0 0 0 / 1) 92%, transparent);
    overflow: hidden;
    width: 100%
}

.quote-carousel-section.full-width .quote-carousel__viewport {
    -webkit-mask-image: none;
    mask-image: none
}

.quote-carousel__track {
    align-items: center;
    display: flex;
    gap: var(--quote-carousel-gap);
    width: max-content;
    will-change: transform
}

.quote-carousel[data-ready=true] .quote-carousel__track {
    animation: quote-carousel-scroll var(--quote-carousel-duration) linear infinite;
    animation-play-state: running
}

.quote-carousel[data-paused=true] .quote-carousel__track {
    animation-play-state: paused
}

.quote-carousel__content {
    align-items: center;
    display: flex;
    flex: 0 0 auto;
    gap: var(--quote-carousel-gap);
    min-width: max-content
}

.quote-carousel__placeholder-item {
    opacity: .72
}

.quote-carousel__placeholder-item p {
    margin: 0
}

@media(prefers-reduced-motion:reduce) {
    .quote-carousel .quote-carousel__track {
        animation: none;
        transform: none
    }
}

@keyframes quote-carousel-scroll {
    0% {
        transform: translateZ(0)
    }
    to {
        transform: translate3d(calc(-1 * var(--quote-carousel-distance)), 0, 0)
    }
}

.search-page__top {
    display: grid;
    gap: var(--spacing-24);
    margin-bottom: var(--spacing-32)
}

.search-page__header {
    display: grid;
    gap: var(--spacing-24)
}

@media screen and (min-width:750px) {
    .search-page__header {
        align-items: flex-end;
        grid-template-columns: minmax(0, 1fr) minmax(32rem, 44rem);
        gap: var(--spacing-16);
        justify-content: space-between
    }
    .search-page__top {
        margin-bottom: var(--spacing-40)
    }
}

.search-page__title {
    font-weight: 700;
    margin: 0;
    text-transform: uppercase
}

.search-page__form {
    position: relative
}

.search-page__input {
    background: transparent;
    border: 1px solid var(--color-border);
    color: inherit;
    min-width: 0;
    padding: var(--spacing-16) var(--spacing-40) var(--spacing-14) var(--spacing-16);
    width: 100%
}

.search-page__input::placeholder {
    color: color-mix(in oklab, var(--color-foreground) 55%, transparent)
}

.search-page__input:focus-visible {
    outline: var(--focus-ring);
    outline-offset: 0
}

.search-page__submit {
    position: absolute;
    right: var(--spacing-12);
    top: 50%;
    transform: translateY(-50%) translateZ(0)
}

.search-page__settings {
    align-items: center;
    display: flex;
    gap: var(--spacing-12);
    justify-content: space-between
}

.search-page__filter {
    margin-left: auto
}

.search-page__empty {
    margin: 0
}

.product-grid {
    --column-gap: var(--spacing-4);
    --row-gap: var(--spacing-16);
    column-gap: var(--column-gap);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    list-style: none;
    margin: 0;
    padding: 0;
    row-gap: var(--row-gap)
}

@media screen and (min-width:750px) {
    .product-grid {
        --row-gap: var(--spacing-24);
        grid-template-columns: repeat(4, 1fr)
    }
}

.product-grid__item {
    grid-column: span 1
}

.product-grid__pagination {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: var(--spacing-32);
    margin-top: var(--spacing-48)
}

@media screen and (min-width:750px) {
    .product-grid__pagination {
        margin-top: var(--spacing-64)
    }
}

.product-grid__pagination__nav {
    align-items: center;
    display: flex;
    gap: var(--spacing-12)
}

.product-grid__pagination__nav a {
    display: block;
    position: relative;
    text-decoration: none
}

.product-grid__pagination__nav a:before {
    background: currentColor;
    bottom: 0;
    content: "";
    display: block;
    height: 1px;
    opacity: 0;
    position: absolute;
    transition: .3s ease-in-out;
    width: 0
}

.product-grid__pagination__nav a:hover:before {
    opacity: 1;
    width: 100%
}

.product-grid__pagination__nav span {
    display: block
}

.product-grid__pagination__nav .current {
    font-weight: 700
}

.product-grid__pagination__nav .prev a,
.product-grid__pagination__nav .next a {
    background-image: url("data:image/svg+xml,%3Csvg width='6' height='12' viewBox='0 0 6 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.384169 0.320068L4.82861 5.6534L0.384168 10.9867' stroke='currentColor'/%3E%3C/svg%3E%0A");
    background-position: center;
    background-repeat: no-repeat;
    height: 1.6rem;
    font-size: 0;
    width: 1.6rem
}

.product-grid__pagination__nav .prev a {
    background-image: url("data:image/svg+xml,%3Csvg width='6' height='12' viewBox='0 0 6 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.09532 0.320068L0.650879 5.6534L5.09532 10.9867' stroke='currentColor'/%3E%3C/svg%3E%0A")
}

.product-grid__pagination__nav .prev a:before,
.product-grid__pagination__nav .next a:before {
    content: none
}

.shop-the-look__grid {
    display: grid;
    gap: var(--spacing-4);
    grid-template-areas: "media" "products" "content"
}

.shop-the-look__grid[data-products="4"],
.shop-the-look__grid[data-content-first-mobile=true] {
    grid-template-areas: "content" "media" "products"
}

@media screen and (min-width:750px) {
    .shop-the-look__grid {
        grid-template-columns: repeat(4, 1fr)
    }
    .shop-the-look__grid[data-products="0"],
    .shop-the-look__grid[data-products="1"],
    .shop-the-look__grid[data-products="2"] {
        grid-template-areas: "products products media media" "content content media media"
    }
    .shop-the-look__grid[data-products="3"] {
        grid-template-areas: none
    }
    .shop-the-look__grid[data-products="3"] .shop-the-look__content {
        grid-column: 1 / span 1;
        grid-row: 2 / span 1
    }
    .shop-the-look__grid[data-products="3"] .shop-the-look__products {
        grid-column: 1 / span 2;
        grid-row: 1 / span 2
    }
    .shop-the-look__grid[data-products="3"] .shop-the-look__products .shop-the-look__item:last-child {
        grid-column: 2
    }
    .shop-the-look__grid[data-products="3"] .shop-the-look__media {
        grid-column: 3 / span 2;
        grid-row: 1 / span 2
    }
    .shop-the-look__grid[data-products="4"],
    .shop-the-look__grid[data-content-first-desktop=true] {
        grid-template-areas: "content content content content" "products products media media"
    }
    .shop-the-look__grid[data-products="3"][data-content-first-desktop=true] .shop-the-look__content {
        grid-area: content
    }
    .shop-the-look__grid[data-products="3"][data-content-first-desktop=true] .shop-the-look__products {
        grid-area: products
    }
    .shop-the-look__grid[data-products="3"][data-content-first-desktop=true] .shop-the-look__media {
        grid-area: media
    }
    .shop-the-look__grid[data-products="3"][data-content-first-desktop=true] .shop-the-look__products .shop-the-look__item:last-child {
        grid-column: auto
    }
}

.shop-the-look__content {
    grid-area: content;
    padding-block: 0
}

@media screen and (min-width:750px) {
    .shop-the-look__content {
        padding-block: 0
    }
    .shop-the-look__grid[data-products="4"] .shop-the-look__content,
    .shop-the-look__grid[data-content-first-desktop=true] .shop-the-look__content {
        margin-bottom: var(--spacing-28)
    }
}

.shop-the-look__products {
    display: grid;
    gap: var(--spacing-4);
    grid-area: products;
    grid-template-columns: repeat(2, 1fr);
    list-style: none;
    margin: 0;
    padding: 0
}

@media screen and (max-width:749px) {
    .shop-the-look__grid[data-products="3"] .shop-the-look__products {
        grid-template-columns: repeat(3, 1fr)
    }
}

.shop-the-look__media {
    grid-area: media
}

.shop-the-look__media :is(video,
img,
svg) {
    width: 100%
}

.shop-the-look__asset {
    aspect-ratio: var(--product-image-ratio);
    display: block;
    object-fit: cover
}

.shop-the-look-placeholder-product {
    display: grid;
    gap: var(--spacing-12)
}

.shop-the-look-placeholder-product__image {
    overflow: hidden
}

.shop-the-look-placeholder-product__svg {
    aspect-ratio: 4 / 5;
    background: color-mix(in oklab, var(--color-background) 92%, var(--color-foreground));
    display: block;
    height: auto;
    width: 100%
}

.shop-the-look-placeholder-product__title {
    font-family: var(--font-heading-family);
    font-size: var(--body-2-font-size);
    font-weight: 500;
    letter-spacing: var(--body-2-letter-spacing);
    line-height: var(--body-2-line-height);
    margin: 0;
    text-transform: uppercase
}

@media screen and (min-width:750px) {
    .shop-the-look__asset {
        height: 100%
    }
}

.stores-cities__grid {
    display: grid;
    gap: var(--spacing-16);
    grid-template-columns: 1fr
}

@media screen and (min-width:750px) {
    .stores-cities__grid {
        gap: var(--spacing-4);
        grid-template-columns: repeat(2, 1fr)
    }
}

.stores-city {
    position: relative
}

.stores-city .stores-city__image--wrapper img {
    aspect-ratio: 5 / 6;
    object-fit: cover
}

.stores-city:hover .stores-city__image--wrapper:has(img):before {
    opacity: 0;
    transition: .3s ease-in-out 0s opacity
}

.stores-city:hover .stores-city__image--wrapper img {
    transform: scale(1.05) translateZ(0)
}

.stores-city__image {
    display: grid
}

.stores-city__image--wrapper {
    grid-column: 1;
    grid-row: 1;
    overflow: hidden;
    position: relative
}

.stores-city__image--wrapper:before {
    background: linear-gradient(180deg, #0000 52.54%, #000000c4);
    content: "";
    display: block;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1;
    position: absolute;
    transition: .3s ease-in-out .1s opacity;
    z-index: 1
}

.stores-city__image--wrapper img,
.stores-city__placeholder {
    aspect-ratio: 6 / 7;
    display: block;
    position: relative;
    transform: scale(1) translateZ(0);
    transition: .4s ease-in-out
}

.stores-city__title {
    align-items: flex-end;
    color: var(--color-background);
    display: flex;
    grid-column: 1;
    grid-row: 1;
    justify-content: center;
    padding-bottom: var(--spacing-32);
    padding-inline: var(--spacing-8);
    text-align: center;
    text-transform: uppercase;
    z-index: 1
}

@media screen and (min-width:750px) {
    .stores-city__title {
        padding-bottom: var(--spacing-40)
    }
}

.stores-city__link {
    text-decoration: none
}

.stores-city__link:before {
    content: "";
    display: block;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    position: absolute
}

.stores-city__stores {
    list-style: none;
    padding-block: var(--spacing-32);
    padding-left: 0
}

.stores-city__store__name {
    text-align: center;
    text-transform: uppercase
}

.stores-list__header {
    margin-bottom: var(--section-padding-block-start-mobile);
    text-align: center
}

@media screen and (min-width:750px) {
    .stores-list__header {
        margin-bottom: var(--section-padding-block-start-desktop)
    }
}

.stores-list__title {
    text-transform: uppercase
}

.stores-list__stores {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--spacing-64);
    list-style: none;
    padding: 0
}

.store {
    display: grid;
    gap: var(--spacing-32);
    grid-template-areas: "image" "content"
}

@media screen and (min-width:750px) {
    .store {
        align-items: center;
        gap: var(--spacing-4);
        grid-template-areas: "content image";
        grid-template-columns: repeat(2, 1fr)
    }
    .store:nth-child(odd) {
        grid-template-areas: "image content"
    }
}

.store__image {
    grid-area: image
}

.store__image img {
    aspect-ratio: 5 / 6;
    object-fit: cover
}

.store__content {
    grid-area: content;
    padding-inline: var(--spacing-8)
}

.store__content--inner {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-16)
}

@media screen and (min-width:750px) {
    .store__content {
        align-items: center;
        display: flex;
        justify-content: center;
        padding-inline: 0
    }
    .store__content--inner {
        max-width: 38rem
    }
}

.store__tags {
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing-4);
    list-style: none;
    padding: 0
}

.store__tag {
    border: 1px solid var(--color-foreground);
    font-family: var(--font-heading-family);
    font-weight: 700;
    padding: var(--spacing-8) var(--spacing-20);
    text-transform: uppercase
}

.store__name {
    text-transform: uppercase
}

.store__info a {
    text-decoration: none
}

.story-block__layout {
    display: grid;
    gap: var(--spacing-64);
    grid-template-areas: "content" "media"
}

.story-block__main-media {
    grid-area: media;
    overflow: hidden
}

.story-block__main-media-asset,
.story-block__main-media-placeholder {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%
}

.story-block__content {
    display: flex;
    flex-direction: column;
    justify-content: var(--section-alignment-desktop);
    gap: var(--spacing-64);
    grid-area: content
}

.story-block__media-block:empty {
    display: none
}

@media screen and (max-width:749px) {
    .story-block__layout[data-main-media-mobile-first=true] {
        grid-template-areas: "media" "content"
    }
    .story-block__layout[data-main-media-mobile-first=true] .story-block__content {
        flex-direction: column-reverse
    }
}

@media screen and (min-width:750px) {
    .story-block__layout {
        gap: var(--spacing-4);
        grid-template-areas: ". content . media";
        grid-template-columns: auto var(--story-block-content-width-desktop) auto var( --story-block-main-media-width-desktop)
    }
    .story-block__layout[data-main-media-desktop-first=true] {
        grid-template-areas: "media . content .";
        grid-template-columns: var(--story-block-main-media-width-desktop) auto var(--story-block-content-width-desktop) auto
    }
    .story-block__content {
        gap: var(--spacing-48);
        margin-block-start: var(--story-block-content-offset-desktop)
    }
    .story-block__layout[data-side-media-below-desktop=true] .story-block__media-block {
        order: 1
    }
    .story-block__layout[data-side-media-below-desktop=true] .story-block__group {
        order: 0
    }
}

.bundle-models {
    display: flex;
    flex-direction: column
}

.bundle-models__card {
    padding-block: var(--spacing-24);
    border-bottom: 1px solid var(--color-border)
}

.bundle-models__card:first-child {
    padding-block-start: 0
}

.bundle-models__card:last-child {
    border-bottom: 0
}

.bundle-models__images {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-8)
}

.bundle-models__image {
    width: 100%;
    aspect-ratio: var(--product-image-ratio);
    object-fit: cover
}

.bundle-models__info {
    margin-block-start: var(--spacing-16)
}

.bundle-models__header {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.bundle-models__name {
    font-family: var(--font-heading-family);
    font-weight: 700;
    text-transform: uppercase;
    margin: 0
}

.bundle-models__colors {
    display: flex;
    align-items: center;
    gap: var(--spacing-6)
}

.bundle-models__swatch {
    display: block;
    width: 1.6rem;
    height: 1.6rem;
    background-size: cover;
    background-position: center
}

.bundle-models__swatch--light {
    border: 1px solid var(--color-border)
}

.bundle-models__description {
    margin-block-start: var(--spacing-8);
    color: color-mix(in oklab, var(--color-foreground) 80%, transparent)
}

.faq-category {
    display: grid;
    gap: var(--spacing-24)
}

.faq-category__items {
    display: grid
}

.faq-question {
    border-block-start: 1px solid var(--color-border)
}

.faq-question:last-child {
    border-block-end: 1px solid var(--color-border)
}

.faq-question__summary {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: var(--spacing-16);
    font-family: var(--font-heading-family);
    font-weight: 500;
    justify-content: space-between;
    list-style: none;
    padding-block: var(--spacing-24);
    transition: padding .3s ease
}

.faq-question__summary::-webkit-details-marker {
    display: none
}

.faq-question__icon {
    flex-shrink: 0;
    height: 1rem;
    position: relative;
    width: 1rem
}

.faq-question__icon svg {
    display: block;
    height: 100%;
    width: 100%
}

.faq-question:not([open]) .faq-question__icon svg:first-child {
    display: none
}

.faq-question[open] .faq-question__icon svg:last-child {
    display: none
}

.faq-question[open] .faq-question__summary {
    padding-bottom: var(--spacing-12)
}

.faq-question::details-content {
    block-size: 0;
    content-visibility: hidden;
    interpolate-size: allow-keywords;
    overflow: hidden;
    transition: block-size .3s ease, content-visibility .3s ease allow-discrete
}

.faq-question[open]::details-content {
    block-size: auto;
    content-visibility: visible
}

.faq-question__answer {
    color: color-mix(in oklab, currentColor 80%, transparent);
    padding-block-end: var(--spacing-24)
}

.localization__trigger {
    display: inline-flex;
    align-items: center;
    gap: var(--spacing-8);
    color: inherit;
    cursor: pointer
}

.localization__trigger-label {
    transition: opacity .15s ease
}

.localization__trigger:hover .localization__trigger-label,
.localization__trigger:focus-visible .localization__trigger-label {
    text-decoration: underline;
    text-underline-offset: .3em;
    text-decoration-thickness: 1px
}

.localization__trigger-flag {
    font-size: 2rem;
    line-height: 1
}

.localization__dialog {
    width: min(72rem, calc(100vw - 3.2rem));
    max-width: 72rem;
    height: auto;
    max-height: min(72rem, calc(100dvh - 4.8rem));
    margin: auto;
    padding: 0;
    overflow: hidden;
    background: var(--color-background);
    color: var(--color-foreground)
}

.localization__dialog.dialog-opening {
    animation: localization-dialog-in .38s cubic-bezier(.16, 1, .3, 1)
}

.localization__dialog.dialog-closing {
    animation: localization-dialog-out .22s ease-in forwards
}

@keyframes localization-dialog-in {
    0% {
        opacity: 0;
        translate: 0 12px;
        scale: .985
    }
    to {
        opacity: 1;
        translate: 0 0;
        scale: 1
    }
}

@keyframes localization-dialog-out {
    0% {
        opacity: 1;
        translate: 0 0;
        scale: 1
    }
    to {
        opacity: 0;
        translate: 0 8px;
        scale: .985
    }
}

@media(prefers-reduced-motion:reduce) {
    .localization__dialog.dialog-opening,
    .localization__dialog.dialog-closing {
        animation: none
    }
}

.localization__dialog form {
    height: 100%;
    display: block
}

.localization__layout {
    display: grid;
    grid-template-rows: auto 1fr auto;
    height: 100%;
    max-height: min(72rem, calc(100dvh - 4.8rem))
}

.localization__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing-20);
    padding: var(--spacing-20) var(--spacing-24)
}

.localization__title {
    margin: 0;
    font-family: var(--font-heading-family);
    font-size: clamp(1.8rem, 1.5rem + .6vw, 2.2rem);
    line-height: 1.2;
    letter-spacing: -.01em;
    font-weight: 400
}

.localization__close {
    margin-inline-start: auto;
    flex-shrink: 0
}

.localization__columns {
    display: grid;
    grid-template-columns: 1fr;
    overflow: hidden;
    border-block-start: 1px solid var(--color-border)
}

@media(min-width:750px) {
    .localization__columns {
        grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr)
    }
}

.localization__column {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    min-height: 0
}

.localization__column--countries {
    border-block-end: 1px solid var(--color-border)
}

@media(min-width:750px) {
    .localization__column--countries {
        border-block-end: 0;
        border-inline-end: 1px solid var(--color-border)
    }
}

.localization__search {
    position: relative;
    padding: var(--spacing-20) var(--spacing-24) var(--spacing-16);
    background: var(--color-background);
    flex-shrink: 0
}

.localization__search-icon {
    position: absolute;
    inset-inline-start: var(--spacing-24);
    top: 50%;
    transform: translateY(-50%);
    width: 1.6rem;
    height: 1.6rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    opacity: .6
}

.localization__search-icon svg {
    width: 100%;
    height: 100%
}

.localization__search-input {
    width: 100%;
    padding: var(--spacing-12) var(--spacing-12) var(--spacing-12) calc(var(--spacing-16) + 1.6rem + var(--spacing-8));
    border: 0;
    border-block-end: 1px solid var(--color-border);
    background: transparent;
    color: inherit;
    font: inherit;
    font-size: var(--body-1-font-size);
    line-height: var(--body-1-line-height);
    transition: border-color .2s ease
}

.localization__search-input:focus {
    outline: none;
    border-block-end-color: var(--color-foreground)
}

.localization__search-input::placeholder {
    color: color-mix(in oklab, var(--color-foreground) 45%, transparent)
}

.localization__list {
    list-style: none;
    padding: 0 0 var(--spacing-16);
    margin: 0;
    overflow-y: auto;
    flex: 1;
    min-height: 0;
    scrollbar-width: thin
}

.localization__group-header {
    position: sticky;
    top: 0;
    z-index: 1;
    list-style: none;
    background: color-mix(in oklab, var(--color-background) 92%, transparent);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px)
}

.localization__group-header+.localization__group-header {
    margin-block-start: 0
}

.localization__list>.localization__group-header:not(:first-child) {
    margin-block-start: var(--spacing-12)
}

.localization__group-label {
    margin: 0;
    padding: var(--spacing-8) var(--spacing-24);
    text-transform: uppercase;
    letter-spacing: .16em;
    opacity: .55
}

.localization__option {
    position: relative;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: var(--spacing-16);
    width: 100%;
    padding: var(--spacing-14) var(--spacing-24);
    color: inherit;
    text-align: start;
    transition: background-color .15s ease, padding-inline-start .2s ease;
    cursor: pointer
}

.localization__option:before {
    content: "";
    position: absolute;
    inset-block: var(--spacing-8);
    inset-inline-start: 0;
    width: 2px;
    background: var(--color-foreground);
    transform: scaleY(0);
    transform-origin: center;
    transition: transform .2s ease
}

.localization__option:hover {
    background-color: color-mix(in oklab, var(--color-foreground) 4%, transparent)
}

.localization__option:focus-visible {
    outline: 1px solid var(--color-foreground);
    outline-offset: -1px
}

.localization__option--active {
    font-weight: 500
}

.localization__option--active:before {
    transform: scaleY(1)
}

.localization__flag {
    font-size: 2rem;
    line-height: 1;
    flex-shrink: 0
}

.localization__option-label {
    font-size: var(--body-1-font-size);
    line-height: var(--body-1-line-height);
    letter-spacing: var(--body-1-letter-spacing)
}

.localization__option-currency {
    opacity: .55;
    flex-shrink: 0;
    text-transform: uppercase;
    letter-spacing: .08em
}

.localization__no-results {
    padding: var(--spacing-24);
    opacity: .6
}

.localization__list[hidden] {
    display: none
}

.localization__column--languages {
    padding: var(--spacing-20) var(--spacing-24) var(--spacing-24);
    gap: var(--spacing-24);
    overflow-y: auto
}

.localization__selected {
    display: grid;
    gap: var(--spacing-8);
    padding: var(--spacing-14) var(--spacing-16);
    border: 1px solid var(--color-border);
    background: color-mix(in oklab, var(--color-foreground) 2.5%, transparent)
}

.localization__selected-label,
.localization__field-label {
    margin: 0;
    font-size: 1.05rem;
    text-transform: uppercase;
    letter-spacing: .14em;
    opacity: .55
}

.localization__selected-country {
    display: flex;
    align-items: center;
    gap: var(--spacing-10);
    margin: 0;
    font-size: var(--body-1-font-size);
    line-height: var(--body-1-line-height)
}

.localization__selected-flag {
    font-size: 1.8rem;
    line-height: 1;
    flex-shrink: 0
}

.localization__selected-name {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.localization__selected-currency {
    opacity: .6;
    text-transform: uppercase;
    letter-spacing: .08em;
    flex-shrink: 0
}

.localization__languages {
    display: grid;
    gap: var(--spacing-10)
}

.localization__lang-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 0;
    border: 1px solid var(--color-border)
}

.localization__lang-list>li+li {
    border-block-start: 1px solid var(--color-border)
}

.localization__lang-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing-12);
    width: 100%;
    padding: var(--spacing-12) var(--spacing-16);
    color: inherit;
    background: transparent;
    text-align: start;
    cursor: pointer;
    transition: background-color .15s ease, color .15s ease
}

.localization__lang-option,
.localization__lang-option * {
    cursor: pointer
}

.localization__lang-option:hover {
    background-color: color-mix(in oklab, var(--color-foreground) 4%, transparent)
}

.localization__lang-option:focus-visible {
    outline: 1px solid var(--color-foreground);
    outline-offset: -1px
}

.localization__lang-name {
    font-size: var(--body-1-font-size);
    line-height: var(--body-1-line-height);
    text-transform: capitalize
}

.localization__lang-check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.6rem;
    height: 1.6rem;
    opacity: 0;
    transition: opacity .15s ease
}

.localization__lang-option--active {
    font-weight: 500;
    background-color: color-mix(in oklab, var(--color-foreground) 5%, transparent)
}

.localization__lang-option--active .localization__lang-check {
    opacity: 1
}

.localization__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing-16);
    padding: var(--spacing-20) var(--spacing-24);
    border-block-start: 1px solid var(--color-border);
    background: var(--color-background)
}

.localization__cancel {
    color: inherit;
    opacity: .7;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: .3em;
    text-decoration-thickness: 1px;
    transition: opacity .15s ease
}

.localization__cancel:hover {
    opacity: 1
}

.localization__save {
    min-width: 16rem
}

@media(max-width:749px) {
    .localization__dialog {
        width: calc(100vw - 1.6rem);
        max-width: calc(100vw - 1.6rem);
        max-height: calc(100dvh - 3.2rem)
    }
    .localization__layout {
        max-height: calc(100dvh - 3.2rem)
    }
    .localization__header {
        padding: var(--spacing-20) var(--spacing-16) var(--spacing-16)
    }
    .localization__search {
        padding: var(--spacing-16) var(--spacing-16) var(--spacing-12)
    }
    .localization__search-icon {
        inset-inline-start: var(--spacing-16)
    }
    .localization__group-label,
    .localization__option,
    .localization__no-results {
        padding-inline: var(--spacing-16)
    }
    .localization__column--countries {
        max-height: 48dvh
    }
    .localization__column--languages {
        padding: var(--spacing-16);
        gap: var(--spacing-16)
    }
    .localization__footer {
        padding: var(--spacing-16);
        padding-block-end: max(var(--spacing-16), env(safe-area-inset-bottom))
    }
    .localization__save {
        flex: 1;
        min-width: 0
    }
}

.hero-panel {
    position: relative;
    display: grid;
    grid-template: 1fr / 1fr;
    aspect-ratio: var(--hero-panel-desktop-aspect-ratio);
    min-height: 0;
    overflow: hidden;
    background: color-mix(in oklab, var(--color-background) 82%, var(--color-foreground));
    isolation: isolate
}

.hero-panel--linked {
    color: inherit;
    text-decoration: none
}

.hero-panel__media,
.hero-panel__overlay,
.hero-panel__content {
    grid-area: 1 / 1
}

.hero-panel__media {
    position: relative;
    min-height: 100%
}

.hero-panel__media-item,
.hero-panel__media-placeholder {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.hero-panel__media-item--mobile {
    display: none
}

.hero-panel__media-item--desktop {
    display: block
}

.hero-panel__media-item picture,
.hero-panel__media-item img,
.hero-panel__media-item video,
.hero-panel__media-placeholder {
    width: 100%;
    height: 100%
}

.hero-panel__media-item img,
.hero-panel__media-item video,
.hero-panel__media-placeholder {
    object-fit: cover
}

.hero-panel__media-placeholder {
    display: grid;
    place-items: center;
    background: color-mix(in oklab, var(--color-background) 88%, var(--color-foreground))
}

.hero-panel__placeholder-svg {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.hero-panel__overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #1212128c !important;
    pointer-events: none;
    z-index: 1
}

.hero-panel__content {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: var(--hero-panel-content-vertical);
    justify-content: var(--hero-panel-content-horizontal);
    padding: clamp(2rem, 4vw, 4.8rem);
    min-width: 0
}

.hero-panel__content-body {
    display: grid;
    gap: var(--hero-panel-content-gap);
    width: min(100%, var(--hero-panel-content-max-width));
    text-align: var(--hero-panel-text-alignment)
}

.hero-panel__content-body>* {
    min-width: 0
}

.hero-panel__content-body--horizontal {
    display: flex;
    flex-wrap: wrap;
    align-items: var(--hero-panel-content-vertical);
    justify-content: var(--hero-panel-content-horizontal);
    width: 100%;
    max-width: none
}

@media screen and (max-width:749px) {
    .hero-panel {
        aspect-ratio: var(--hero-panel-mobile-aspect-ratio);
        min-height: 0
    }
    .hero-panel__content {
        align-items: var(--hero-panel-mobile-content-vertical);
        justify-content: var(--hero-panel-mobile-content-horizontal)
    }
    .hero-panel__media-item--mobile {
        display: block
    }
    .hero-panel__media-item--desktop {
        display: none
    }
    .hero-panel__content-body--horizontal {
        display: grid;
        width: min(100%, var(--hero-panel-content-max-width))
    }
    .hero-panel__content-body {
        text-align: var(--hero-panel-mobile-text-alignment)
    }
    .hero-panel--mobile-fill-content .hero-panel__content {
        align-items: stretch;
        justify-content: var(--hero-panel-mobile-content-horizontal)
    }
    .hero-panel--mobile-fill-content .hero-panel__content-body {
        display: flex;
        flex-direction: column;
        align-items: var(--hero-panel-mobile-content-items-horizontal);
        justify-content: space-between;
        min-height: 100%;
        width: 100%;
        max-width: none
    }
}

.header-menu-pad {
    aspect-ratio: 1 / 1;
    color: inherit;
    display: grid;
    gap: var(--spacing-12);
    height: 100%;
    position: relative;
    text-decoration: none
}

@media screen and (min-width:750px) {
    .header-menu-pad {
        background: var(--color-background);
        padding: var(--spacing-2)
    }
    .header-menu-item__pads:has(.header-menu-pad:nth-child(3)) .header-menu-pad {
        width: 100%
    }
    .header-menu-pad:nth-child(1),
    .header-menu-pad:nth-child(2) {
        transform: translate(-100%) translateZ(0);
        transition: transform .3s ease-out;
        z-index: 2
    }
    .header-menu-pad:nth-child(3),
    .header-menu-pad:nth-child(4) {
        transform: translate(-200%) translateZ(0);
        transition: transform .6s ease-out;
        z-index: 1
    }
    .header-menu-item__pads:not(.is-menu-open) .header-menu-pad:nth-child(1),
    .header-menu-item__pads:not(.is-menu-open) .header-menu-pad:nth-child(2) {
        transition: transform .2s ease-in .2s
    }
    .header-menu-item__pads:not(.is-menu-open) .header-menu-pad:nth-child(3),
    .header-menu-item__pads:not(.is-menu-open) .header-menu-pad:nth-child(4) {
        transition: transform .4s ease-in
    }
    .header-menu-item__pads.is-menu-open .header-menu-pad {
        transform: translate(0) translateZ(0)
    }
    .header-menu-pad:nth-child(1) {
        padding-left: var(--spacing-4);
        padding-top: var(--spacing-4)
    }
    .header-menu-pad:nth-child(1):nth-last-child(2) {
        padding-right: var(--spacing-4)
    }
    .header-menu-pad:nth-child(1):nth-last-child(1) {
        padding-bottom: var(--spacing-4)
    }
    .header-menu-pad:nth-child(2) {
        padding-left: var(--spacing-4);
        padding-bottom: var(--spacing-4)
    }
    .header-menu-pad:nth-child(2):nth-last-child(1) {
        padding-right: var(--spacing-4)
    }
    .header-menu-pad:nth-child(1):nth-last-child(1),
    .header-menu-pad:nth-child(3):nth-last-child(1) {
        aspect-ratio: 1 / 2;
        grid-row: span 2;
        padding-bottom: var(--spacing-4);
        padding-right: var(--spacing-4);
        padding-top: var(--spacing-4)
    }
    .header-menu-pad:nth-child(3):nth-last-child(2) {
        padding-right: var(--spacing-4);
        padding-top: var(--spacing-4)
    }
    .header-menu-pad:nth-child(4) {
        padding-bottom: var(--spacing-4);
        padding-right: var(--spacing-4)
    }
}

.header-menu-pad__media {
    height: 100%;
    overflow: hidden;
    width: 100%
}

.header-menu-pad__asset {
    height: 100%;
    display: block;
    object-fit: cover;
    width: 100%
}

.header-menu-pad__asset--video {
    object-fit: cover
}

.header-menu-pad__title {
    background: var(--color-background);
    bottom: 1.2rem;
    font-family: var(--font-heading-family);
    font-weight: 700;
    left: 1.2rem;
    margin: 0;
    padding-block: var(--spacing-8);
    padding-inline: var(--spacing-12);
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    max-width: calc(100% - 2.4rem)
}

.header-menu-pad--placeholder {
    min-height: 8rem;
    align-content: end
}

.header-menu-item {
    color: var(--header-menu-item-color, currentColor)
}

.header-menu-item__trigger,
.header-menu-item__link {
    align-items: center;
    color: inherit;
    display: flex;
    justify-content: space-between;
    gap: var(--spacing-16);
    text-align: start;
    text-decoration: none;
    width: 100%
}

.header-menu-item__label {
    font-family: var(--font-heading-family)
}

.header-menu-item__label,
.header-menu-dialog__supplementary-link,
.header-menu-item__submenu-link,
.header-menu-item__submenu-secondary-link,
.header-menu-item__back-label {
    position: relative
}

.header-menu-item__label:before,
.header-menu-dialog__supplementary-link:before,
.header-menu-item__submenu-link:before,
.header-menu-item__submenu-secondary-link:before,
.header-menu-item__back-label:before {
    background: currentColor;
    bottom: 0;
    content: "";
    display: block;
    height: 1px;
    opacity: 0;
    position: absolute;
    transition: .3s ease-in-out;
    width: 0
}

.header-menu-item__label:hover:before,
.header-menu-dialog__supplementary-link:hover:before,
.header-menu-item__submenu-link:hover:before,
.header-menu-item__submenu-secondary-link:hover:before,
.header-menu-item__back-label:hover:before {
    opacity: 1;
    width: 100%
}

.header-menu-item[data-menu-active=true] .header-menu-item__trigger {
    display: none
}

.header-menu-item__submenu {
    display: grid
}

.header-menu-item__submenu[hidden] {
    display: none
}

.header-menu-item[data-menu-active=true] .header-menu-item__submenu {
    animation: header-menu-panel-in .22s ease-out both
}

.header-menu-item__back {
    align-items: center;
    background: var(--color-background);
    border-bottom: 1px solid var(--color-border);
    color: inherit;
    display: flex;
    gap: var(--spacing-10);
    margin-bottom: var(--drawer-vertical-spacing);
    padding-block: var(--drawer-vertical-spacing);
    position: sticky;
    top: 0;
    z-index: 1
}

.header-menu-item__back-icon {
    rotate: 180deg
}

.header-menu-item__submenu-list {
    display: grid;
    gap: var(--spacing-12);
    list-style: none;
    margin: 0;
    padding: 0
}

.header-menu-item__submenu-link {
    color: inherit;
    text-decoration: none
}

.header-menu-item__submenu-secondary {
    border-top: 1px solid var(--color-border);
    display: grid;
    gap: var(--spacing-16);
    margin-top: var(--drawer-vertical-spacing);
    padding-top: var(--drawer-vertical-spacing)
}

.header-menu-item__submenu-secondary-title {
    font-family: var(--font-heading-family);
    font-weight: 500
}

.header-menu-item__submenu-secondary-list {
    display: grid;
    gap: var(--spacing-8);
    list-style: none;
    margin: 0;
    padding: 0
}

.header-menu-item__submenu-secondary-link {
    color: inherit;
    text-decoration: none
}

@media screen and (max-width:749px) {
    .header-menu-item__pads.--desktop {
        display: none
    }
    .header-menu-item__pads {
        display: grid;
        gap: var(--spacing-4);
        grid-template-columns: 1fr 1fr;
        margin-top: var(--drawer-vertical-spacing)
    }
}

@media screen and (min-width:750px) {
    .header-menu-item__pads {
        display: grid;
        grid-auto-flow: column;
        grid-template-columns: 50% 50%;
        grid-template-rows: 50% 50%;
        height: 100%;
        left: 100%;
        overflow: hidden;
        position: absolute;
        max-width: calc(100vw - 43.2rem);
        top: 0
    }
    .header-menu-item__pads:not(.is-menu-open) {
        pointer-events: none;
        visibility: hidden;
        transition: pointer-events 0s linear .6s, visibility 0s linear .6s
    }
    .header-menu-item__pads.--mobile {
        display: none
    }
}

@media(prefers-reduced-motion:reduce) {
    .header-menu-item[data-menu-active=true] .header-menu-item__submenu {
        animation: none
    }
}

@keyframes header-menu-panel-in {
    0% {
        opacity: 0;
        translate: 0 .75rem
    }
    to {
        opacity: 1;
        translate: 0 0
    }
}

.header-menu-item__placeholder {
    display: inline-flex;
    min-height: 3.5rem;
    align-items: center;
    color: color-mix(in oklab, currentColor 70%, transparent)
}

.product-notice__item {
    margin: 0;
    color: var(--product-notice-color, currentColor);
    font-weight: var(--product-notice-font-weight, 400);
    font-style: var(--product-notice-font-style, normal)
}

.product-notice__item+.product-notice__item {
    margin-block-start: var(--spacing-4)
}

.product-list__title {
    margin: 0 0 var(--spacing-12);
    font-family: var(--font-heading-family);
    font-weight: 500
}

.product-list__item--bundle {
    grid-column: 1 / -1
}

.dialog-shell--drawer:has(.size-guide) {
    width: min(52.5rem, 100vw)
}

.size-guide {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-32)
}

.size-guide__description {
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing);
    color: color-mix(in oklab, currentColor 80%, transparent)
}

.size-guide__international-link {
    display: inline-block;
    text-decoration: underline;
    text-underline-offset: 3px
}

.size-guide__accordion {
    border-block-start: 1px solid var(--color-border)
}

.size-guide__accordion-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-block: var(--spacing-24);
    cursor: pointer;
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing);
    font-weight: 500;
    list-style: none
}

.size-guide__accordion-trigger::-webkit-details-marker {
    display: none
}

.size-guide__accordion-icon {
    position: relative;
    width: 12px;
    height: 12px;
    flex-shrink: 0
}

.size-guide__accordion-icon:before,
.size-guide__accordion-icon:after {
    content: "";
    position: absolute;
    background-color: currentColor;
    transition: transform .2s ease
}

.size-guide__accordion-icon:before {
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    transform: translateY(-50%)
}

.size-guide__accordion-icon:after {
    top: 0;
    left: 50%;
    width: 1px;
    height: 100%;
    transform: translate(-50%)
}

.size-guide__accordion[open] .size-guide__accordion-icon:after {
    transform: translate(-50%) rotate(90deg)
}

.size-guide__accordion::details-content {
    interpolate-size: allow-keywords;
    block-size: 0;
    overflow: hidden;
    transition: block-size .3s ease, content-visibility .3s ease allow-discrete;
    content-visibility: hidden
}

.size-guide__accordion[open]::details-content {
    block-size: auto;
    content-visibility: visible
}

.size-guide__accordion-content {
    padding-block-end: var(--spacing-24)
}

.size-guide__accordion-content--measurements {
    display: flex;
    gap: var(--spacing-32)
}

@media screen and (max-width:749px) {
    .size-guide__accordion-content--measurements {
        flex-direction: column
    }
}

.size-guide__accordion-content--measurements>* {
    flex: 1 1 0
}

.size-guide__toggle {
    display: inline-flex;
    border: 1px solid var(--color-border);
    background: linear-gradient(0deg, #e7e7e7, #f3f3f3);
    margin-block-end: var(--spacing-16)
}

.size-guide__toggle>span {
    min-height: 3rem;
    height: 100%;
    width: 1px;
    background-color: var(--color-border)
}

.size-guide__toggle-button {
    padding: var(--spacing-8) var(--spacing-16);
    border: none;
    background: transparent;
    font-size: var(--body-3-font-size);
    line-height: var(--body-3-line-height);
    letter-spacing: var(--body-3-letter-spacing);
    font-weight: 700;
    cursor: pointer;
    transition: background-color .2s ease, box-shadow .2s ease;
    min-height: 3rem;
    text-box: trim-both cap alphabetic
}

.size-guide__toggle-button:not(.size-guide__toggle-button--active):hover {
    background-color: color-mix(in oklab, #fff 40%, transparent)
}

.size-guide__toggle-button--active {
    background-color: #fff;
    box-shadow: inset 0 0 0 1px var(--color-border)
}

.size-guide__table {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--body-3-font-size);
    line-height: var(--body-3-line-height);
    letter-spacing: var(--body-3-letter-spacing);
    text-align: left
}

.size-guide__table th {
    padding: var(--spacing-8) var(--spacing-12);
    font-family: var(--heading-font-family);
    font-weight: 700;
    text-transform: uppercase;
    white-space: nowrap
}

.size-guide__table td {
    padding: var(--spacing-12)
}

.size-guide__table td:first-child {
    font-weight: 500
}

.size-guide__table tbody tr:nth-child(odd) {
    background: linear-gradient(0deg, #e7e7e7, #f3f3f3)
}

.size-guide__measurements-image {
    text-align: center
}

.size-guide__measurements-image img {
    max-width: 100%;
    height: auto
}

.size-guide__measurements-list {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-12);
    margin: 0
}

.size-guide__measurement {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-2)
}

.size-guide__measurement-label {
    font-weight: 500;
    font-size: var(--body-3-font-size);
    line-height: var(--body-3-line-height);
    letter-spacing: var(--body-3-letter-spacing);
    font-weight: 700
}

.size-guide__measurement-description {
    font-size: var(--body-3-font-size);
    line-height: var(--body-3-line-height);
    letter-spacing: var(--body-3-letter-spacing);
    margin: 0
}

.size-guide__help {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing-16);
    padding: var(--spacing-24);
    background: linear-gradient(0deg, #e7e7e7, #f3f3f3)
}

.size-guide__help-content {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-4)
}

.size-guide__help-title {
    font-weight: 500;
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing);
    font-weight: 700;
    margin: 0
}

.size-guide__help-description {
    font-size: var(--body-3-font-size);
    line-height: var(--body-3-line-height);
    letter-spacing: var(--body-3-letter-spacing);
    margin: 0
}

.size-guide__help-button,
.size-guide__kleep-button {
    flex-shrink: 0
}

.breadcrumbs__list {
    align-items: center;
    display: flex;
    gap: var(--spacing-20);
    list-style: none;
    margin: 0;
    padding: 0
}

.breadcrumbs__item {
    position: relative
}

.breadcrumbs__item:not(:last-child):after {
    content: "/";
    position: absolute;
    right: -12px;
    top: 50%;
    transform: translateY(-50%) translateZ(0);
    color: var(--color-foreground)
}

.breadcrumbs__link {
    display: block;
    text-decoration: none
}

.breadcrumbs__link:before {
    background: var(--color-foreground);
    bottom: 0;
    content: "";
    display: block;
    height: 1px;
    left: 0;
    opacity: 0;
    position: absolute;
    transition: .3s ease-in-out;
    width: 0
}

.breadcrumbs__link:hover:before {
    opacity: 1;
    width: 100%
}

.drawer-trigger__button {
    display: inline-flex;
    align-items: center;
    gap: var(--spacing-4);
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing);
    color: inherit;
    background-image: linear-gradient(currentColor, currentColor);
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: 0% 1px;
    transition: background-size .3s ease-in-out
}

.drawer-trigger__button:hover {
    background-size: 100% 1px
}

.drawer-trigger__chevron {
    flex-shrink: 0
}

.icon-block {
    display: inline-flex;
    align-items: center;
    height: var(--icon-block-height-mobile)
}

.icon-block__image,
.icon-block__placeholder-svg {
    display: block;
    height: 100%;
    width: auto
}

.icon-block__placeholder {
    display: block;
    height: 100%;
    aspect-ratio: 5 / 1;
    background: color-mix(in oklab, var(--color-background) 88%, var(--color-foreground))
}

.icon-block__placeholder-svg {
    aspect-ratio: 5 / 1
}

@media screen and (min-width:750px) {
    .icon-block {
        height: var(--icon-block-height-desktop)
    }
}

.media-block {
    position: relative;
    aspect-ratio: var(--media-block-desktop-aspect-ratio);
    min-height: 0;
    overflow: hidden;
    background: color-mix(in oklab, var(--color-background) 88%, var(--color-foreground))
}

.media-block__item,
.media-block__placeholder {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.media-block__item--mobile {
    display: none
}

.media-block__item--desktop {
    display: block
}

.media-block__item picture,
.media-block__item img,
.media-block__item video,
.media-block__item lazy-video,
.media-block__placeholder,
.media-block__placeholder-svg {
    width: 100%;
    height: 100%
}

.media-block__item img,
.media-block__item video,
.media-block__item lazy-video,
.media-block__placeholder {
    object-fit: cover
}

.media-block__placeholder {
    background: linear-gradient(135deg, rgb(255 255 255 / .06), transparent), color-mix(in oklab, var(--color-background) 88%, var(--color-foreground))
}

@media screen and (max-width:749px) {
    .media-block {
        aspect-ratio: var(--media-block-mobile-aspect-ratio)
    }
    .media-block__item--mobile {
        display: block
    }
    .media-block__item--desktop {
        display: none
    }
}

.pad-block {
    align-items: flex-start;
    color: inherit;
    display: flex;
    flex-direction: column;
    gap: var(--spacing-12)
}

.pad-block--linked {
    text-decoration: none
}

.pad-block__media-wrapper {
    aspect-ratio: 4 / 5;
    background: color-mix(in oklab, var(--color-foreground) 4%, var(--color-background));
    overflow: hidden;
    width: 100%
}

.pad-block__media {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%
}

.pad-block__media--placeholder {
    background: color-mix(in oklab, var(--color-foreground) 4%, var(--color-background));
    display: grid;
    place-items: center
}

.pad-block__placeholder-svg {
    color: color-mix(in oklab, var(--color-foreground) 18%, var(--color-background));
    height: 100%;
    width: 100%
}

.pad-block__title {
    font-family: var(--font-heading-family);
    font-weight: 500
}

.pad-block--linked .pad-block__title {
    position: relative
}

.pad-block--linked .pad-block__title:before {
    background: currentColor;
    bottom: 0;
    content: "";
    display: block;
    height: 1px;
    left: 0;
    opacity: 0;
    position: absolute;
    transition: all .5s ease-in-out;
    width: 0
}

.pad-block--linked:hover .pad-block__title:before {
    opacity: 1;
    width: 100%
}

product-info-drawer {
    display: block
}

.product-info-drawer__triggers {
    display: flex;
    flex-direction: column
}

.product-info-drawer__trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-block: var(--spacing-16);
    border-block-start: 1px solid var(--color-border);
    font-family: var(--font-heading-family);
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing);
    font-weight: 500;
    color: inherit;
    cursor: pointer
}

.product-info-drawer__trigger:last-child {
    border-block-end: 1px solid var(--color-border)
}

.product-info-drawer__chevron {
    flex-shrink: 0;
    transition: transform .2s ease
}

.product-info-drawer__trigger:hover .product-info-drawer__chevron {
    transform: translate(-3px)
}

.product-info-drawer__accordion {
    border-block-start: 1px solid var(--color-border)
}

.product-info-drawer__accordion-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-block: var(--spacing-24);
    cursor: pointer;
    font-family: var(--font-heading-family);
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing);
    font-weight: 500;
    list-style: none
}

.product-info-drawer__accordion-trigger::-webkit-details-marker {
    display: none
}

.product-info-drawer__accordion-trigger h2 {
    font-weight: inherit
}

.product-info-drawer__accordion-icon {
    position: relative;
    width: 12px;
    height: 12px;
    flex-shrink: 0
}

.product-info-drawer__accordion-icon:before,
.product-info-drawer__accordion-icon:after {
    content: "";
    position: absolute;
    background-color: currentColor;
    transition: transform .2s ease
}

.product-info-drawer__accordion-icon:before {
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    transform: translateY(-50%)
}

.product-info-drawer__accordion-icon:after {
    top: 0;
    left: 50%;
    width: 1px;
    height: 100%;
    transform: translate(-50%)
}

.product-info-drawer__accordion[open] .product-info-drawer__accordion-icon:after {
    transform: translate(-50%) rotate(90deg)
}

.product-info-drawer__accordion::details-content {
    interpolate-size: allow-keywords;
    block-size: 0;
    overflow: hidden;
    transition: block-size .3s ease, content-visibility .3s ease allow-discrete;
    content-visibility: hidden
}

.product-info-drawer__accordion[open]::details-content {
    block-size: auto;
    content-visibility: visible
}

.product-info-drawer__accordion-content {
    padding-block-end: var(--spacing-24);
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing)
}

product-inventory {
    display: block;
    font-size: var(--body-3-font-size);
    line-height: var(--body-3-line-height);
    letter-spacing: var(--body-3-letter-spacing)
}

.product-inventory__status--high,
.product-inventory__status--low,
.product-inventory__status--out {
    color: inherit
}

.product-list__grid {
    display: grid;
    grid-template-columns: repeat(var(--columns-mobile), 1fr);
    gap: var(--spacing-4);
    list-style: none;
    padding: 0;
    margin: 0
}

.product-list--standard .product-list__grid {
    row-gap: calc(var(--spacing-16) + .6rem)
}

@media screen and (min-width:750px) {
    .product-list__grid {
        grid-template-columns: repeat(var(--columns-desktop), 1fr)
    }
    .product-list--standard .product-list__grid {
        row-gap: calc(var(--spacing-24) + .6rem)
    }
}

.product-list__shimmer {
    aspect-ratio: var(--product-image-ratio);
    background: color-mix(in oklab, var(--color-foreground) 6%, transparent);
    background-image: linear-gradient(90deg, transparent 0%, color-mix(in oklab, var(--color-foreground) 4%, transparent) 40%, color-mix(in oklab, var(--color-foreground) 4%, transparent) 60%, transparent 100%);
    background-size: 200% 100%;
    animation: shimmer 1.5s ease-in-out infinite
}

@keyframes shimmer {
    0% {
        background-position: 200% 0
    }
    to {
        background-position: -200% 0
    }
}

product-notice {
    display: block;
    margin-block-start: var(--spacing-8)
}

.rating-block {
    display: flex;
    flex-direction: column;
    font-size: var(--body-2-font-size);
    letter-spacing: var(--body-2-letter-spacing);
    line-height: 1;
    gap: var(--spacing-10)
}

.rating-block--compact {
    flex-direction: row;
    align-items: center;
    gap: var(--spacing-4);
    text-decoration: none;
    color: inherit;
    background-image: linear-gradient(currentColor, currentColor);
    padding-bottom: 2px;
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: 0% 1px;
    transition: background-size .3s ease-in-out
}

.rating-block--compact:hover {
    background-size: 100% 1px
}

.rating-block__compact-star {
    width: 1.2rem;
    height: 1.2rem;
    flex-shrink: 0
}

.rating-block__compact-value {
    font-size: var(--body-2-font-size);
    letter-spacing: var(--body-2-letter-spacing);
    line-height: 1;
    text-box: trim-both cap alphabetic
}

.rating-block__content {
    display: flex;
    align-items: center;
    gap: var(--spacing-10);
    flex-wrap: wrap
}

.rating-block__link {
    color: inherit;
    text-decoration: underline;
    text-decoration-color: color-mix(in oklab, var(--color-foreground) 30%, transparent);
    text-underline-offset: .2em;
    transition: text-decoration-color .2s ease
}

.rating-block__link:hover {
    text-decoration-color: currentColor
}

.rating {
    display: inline-block;
    margin: 0
}

.rating__stars {
    position: relative;
    display: inline-flex
}

.rating__stars-background,
.rating__stars-filled {
    display: flex;
    align-items: center;
    gap: .2rem
}

.rating--small .rating__stars-background,
.rating--small .rating__stars-filled {
    gap: .15rem
}

.rating--small .rating__star {
    width: .9rem;
    height: .9rem
}

.rating--medium .rating__stars-background,
.rating--medium .rating__stars-filled {
    gap: .2rem
}

.rating--medium .rating__star {
    width: 1.1rem;
    height: 1.1rem
}

.rating--large .rating__stars-background,
.rating--large .rating__stars-filled {
    gap: .25rem
}

.rating--large .rating__star {
    width: 1.3rem;
    height: 1.3rem
}

.rating__stars-filled {
    position: absolute;
    top: 0;
    left: 0;
    width: var(--rating-percent);
    overflow: hidden;
    white-space: nowrap
}

.rating__star {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: color-mix(in srgb, rgb(var(--color-foreground)) 15%, transparent);
    flex-shrink: 0
}

.rating__star svg {
    width: 100%;
    height: 100%;
    display: block
}

.rating__star--filled {
    color: var(--color-foreground)
}

.rating-text {
    display: none
}

.rating-count {
    display: inline-block;
    margin: 0
}

@media(forced-colors:active) {
    .rating {
        display: none
    }
    .rating-text {
        display: block
    }
}

.recently-viewed[hidden] {
    display: none
}

.recently-viewed__title {
    margin: 0 0 var(--spacing-16);
    font-family: var(--font-heading-family);
    font-weight: 500
}

.recently-viewed__grid {
    display: grid;
    grid-template-columns: repeat(var(--rv-columns-mobile), 1fr);
    gap: var(--spacing-4);
    row-gap: calc(var(--spacing-16) + .6rem);
    list-style: none;
    margin: 0;
    padding: 0
}

@media screen and (min-width:750px) {
    .recently-viewed__grid {
        grid-template-columns: repeat(var(--rv-columns-desktop), 1fr);
        row-gap: calc(var(--spacing-24) + .6rem)
    }
}

bundle-builder {
    display: block;
    --swatch-size: 2.8rem
}

.bundle-builder__step-header {
    display: flex;
    align-items: center;
    gap: var(--spacing-8);
    margin-block-end: var(--spacing-12)
}

.bundle-builder__step-header~.bundle-builder__step-header {
    margin-block-start: var(--spacing-32)
}

.bundle-builder__step-number {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    background: linear-gradient(0deg, #e7e7e7, #f3f3f3);
    flex-shrink: 0
}

.bundle-builder__step-label {
    margin: 0
}

.bundle-builder__step-label+* {
    margin-inline-start: auto
}

.bundle-builder__step-link {
    margin-inline-start: auto;
    display: inline-flex;
    align-items: center;
    gap: var(--spacing-4);
    white-space: nowrap;
    flex-shrink: 0
}

.undle-builder__step-number,
.bundle-builder__step-label {
    font-family: var(--font-heading-family);
    font-weight: 500
}

.bundle-builder__sizes {
    border: 0;
    margin: var(--spacing-12) 0 0;
    padding: 0
}

.bundle-builder__colors {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-24);
    margin-block-start: var(--spacing-24);
    transition: opacity .2s ease
}

.bundle-builder__colors--inactive {
    opacity: .4;
    pointer-events: none
}

.bundle-builder__family {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-8)
}

.bundle-builder__family-name {
    font-weight: 700;
    text-transform: uppercase;
    margin: 0
}

.bundle-builder__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(10rem, 1fr));
    gap: var(--spacing-8)
}

.bundle-builder__color-row {
    display: flex;
    align-items: stretch
}

.bundle-builder__swatch {
    display: block;
    width: var(--swatch-size);
    height: var(--swatch-size);
    flex-shrink: 0;
    background-size: cover;
    background-position: center
}

.bundle-builder__swatch--light {
    border: 1px solid var(--color-border);
    border-right: 0;
    transition: border-color .15s ease
}

.bundle-builder__qty {
    display: flex;
    align-items: center;
    flex: 1;
    border: 1px solid var(--color-border);
    transition: border-color .15s ease
}

.bundle-builder__color-row--active .bundle-builder__qty,
.bundle-builder__color-row--active .bundle-builder__swatch--light {
    border-color: var(--color-primary)
}

.bundle-builder__qty-btn {
    display: grid;
    place-items: center;
    width: 2.8rem;
    height: 100%;
    border: 0;
    background: transparent;
    cursor: pointer;
    font-size: var(--body-2-font-size);
    line-height: 1;
    -webkit-user-select: none;
    user-select: none;
    color: color-mix(in oklab, var(--color-foreground) 50%, transparent);
    transition: color .15s ease
}

.bundle-builder__qty-btn:hover {
    color: var(--color-foreground)
}

.bundle-builder__qty-btn:focus-visible {
    outline: var(--focus-ring);
    outline-offset: -2px
}

.bundle-builder__qty-btn:disabled {
    opacity: .3;
    cursor: not-allowed
}

.bundle-builder__qty-value {
    flex: 1;
    text-align: center;
    font-weight: 500;
    font-variant-numeric: tabular-nums
}

.bundle-builder__color-row--soldout {
    opacity: .4;
    pointer-events: none
}

.bundle-builder__color-row--soldout .bundle-builder__swatch {
    position: relative
}

.bundle-builder__color-row--soldout .bundle-builder__swatch:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: linear-gradient(to top right, transparent calc(50% - .5px), var(--color-border) calc(50% - .5px), var(--color-border) calc(50% + .5px), transparent calc(50% + .5px))
}

.bundle-builder__included {
    margin-block-start: var(--spacing-24);
    padding: var(--spacing-16);
    border: 1px solid var(--color-border)
}

.bundle-builder__included-title {
    font-weight: 700;
    margin: 0 0 var(--spacing-12)
}

.bundle-builder__included-list {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-12)
}

.bundle-builder__included-item {
    display: flex;
    align-items: center;
    gap: var(--spacing-16)
}

.bundle-builder__included-image {
    width: 6rem;
    aspect-ratio: var(--product-image-ratio);
    object-fit: cover;
    flex-shrink: 0
}

.bundle-builder__included-info {
    display: flex;
    flex-direction: column
}

.bundle-builder__included-color {
    color: color-mix(in oklab, var(--color-foreground) 60%, transparent)
}

.bundle-builder__included-badge {
    display: inline-block;
    font-family: var(--font-heading-family);
    padding: var(--spacing-2) var(--spacing-8);
    background-color: var(--color-primary);
    color: var(--color-primary-foreground);
    font-weight: 700;
    text-transform: uppercase;
    width: fit-content;
    margin-block-start: var(--spacing-8)
}

bundle-builder product-form-component {
    display: block;
    margin-block-start: var(--spacing-32)
}

bundle-builder product-form-component [ref=formInputs] {
    display: none
}

bundle-builder .button:disabled:not([aria-busy=true]) {
    background-color: var(--color-background);
    color: var(--color-foreground);
    border: 1px solid var(--color-foreground);
    opacity: 1
}

.bundle-card {
    display: flex;
    flex-direction: row;
    gap: var(--spacing-16);
    text-decoration: none;
    color: inherit;
    background: var(--product-card-background);
    padding-inline-end: var(--spacing-32)
}

.bundle-card__media {
    width: 33%;
    flex-shrink: 0
}

.bundle-card__media img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: var(--product-image-ratio);
    object-fit: cover;
    mix-blend-mode: multiply;
    filter: brightness(1.2)
}

.bundle-card__content {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-8);
    justify-content: center;
    flex: 1;
    min-width: 0
}

.bundle-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--spacing-16)
}

.bundle-card__info {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-4)
}

.bundle-card__title {
    margin: 0;
    font-weight: 700
}

.bundle-card__price {
    display: flex;
    align-items: baseline;
    gap: var(--spacing-8)
}

.bundle-card__arrow {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    transition: translate .2s ease
}

.bundle-card:hover .bundle-card__arrow {
    translate: var(--spacing-4) 0
}

.cart-drawer__empty-state {
    animation: cart-empty-fade-in .3s ease-out
}

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

.cart-drawer__empty-title {
    font-family: var(--font-heading-family);
    font-size: var(--body-1-font-size);
    line-height: var(--body-1-line-height);
    font-weight: 400;
    margin: 0 0 var(--spacing-24)
}

.cart-drawer__empty-collections {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-16);
    list-style: none;
    margin: 0;
    padding: 0
}

.cart-item__components {
    list-style: none;
    margin: var(--spacing-4) 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--spacing-2)
}

.cart-item__component {
    color: color-mix(in oklab, var(--color-foreground) 60%, transparent)
}

.cart-item__bundle-qty {
    font-variant-numeric: tabular-nums
}

.cross-sell-card {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-8);
    min-width: 0
}

.cross-sell-card__media {
    position: relative
}

.cross-sell-card__image-link {
    display: block
}

.cross-sell-card__image {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: var(--product-image-ratio);
    object-fit: cover
}

.cross-sell-card__quick-add {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 1
}

.cross-sell-card__quick-add-button {
    display: grid;
    place-items: center;
    width: 1.8rem;
    height: 1.8rem;
    border: 0;
    padding: 0;
    margin: var(--spacing-8);
    background: var(--color-primary);
    color: var(--color-primary-foreground);
    cursor: pointer
}

.cross-sell-card__quick-add-button svg {
    width: .8rem;
    height: .8rem;
    display: block
}

.cross-sell-card__quick-add-button[aria-busy=true] svg {
    display: none
}

.cross-sell-card__quick-add-button[aria-busy=true]:after {
    content: "";
    width: .8rem;
    height: .8rem;
    border: 1.5px solid currentColor;
    border-top-color: transparent;
    border-radius: 50%;
    animation: button-spinner .6s linear infinite
}

.cross-sell-card__info {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-2)
}

.cross-sell-card__title {
    font-family: var(--font-heading-family);
    font-weight: 700;
    font-size: var(--body-3-font-size);
    letter-spacing: var(--body-3-letter-spacing);
    line-height: var(--body-3-line-height);
    text-decoration: none;
    color: inherit
}

.cross-sell-card__title:focus-visible {
    outline: var(--focus-ring);
    outline-offset: 2px
}

.cross-sell-card__color {
    font-size: var(--body-3-font-size);
    letter-spacing: var(--body-3-letter-spacing);
    line-height: var(--body-3-line-height)
}

.cart-cross-sell__content {
    display: grid;
    gap: var(--spacing-12);
    min-width: 0
}

.cart-cross-sell__slider {
    --cart-cross-sell-slide-size: calc((100% - var(--spacing-4)) / 2.08);
    display: grid;
    gap: var(--spacing-16);
    min-width: 0
}

.cart-cross-sell__header {
    align-items: center;
    display: flex;
    gap: var(--spacing-12);
    justify-content: space-between
}

.cart-cross-sell__title {
    font-family: var(--font-heading-family);
    font-size: var(--body-2-font-size);
    font-weight: 500;
    letter-spacing: var(--body-2-letter-spacing);
    line-height: var(--body-2-line-height);
    margin: 0;
    text-transform: uppercase
}

.cart-cross-sell__navigation {
    align-items: center;
    display: inline-flex;
    gap: var(--spacing-4);
    flex-shrink: 0
}

.cart-cross-sell__nav-button {
    align-items: center;
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
    border: 0;
    color: inherit;
    cursor: pointer;
    display: inline-flex;
    height: 1.6rem;
    justify-content: center;
    padding: 0;
    width: 1.6rem
}

.cart-cross-sell__nav-button[disabled] {
    cursor: default;
    opacity: .35
}

.cart-cross-sell__nav-button:focus-visible {
    outline: var(--focus-ring);
    outline-offset: 2px
}

.cart-cross-sell__nav-button svg {
    display: block;
    height: 1.6rem;
    width: 1.6rem
}

.cart-cross-sell__viewport {
    overflow: hidden;
    margin-inline: calc(var(--drawer-padding-inline) * -1);
    padding-inline: var(--drawer-padding-inline)
}

.cart-cross-sell__container {
    display: flex;
    gap: var(--spacing-4)
}

.cart-cross-sell__slide {
    flex: 0 0 var(--cart-cross-sell-slide-size);
    min-width: 0
}

.cart-cross-sell--loading .cross-sell-card__quick-add-button {
    pointer-events: none
}

.cart-cross-sell-card-placeholder {
    display: grid;
    gap: var(--spacing-8)
}

.cart-cross-sell-card-placeholder__media,
.cart-cross-sell-card-placeholder__line {
    background: color-mix(in oklab, var(--color-foreground) 6%, transparent);
    background-image: linear-gradient(90deg, transparent 0%, color-mix(in oklab, var(--color-foreground) 4%, transparent) 40%, color-mix(in oklab, var(--color-foreground) 4%, transparent) 60%, transparent 100%);
    background-size: 200% 100%;
    animation: cart-cross-sell-shimmer 1.5s ease-in-out infinite
}

.cart-cross-sell-card-placeholder__media {
    aspect-ratio: var(--product-image-ratio)
}

.cart-cross-sell-card-placeholder__line {
    height: 1.2rem
}

.cart-cross-sell-card-placeholder__line--title {
    width: 88%
}

.cart-cross-sell-card-placeholder__line--meta {
    width: 54%
}

@keyframes cart-cross-sell-shimmer {
    0% {
        background-position: 200% 0
    }
    to {
        background-position: -200% 0
    }
}

.collection-card {
    position: relative
}

.collection-card:has(:focus-visible) {
    outline: var(--focus-ring);
    outline-offset: 2px
}

.collection-card__link {
    text-decoration: none
}

.collection-card__link:focus-visible {
    outline: none
}

.collection-card__link:after {
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    position: absolute;
    z-index: 1
}

.collection-card__image {
    overflow: hidden
}

.collection-card__image img {
    aspect-ratio: var(--collection-image-ratio);
    display: block;
    height: auto;
    object-fit: cover;
    transition: transform .5s ease-in-out;
    width: 100%
}

.collection-card:hover .collection-card__image img,
.collection-card:focus-within .collection-card__image img {
    transform: scale(1.05)
}

.collection-card__content {
    display: flex
}

.collection-card__content:not(:first-child) {
    margin-top: var(--spacing-12)
}

.collection-card__title {
    display: flex;
    font-family: var(--font-heading-family);
    font-size: var(--body-2-font-size);
    font-weight: 500;
    letter-spacing: var(--body-2-letter-spacing);
    line-height: var(--body-2-line-height);
    text-transform: uppercase
}

.collection-card__link {
    background-image: linear-gradient(currentColor, currentColor);
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: 0% 1px;
    transition: background-size .3s ease-in-out
}

.collection-card:hover .collection-card__link,
.collection-card:focus-within .collection-card__link {
    background-size: 100% 1px
}

.filter-drawer-component {
    display: contents
}

.filter-drawer__trigger {
    align-items: center;
    background: transparent;
    border: 0;
    color: inherit;
    cursor: pointer;
    display: flex;
    font-family: var(--font-heading-family);
    font-weight: 700;
    gap: var(--spacing-12);
    text-transform: uppercase
}

.filter-drawer__trigger svg {
    display: block
}

.filter-drawer__header {
    align-content: start;
    padding-bottom: var(--spacing-0)
}

.filter-drawer__header-top {
    align-items: center;
    border-bottom: 1px solid var(--color-border);
    display: grid;
    gap: var(--spacing-12);
    grid-template-columns: auto 1fr;
    padding-bottom: var(--spacing-24)
}

.filter-drawer__header-copy {
    display: grid;
    gap: var(--spacing-4)
}

.filter-drawer__form {
    gap: 0
}

.filter-drawer__section {
    padding-top: var(--spacing-24)
}

@media screen and (min-width:750px) {
    .filter-drawer__section {
        padding-top: var(--spacing-32)
    }
}

.filter-drawer__section:not(:first-child) {
    border-top: 1px solid var(--color-border)
}

.filter-drawer__facets {
    display: grid;
    gap: var(--spacing-16)
}

.filter-drawer__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid
}

.filter-drawer__details[open] .filter-drawer__summary-value {
    display: none
}

.filter-drawer__details:not([open]) .filter-drawer__summary-alt {
    opacity: .6
}

.filter-drawer__icon {
    position: relative;
    width: 10px;
    height: 10px;
    flex-shrink: 0
}

.filter-drawer__icon:before,
.filter-drawer__icon:after {
    content: "";
    position: absolute;
    background-color: currentColor;
    transition: transform .2s ease
}

.filter-drawer__icon:before {
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    transform: translateY(-50%)
}

.filter-drawer__icon:after {
    top: 0;
    left: 50%;
    width: 1px;
    height: 100%;
    transform: translate(-50%)
}

.filter-drawer__details[open] .filter-drawer__icon:after {
    transform: translate(-50%) rotate(90deg)
}

.filter-drawer__summary {
    align-items: center;
    cursor: pointer;
    display: flex;
    font-family: var(--font-heading-family);
    font-weight: 500;
    gap: var(--spacing-8);
    justify-content: space-between;
    list-style: none;
    text-transform: uppercase
}

.filter-drawer__summary>span {
    align-items: center;
    display: flex;
    gap: var(--spacing-4)
}

.filter-drawer__details::details-content {
    interpolate-size: allow-keywords;
    block-size: 0;
    overflow: hidden;
    transition: block-size .3s ease, content-visibility .3s ease allow-discrete;
    content-visibility: hidden
}

.filter-drawer__details[open]::details-content {
    block-size: auto;
    content-visibility: visible
}

.filter-drawer__details-body {
    margin-block: var(--spacing-20)
}

.filter-drawer__sort {
    padding-block: var(--spacing-24)
}

.filter-drawer__sort .filter-drawer__summary {
    text-transform: none
}

.filter-drawer__sort .filter-drawer__details-body {
    margin-bottom: 0
}

.filter-drawer__sort .filter-drawer__label-text {
    --radius: 50%
}

.filter-drawer__sort-group {
    border: 0;
    margin: 0;
    min-inline-size: 0;
    padding: 0
}

.filter-drawer__sort-list {
    display: grid;
    list-style: none;
    margin: 0;
    padding: 0
}

.filter-drawer__label {
    cursor: pointer;
    display: block;
    padding-block: var(--spacing-4);
    padding-inline-start: var(--spacing-2)
}

.filter-drawer__label input {
    display: none;
    margin: 0
}

.filter-drawer__label input:checked+.filter-drawer__label-text {
    --bg-before: currentColor;
    --opacity: 1;
    font-weight: 500
}

.filter-drawer__label:has(input:disabled) {
    cursor: default;
    opacity: .3;
    pointer-events: none
}

.filter-drawer__label-text {
    --bg-before: transparent;
    --opacity: .4;
    --radius: 0;
    align-items: center;
    display: flex;
    gap: var(--spacing-8);
    justify-content: space-between;
    position: relative
}

.filter-drawer__label-text:hover {
    --bg-before: currentColor
}

.filter-drawer__label-text:after {
    border: 1px solid currentColor;
    border-radius: var(--radius);
    content: "";
    display: block;
    height: 1.2rem;
    opacity: var(--opacity);
    transition: .3s ease-in-out;
    width: 1.2rem
}

.filter-drawer__label-text:before {
    background: var(--bg-before);
    border-radius: var(--radius);
    content: "";
    display: block;
    height: 1rem;
    opacity: var(--opacity);
    position: absolute;
    right: .2rem;
    top: 50%;
    transform: translateY(-50%) translateZ(0);
    transition: .3s ease-in-out;
    width: 1rem
}

.filter-drawer__swatch {
    background-position: center;
    background-size: cover;
    display: inline-block;
    flex-shrink: 0;
    height: 1.6rem;
    position: relative;
    width: 1.6rem
}

.filter-drawer__swatch:before {
    border: 1px solid rgb(0 0 0 / .2);
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    mix-blend-mode: multiply;
    pointer-events: none;
    position: absolute
}

.filter-drawer__label--swatch .filter-drawer__label-text {
    align-items: center;
    display: flex;
    gap: var(--spacing-8)
}

.filter-drawer__label--swatch .filter-drawer__label-text:before,
.filter-drawer__label--swatch .filter-drawer__label-text:after {
    display: none
}

.filter-drawer__label--swatch {
    align-items: center;
    display: flex;
    gap: var(--spacing-8)
}

.filter-drawer__label--swatch input:checked~.filter-drawer__swatch {
    box-shadow: 0 0 0 1px var(--color-background), 0 0 0 2px currentColor
}

.filter-drawer__range {
    display: grid;
    gap: var(--spacing-16);
    grid-template-columns: repeat(2, 1fr)
}

.filter-drawer__range-field input {
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
    border: 1px solid var(--color-border);
    color: var(--color-foreground);
    font: inherit;
    padding: var(--spacing-12);
    width: 100%
}

.filter-drawer__footer {
    align-items: center;
    border-top: 0;
    display: flex;
    flex-direction: column;
    text-align: center
}

.filter-drawer__footer .button {
    width: 100%
}

.filter-drawer__footer-clear {
    text-decoration: none
}

@media(prefers-reduced-motion:reduce) {
    .filter-drawer {
        scroll-behavior: auto
    }
}

.pad__link {
    display: block
}

.pad__media {
    background: color-mix(in oklab, var(--color-background) 88%, var(--color-foreground));
    min-height: 0;
    overflow: hidden;
    padding-top: calc((100% - (var(--column-gap, 0) * (var(--grid-columns, 1) - 1))) * (var(--product-image-ratio-height, 6) / var(--grid-columns, 1)) / var(--product-image-ratio-width, 5));
    position: relative
}

.pad__asset {
    height: 100%;
    left: 0;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%
}

.cart-free-shipping {
    width: 100%
}

.cart-free-shipping__message {
    margin: 0;
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing);
    font-weight: 400;
    text-transform: none;
    color: var(--color-foreground)
}

.cart-free-shipping__message strong {
    font-weight: var(--heading-font-weight)
}

.cart-free-shipping__progress {
    -webkit-appearance: none;
    appearance: none;
    display: block;
    margin-block-start: var(--spacing-8);
    width: 100%;
    height: .3rem;
    border: 0;
    background: color-mix(in oklab, var(--color-foreground) 16%, transparent)
}

.cart-free-shipping__progress::-webkit-progress-bar {
    background: color-mix(in oklab, var(--color-foreground) 16%, transparent)
}

.cart-free-shipping__progress::-webkit-progress-value {
    background: var(--color-foreground);
    transition: width .2s ease
}

.cart-free-shipping__progress::-moz-progress-bar {
    background: var(--color-foreground);
    transition: width .2s ease
}

gift-card-recipient {
    display: block
}

.gift-card-recipient__fields {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-12);
    padding-block-start: var(--spacing-16)
}

.gift-card-recipient__fields[hidden] {
    display: none
}

.gift-card-recipient__message-count {
    text-align: right;
    font-size: var(--body-3-font-size);
    line-height: var(--body-3-line-height);
    color: color-mix(in oklab, var(--color-foreground) 60%, transparent);
    margin-block-start: calc(-1 * var(--spacing-8))
}

.gift-card-recipient__send-on-info {
    color: color-mix(in oklab, var(--color-foreground) 60%, transparent);
    margin-block-start: calc(-1 * var(--spacing-8))
}

.gift-card-recipient__error {
    color: var(--color-error, #c00);
    font-size: var(--body-3-font-size);
    line-height: var(--body-3-line-height)
}

.gift-card-recipient__error[hidden] {
    display: none
}

.group-block .section__inner {
    width: 100%
}

.group-block--width-fit {
    width: fit-content;
    max-width: min(100%, var(--group-block-max-width, 100%))
}

.group-block--width-fit .section__inner {
    width: auto;
    max-width: min(100%, var(--group-block-max-width, 100%))
}

.group-block--width-fill {
    width: 100%
}

.group-block--max-width-align-center {
    margin-inline: auto
}

.group-block--max-width-align-right {
    margin-inline-start: auto
}

.gwp-banner {
    position: relative;
    width: 100%;
    border: solid 1px var(--color-border)
}

.gwp-banner--hiding {
    animation: gwp-banner-out .25s ease-in forwards
}

@keyframes gwp-banner-in {
    0% {
        opacity: 0;
        scale: .95
    }
    to {
        opacity: 1;
        scale: 1
    }
}

@keyframes gwp-banner-out {
    0% {
        opacity: 1;
        scale: 1
    }
    to {
        opacity: 0;
        scale: .95
    }
}

.gwp-banner__content {
    display: flex;
    align-items: center;
    gap: var(--spacing-12);
    padding-inline-end: var(--spacing-12)
}

.gwp-banner__image {
    flex-shrink: 0;
    width: 5.8rem;
    filter: brightness(1.2);
    mix-blend-mode: multiply
}

@media screen and (min-width:750px) {
    .gwp-banner__image {
        width: 6.3rem
    }
}

.gwp-banner__img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    aspect-ratio: var(--product-image-ratio)
}

.gwp-banner__text {
    flex: 1;
    min-width: 0
}

.gwp-banner__message {
    margin: 0;
    font-family: var(--font-heading-family);
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing);
    font-weight: 500;
    text-transform: none;
    color: var(--color-foreground)
}

.gwp-banner__remaining {
    margin-block: var(--spacing-2) 0;
    font-size: var(--body-3-font-size);
    line-height: var(--body-3-line-height);
    letter-spacing: var(--body-3-letter-spacing);
    color: var(--color-foreground)
}

.gwp-banner__add-button {
    display: inline;
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing);
    font-weight: var(--heading-font-weight);
    text-decoration: underline;
    color: var(--color-foreground)
}

.gwp-banner__gauge {
    -webkit-appearance: none;
    appearance: none;
    display: block;
    position: absolute;
    bottom: -1px;
    left: -1px;
    right: -1px;
    width: calc(100% + 2px);
    height: 1px;
    border: 0;
    background: transparent
}

.gwp-banner__gauge::-webkit-progress-bar {
    background: transparent
}

.gwp-banner__gauge::-webkit-progress-value {
    background: var(--color-foreground);
    transition: width .2s ease
}

.gwp-banner__gauge::-moz-progress-bar {
    background: var(--color-foreground);
    transition: width .2s ease
}

.header-search {
    display: contents
}

.header-search__drawer {
    overflow: hidden
}

.header-search__header {
    gap: var(--spacing-24);
    padding-bottom: 0
}

.header-search__header-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing-20)
}

.header-search__close {
    display: inline-flex;
    align-items: center;
    gap: var(--spacing-12)
}

.header-search__close-label {
    font-family: var(--font-heading-family);
    font-size: var(--body-1-font-size);
    line-height: var(--body-1-line-height);
    letter-spacing: var(--body-1-letter-spacing);
    font-weight: 500;
    text-transform: uppercase
}

.header-search__title {
    font-weight: 500
}

.header-search__form {
    display: grid;
    gap: var(--spacing-8)
}

.header-search__field {
    align-items: center;
    border: 1px solid var(--color-border);
    display: flex;
    position: relative;
    padding-right: var(--spacing-12)
}

.header-search__input {
    background: transparent;
    border: 0;
    color: inherit;
    flex: 1;
    min-width: 0;
    padding: var(--spacing-16) var(--spacing-0) var(--spacing-14) var(--spacing-40);
    width: 100%
}

.header-search__input::placeholder {
    color: color-mix(in oklab, var(--color-foreground) 55%, transparent);
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing)
}

.header-search__input:focus {
    outline: none
}

.header-search__submit {
    position: absolute;
    top: 50%;
    left: var(--spacing-12);
    transform: translateY(-50%) translateZ(0)
}

.header-search__clear {
    opacity: .6;
    justify-self: start;
    text-align: left
}

.header-search__content {
    padding-block-start: var(--drawer-vertical-spacing)
}

.header-search__state {
    display: grid;
    gap: var(--drawer-vertical-spacing);
    margin-top: 0!important
}

.header-search__state[hidden],
.header-search__view-all[hidden] {
    display: none
}

.header-search__section {
    display: grid;
    gap: var(--spacing-16)
}

.header-search__section-title {
    font-family: var(--font-heading-family);
    font-weight: 500;
    margin: 0
}

.header-search__suggestions-list {
    display: grid;
    gap: var(--spacing-8);
    margin: 0;
    padding: 0;
    list-style: none
}

.header-search__suggestions-list li {
    display: flex
}

.header-search__suggestion-button {
    align-items: center;
    color: inherit;
    display: inline-flex;
    justify-content: flex-start;
    text-align: left
}

.header-search__featured-grid,
.header-search__predictive-products-grid {
    column-gap: var(--spacing-4);
    display: grid;
    list-style: none;
    margin: 0;
    padding: 0;
    row-gap: var(--spacing-16)
}

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

@media screen and (min-width:990px) {
    .header-search__featured-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }
}

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

.header-search__predictive-results,
.header-search__predictive-results-inner {
    display: grid;
    gap: var(--drawer-vertical-spacing)
}

.header-search__loading {
    display: grid;
    place-items: center;
    min-height: 12rem
}

.header-search__loader {
    width: 2.4rem;
    height: 2.4rem;
    border: .2rem solid color-mix(in oklab, var(--color-foreground) 18%, transparent);
    border-top-color: var(--color-foreground);
    border-radius: 50%;
    animation: button-spinner .6s linear infinite
}

.header-search__grid-item {
    min-width: 0
}

.header-search__footer {
    border-top: none
}

.header-search__footer:has(.header-search__view-all[hidden]) {
    display: none
}

.header-search__query-suggestion mark,
.header-search-product-card__title-text {
    padding: 0;
    font-weight: 700;
    color: inherit;
    background: transparent
}

.header-search__empty,
.header-search__feedback {
    margin: 0
}

.header-search-product-card {
    display: grid;
    gap: var(--spacing-12);
    min-width: 0
}

.header-search-product-card__media,
.header-search-product-card__media img,
.header-search-product-card__placeholder {
    display: block;
    width: 100%
}

.header-search-product-card__media {
    overflow: hidden;
    background: color-mix(in oklab, var(--color-background) 94%, var(--color-foreground))
}

.header-search-product-card__media img,
.header-search-product-card__placeholder {
    aspect-ratio: 4 / 5;
    object-fit: cover
}

.header-search-product-card__info {
    display: grid;
    gap: var(--spacing-4);
    min-width: 0
}

.header-search-product-card__title,
.header-search-product-card__price {
    margin: 0
}

.header-search-product-card__title-link {
    color: inherit;
    text-decoration: none
}

.header-search-product-card__title-text {
    display: block;
    overflow-wrap: break-word
}

.header-search__predictive-group {
    display: grid;
    gap: var(--spacing-16)
}

.header-search__predictive-list {
    display: grid;
    gap: var(--spacing-8);
    margin: 0;
    padding: 0;
    list-style: none
}

.header-search__predictive-list li {
    display: flex
}

.header-search__query-suggestion {
    color: inherit;
    display: inline-block;
    text-align: left
}

.image {
    display: block;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: auto
}

.image>img {
    width: 100%;
    height: auto
}

.input,
.textarea,
.select {
    font: inherit;
    font-size: max(var(--font-size-input), 1.6rem);
    line-height: var(--line-height-input);
    letter-spacing: var(--letter-spacing-input);
    border-radius: var(--style-border-radius-inputs);
    background-color: var(--color-input-background);
    color: var(--color-input-text);
    border: 1px solid var(--color-input-border);
    min-height: var(--style-height-input);
    transition: border-color .2s ease;
    padding: var(--spacing-10) var(--spacing-16)
}

.input::placeholder,
.textarea::placeholder,
.select::placeholder {
    color: var(--color-input-text);
    font-size: var(--font-size-input)
}

.input:hover,
.textarea:hover,
.select:hover {
    outline: 1px solid var(--color-input-border)
}

.input:focus-visible,
.textarea:focus-visible,
.select:focus-visible {
    border-color: var(--color-foreground);
    outline: none
}

.textarea {
    border-radius: var(--style-border-radius-textarea)
}

.select {
    -webkit-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right var(--spacing-16) center;
    padding-right: var(--spacing-40);
    cursor: pointer;
    width: 100%
}

.input__label {
    font-weight: bolder
}

.input__wrapper {
    position: relative
}

.input__wrapper>.input {
    width: 100%;
    padding-right: calc(var(--style-height-input) + 1.2rem)
}

.input__wrapper>.input__button {
    position: absolute;
    width: calc(var(--style-height-input));
    height: calc(var(--style-height-input));
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background-color: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color .2s ease, background-color .2s ease
}

.input__wrapper>.input__button:hover {
    color: var(--color-input-background);
    background-color: var(--color-input-text)
}

.checkbox__wrapper,
.radio__wrapper {
    display: flex;
    align-items: flex-start;
    gap: var(--spacing-10)
}

.checkbox__wrapper .checkbox,
.radio__wrapper .radio {
    flex-shrink: 0
}

.checkbox,
.radio,
.checkbox__label,
.radio__label {
    cursor: pointer
}

.checkbox,
.radio {
    width: 1.5rem;
    height: 1.5rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: solid 1px color-mix(in oklab, var(--color-input-text) 60%, transparent);
    position: relative
}

.checkbox:before,
.radio:before {
    content: "";
    display: none;
    position: absolute;
    top: 2px;
    left: 2px;
    width: calc(100% - 4px);
    height: calc(100% - 4px);
    background-color: color-mix(in oklab, var(--color-input-text) 60%, transparent);
    transition: background-color .2s ease
}

.checkbox:checked:before,
.radio:checked:before {
    display: block
}

.radio,
.radio:before {
    border-radius: 50%
}

.checkbox__wrapper:has(:is(.checkbox,
.checkbox__label):hover) .checkbox:not(:checked):before,
.radio__wrapper:has(:is(.radio,
.radio__label):hover) .radio:not(:checked):before {
    display: block;
    background-color: color-mix(in oklab, var(--color-input-text) 60%, transparent)
}

.checkbox__wrapper:has(:is(.checkbox,
.checkbox__label)) .checkbox:checked:before,
.radio__wrapper:has(:is(.radio,
.radio__label)) .radio:checked:before {
    background-color: var(--color-input-text)
}

.input__wrapper--search {
    display: flex;
    align-items: center;
    gap: var(--spacing-10);
    background-color: var(--color-input-background);
    border: 1px solid var(--color-input-border);
    border-radius: var(--style-border-radius-inputs);
    padding-inline: var(--spacing-16);
    min-height: var(--style-height-input);
    transition: border-color .2s ease
}

.input__wrapper--search:hover {
    outline: 1px solid var(--color-input-border)
}

.input__wrapper--search:focus-within {
    border-color: var(--color-input-text);
    outline: none
}

.input__wrapper--search>.input {
    flex: 1;
    border: none;
    background: transparent;
    padding: 0 var(--spacing-10);
    min-height: auto
}

.input__wrapper--search>.input:hover,
.input__wrapper--search>.input:focus-visible {
    outline: none;
    border: none
}

.input__wrapper--search>.input::-webkit-search-cancel-button,
.input__wrapper--search>.input::-webkit-search-decoration {
    -webkit-appearance: none;
    appearance: none;
    display: none
}

.input__icon {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    color: var(--color-input-text)
}

.input__icon svg {
    width: 100%;
    height: 100%
}

.input__reset {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.4rem;
    height: 2.4rem;
    padding: 0;
    border: none;
    border-radius: 50%;
    background-color: var(--color-accent);
    color: var(--color-button-primary-text);
    cursor: pointer;
    transition: opacity .2s ease
}

.input__reset svg {
    width: 1.2rem;
    height: 1.2rem
}

.input__reset:hover {
    opacity: .8
}

.input__reset[hidden] {
    display: none
}

.media-gallery {
    display: contents
}

.media-gallery__viewport {
    overflow: clip;
    display: block;
    text-decoration: none;
    color: inherit
}

.media-gallery__viewport:focus-visible {
    outline: var(--focus-ring);
    outline-offset: -2px
}

.media-gallery__container {
    display: flex
}

.media-gallery__slide {
    flex: 0 0 100%;
    min-width: 0
}

.media-gallery__image,
.media-gallery__video {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: var(--product-image-ratio);
    object-fit: cover
}

.media-gallery__nav {
    display: flex;
    justify-content: center;
    align-items: center;
    border: 0;
    background: transparent;
    color: var(--color-foreground);
    cursor: pointer
}

.media-gallery__nav--prev svg {
    transform: scaleX(-1)
}

.media-gallery__nav svg {
    width: .8rem;
    height: 1.5rem;
    display: block
}

.media-gallery__pagination {
    height: 1px
}

.media-gallery__pagination:after {
    content: "";
    display: block;
    height: 100%;
    width: calc(100% / var(--slide-count));
    background: var(--color-foreground);
    transform: translate(calc(var(--slide-progress) * var(--slide-count) * 100%))
}

.minimal-product-card {
    position: relative;
    display: block;
    overflow: hidden;
    background: color-mix(in oklab, var(--color-background) 96%, var(--color-foreground))
}

.minimal-product-card img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: var(--product-image-ratio);
    object-fit: cover
}

.minimal-product-card__add {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    padding: 12px;
    border: 0;
    background: transparent;
    color: var(--color-background);
    cursor: pointer;
    transition: opacity .2s ease
}

.minimal-product-card__icon {
    display: grid;
    place-items: center;
    width: 18px;
    height: 18px;
    background: var(--color-foreground)
}

.minimal-product-card__icon svg {
    width: 8px;
    height: 8px;
    display: block
}

.minimal-product-card__add[aria-busy=true] .minimal-product-card__icon svg {
    display: none
}

.minimal-product-card__add[aria-busy=true] .minimal-product-card__icon:after {
    content: "";
    width: 10px;
    height: 10px;
    border: 1.5px solid currentColor;
    border-top-color: transparent;
    border-radius: 50%;
    animation: button-spinner .6s linear infinite
}

@media(hover:hover)and (pointer:fine) {
    .minimal-product-card__add {
        opacity: 0
    }
    .minimal-product-card:hover .minimal-product-card__add,
    .minimal-product-card:focus-within .minimal-product-card__add {
        opacity: 1
    }
}

.price,
.compare-at-price {
    margin: 0
}

.compare-at-price {
    text-decoration: line-through;
    opacity: .6
}

.discount-percentage {
    font-size: .8125em;
    color: #1500ff
}

.product-badges {
    position: absolute;
    top: var(--spacing-8);
    right: var(--spacing-8);
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: var(--spacing-4)
}

.product-badges--large {
    top: var(--spacing-12);
    right: var(--spacing-12);
    gap: var(--spacing-8)
}

.product-badges__badge {
    font-size: var(--body-3-font-size);
    line-height: var(--body-3-line-height);
    letter-spacing: var(--body-3-letter-spacing);
    text-transform: uppercase;
    background: transparent;
    color: var(--color-foreground)
}

.product-badges__badge--private-sale,
.product-badges__badge--discount {
    padding-inline: .6em;
    padding-block: .3em;
    line-height: 1
}

.product-badges__badge--large {
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing)
}

@media screen and (min-width:750px) {
    .product-badges {
        top: var(--spacing-12);
        right: var(--spacing-12)
    }
    .product-badges--large {
        top: var(--spacing-16);
        right: var(--spacing-16)
    }
}

product-card {
    display: grid;
    grid-template-columns: auto 1fr auto;
    grid-template-rows: auto 1fr auto auto;
    position: relative;
    background: var(--product-card-background)
}

product-card:focus {
    outline: none
}

.product-card__media {
    display: contents
}

.product-card .media-gallery__viewport {
    grid-column: 1 / -1;
    grid-row: 1 / -1
}

[data-product-view=model] product-card .media-gallery__viewport:not(.media-gallery__viewport--embla-ready) .media-gallery__container {
    translate: -100% 0
}

[data-product-view=model] product-card .media-gallery__viewport--embla-ready .media-gallery__slide {
    order: 1
}

[data-product-view=model] product-card .media-gallery__viewport--embla-ready .media-gallery__slide:nth-child(2) {
    order: 0
}

.product-card__swatches {
    grid-column: 1;
    grid-row: 1;
    z-index: 3;
    display: flex;
    flex-wrap: wrap;
    align-self: center;
    gap: var(--spacing-4);
    padding: var(--spacing-12);
    align-self: start;
    border: 0;
    margin: 0
}

.product-card__swatch {
    display: block;
    position: relative;
    width: 1.2rem;
    height: 1.2rem;
    background-size: cover;
    background-position: center;
    cursor: pointer;
    transition: opacity .2s ease
}

.product-card__swatch:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border: 1px solid rgb(0 0 0 / .2);
    mix-blend-mode: multiply;
    pointer-events: none
}

.product-card__swatch:hover:not(:has(:checked)) {
    opacity: .7
}

.product-card__swatch:has(:checked):after {
    content: "";
    position: absolute;
    bottom: calc(-1 * var(--spacing-6) - 1px);
    left: 0;
    right: 0;
    height: 1px;
    background: var(--color-foreground)
}

.product-card__swatch:has(:focus-visible) {
    outline: var(--focus-ring);
    outline-offset: 2px
}

.product-card .product-badges {
    position: static;
    grid-column: 3;
    grid-row: 1;
    z-index: 3;
    align-self: center;
    margin: var(--spacing-8) var(--spacing-8) 0 0
}

@media screen and (min-width:750px) {
    .product-card .product-badges {
        margin: var(--spacing-12) var(--spacing-12) 0 0
    }
}

.product-card .media-gallery__nav {
    grid-row: 1 / -1;
    z-index: 3;
    align-self: stretch;
    padding-inline: var(--spacing-24)
}

@media screen and (max-width:749px) {
    .product-card .media-gallery__nav {
        padding-inline: var(--spacing-16)
    }
}

.product-card .media-gallery__nav--prev {
    grid-column: 1;
    justify-self: start
}

.product-card .media-gallery__nav--next {
    grid-column: 3;
    justify-self: end
}

.product-card .media-gallery__pagination {
    grid-column: 1 / -1;
    grid-row: 4;
    z-index: 3
}

@media not all and (hover:hover)and (pointer:fine) {
    .product-card__swatches,
    .product-card .media-gallery__nav,
    .product-card__quick-add,
    .product-card .media-gallery__pagination {
        display: none
    }
    .product-card--standard .product-card__swatches {
        display: flex
    }
}

@media(hover:hover)and (pointer:fine) {
    .product-card .media-gallery__nav,
    .product-card__quick-add,
    .product-card__swatches,
    .product-card .media-gallery__pagination {
        opacity: 0;
        transition: opacity .2s ease
    }
    product-card:hover .media-gallery__nav,
    product-card:hover .product-card__quick-add,
    product-card:hover .product-card__swatches,
    product-card:hover .media-gallery__pagination,
    product-card:focus-within .media-gallery__nav,
    product-card:focus-within .product-card__quick-add,
    product-card:focus-within .product-card__swatches,
    product-card:focus-within .media-gallery__pagination {
        opacity: 1
    }
}

.product-card__quick-add {
    grid-column: 3;
    grid-row: 3;
    z-index: 3;
    justify-self: end;
    align-self: end
}

.product-card__quick-add-button {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    padding: var(--spacing-16);
    border: 0;
    background: transparent;
    cursor: pointer
}

.product-card__quick-add-icon {
    display: grid;
    place-items: center;
    width: 3rem;
    height: 3rem;
    background: var(--color-foreground);
    color: var(--color-background);
    transition: opacity .18s ease
}

.product-card__quick-add-button:hover .product-card__quick-add-icon {
    opacity: .7
}

.product-card__quick-add-icon svg {
    width: 1.3rem;
    height: 1.3rem;
    display: block
}

.product-card__quick-add-button[aria-busy=true] .product-card__quick-add-icon svg {
    display: none
}

.product-card__quick-add-button[aria-busy=true] .product-card__quick-add-icon:after {
    content: "";
    width: 1.4rem;
    height: 1.4rem;
    border: 1.5px solid currentColor;
    border-top-color: transparent;
    border-radius: 50%;
    animation: button-spinner .6s linear infinite
}

.product-card__info {
    display: contents
}

.product-card__title,
.product-card__price {
    display: none
}

.product-card--standard {
    background: none
}

.product-card--standard .media-gallery__viewport {
    background: var(--product-card-background)
}

.product-card--standard .product-card__info {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-4);
    grid-column: 1 / -1;
    padding-block-start: var(--spacing-12)
}

@media screen and (min-width:750px) {
    .product-card--standard .product-card__info {
        gap: var(--spacing-8)
    }
}

.product-card--standard .product-card__title {
    display: block;
    font-weight: 700;
    font-family: var(--font-heading-family);
    font-size: var(--body-2-font-size);
    letter-spacing: var(--body-2-letter-spacing);
    line-height: var(--line-tight);
    text-decoration: none;
    color: inherit
}

.product-card--standard .product-card__title:focus-visible {
    outline: var(--focus-ring);
    outline-offset: 2px
}

.product-card--standard .product-card__price {
    display: block;
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing)
}

.product-card--standard .product-card__swatches {
    position: static;
    padding: 0;
    grid-column: unset;
    grid-row: unset;
    z-index: unset;
    align-self: unset
}

@media not all and (hover:hover)and (pointer:fine) {
    .product-card--standard .product-card__swatches {
        display: flex
    }
}

@media(hover:hover)and (pointer:fine) {
    .product-card--standard .product-card__swatches {
        opacity: 1
    }
}

.product-card--sold-out .media-gallery__viewport,
.product-card--sold-out .product-card__title,
.product-card--sold-out .product-card__price {
    opacity: .5
}

.product-card__shimmer {
    grid-column: 1 / -1;
    grid-row: 1 / -1;
    z-index: 2;
    aspect-ratio: var(--product-image-ratio);
    background: var(--product-card-background);
    background-image: linear-gradient(90deg, transparent 0%, color-mix(in oklab, var(--color-foreground) 4%, transparent) 40%, color-mix(in oklab, var(--color-foreground) 4%, transparent) 60%, transparent 100%);
    background-size: 200% 100%;
    animation: product-card-shimmer 1.5s ease-in-out infinite;
    pointer-events: none
}

@keyframes product-card-shimmer {
    0% {
        background-position: 200% 0
    }
    to {
        background-position: -200% 0
    }
}

product-form-component {
    display: block
}

.product-details__form>:not(:last-child) {
    margin-block-start: 0;
    margin-block-end: var(--spacing-16)
}

.product-details__form .checkbox__label {
    font-size: var(--body-3-font-size);
    line-height: var(--body-3-line-height);
    letter-spacing: var(--body-3-letter-spacing)
}

.product-form__external-link {
    margin-block-end: var(--spacing-16)
}

.product-media,
.product-media-slider {
    width: 100%
}

.product-media-slider {
    position: relative
}

.product-media-slider__viewport {
    overflow: hidden
}

.product-media-slider__container {
    display: flex
}

.product-media-slider__slide {
    position: relative;
    flex: 0 0 100%;
    min-width: 0;
    overflow: hidden
}

.product-media-slider__media {
    aspect-ratio: var(--product-image-ratio);
    width: 100%;
    object-fit: cover;
    display: block
}

.product-media-slider__navigation {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    pointer-events: none;
    display: flex;
    justify-content: space-between
}

.product-media-slider__nav-button {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding-inline: var(--spacing-24);
    border: 0;
    background: transparent;
    color: var(--color-foreground);
    cursor: pointer;
    pointer-events: auto
}

.product-media-slider__nav-button:disabled {
    opacity: .3;
    cursor: not-allowed
}

.product-media-slider__nav-button--prev svg {
    transform: rotate(180deg)
}

.product-media-slider__dots {
    display: flex;
    justify-content: center;
    padding: 0 var(--spacing-24);
    position: absolute;
    inset: auto 0 0
}

.product-media-slider__dot {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--spacing-24) var(--spacing-2);
    border: 0;
    background: transparent;
    cursor: pointer
}

.product-media-slider__dot:after {
    content: "";
    display: block;
    height: .2rem;
    width: .6rem;
    background: color-mix(in oklab, var(--color-primary) 40%, transparent);
    transition: width .3s ease, background-color .3s ease
}

.product-media-slider__dot--active:after {
    background: var(--color-primary);
    width: var(--spacing-24)
}

@media screen and (max-width:749px) {
    .product-media-slider {
        width: calc(100% + var(--page-margin) * 2);
        margin-inline: calc(-1 * var(--page-margin))
    }
    .product-media-slider .product-badges {
        display: none
    }
}

@media screen and (min-width:750px) {
    .product-media-slider__container {
        flex-direction: column;
        gap: var(--spacing-4)
    }
    .product-media-slider__slide {
        flex: none;
        width: 100%
    }
    .product-media-slider__navigation,
    .product-media-slider__dots {
        display: none
    }
}

product-swatches-component {
    display: block
}

.product-swatches {
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing-2);
    padding: 0;
    margin: 0
}

.product-swatches__color-name {
    margin: var(--spacing-12) 0 0
}

.product-swatches__swatch {
    display: block;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    border: 1px solid var(--color-muted);
    background-size: cover;
    background-position: center;
    outline-offset: 2px;
    transition: opacity .2s ease, outline .15s ease
}

.product-swatches__swatch:focus-visible {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px
}

.product-swatches__swatch--image:focus-visible {
    outline: none
}

.product-swatches__swatch--image:focus-visible:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border: 2px solid var(--color-primary);
    z-index: 1;
    pointer-events: none
}

.product-swatches__swatch:hover:not(.product-swatches__swatch--active):not(.product-swatches__swatch--image) {
    opacity: .7
}

.product-swatches__swatch--active:not(.product-swatches__swatch--image) {
    outline: 1px solid var(--color-primary)
}

.product-swatches__swatch--image {
    position: relative;
    display: block;
    width: 5.2rem;
    height: auto;
    border-radius: 0;
    background: none;
    border: none;
    aspect-ratio: var(--product-image-ratio)
}

.product-swatches__swatch--image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    clip-path: inset(0);
    transition: opacity .2s ease
}

.product-swatches__swatch--image:hover:not(.product-swatches__swatch--active) img {
    opacity: .7
}

.product-swatches__swatch--image.product-swatches__swatch--active:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    background-color: var(--color-primary);
    z-index: 1;
    transform-origin: left;
    animation: swatch-underline .3s ease forwards
}

@keyframes swatch-underline {
    0% {
        transform: scaleX(0)
    }
    to {
        transform: scaleX(1)
    }
}

.product-swatches__swatch--unavailable {
    opacity: .5
}

.product-swatches__swatch--unavailable:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: linear-gradient(to top right, transparent calc(50% - .5px), var(--color-muted) calc(50% - .5px), var(--color-muted) calc(50% + .5px), transparent calc(50% + .5px));
    pointer-events: none
}

.quantity-selector {
    display: inline-grid;
    grid-template-columns: auto minmax(3.6rem, auto) auto;
    align-items: center;
    border: 1px solid var(--color-border);
    overflow: hidden
}

.quantity-selector input {
    width: 3.6rem;
    text-align: center;
    border: 0;
    -moz-appearance: textfield;
    -webkit-appearance: textfield;
    appearance: textfield
}

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

.quantity-selector input:focus,
.quantity-selector input:focus-visible {
    outline-offset: -2px
}

.quantity-selector .button {
    min-height: 3.2rem;
    min-width: 3.2rem;
    border-radius: 0;
    color: var(--color-foreground);
    background: transparent;
    border: 0
}

.quantity-selector .button:focus-visible {
    outline-offset: -2px
}

.seo-list__nav {
    overflow: auto;
    -ms-overflow-style: none;
    scrollbar-width: none
}

@media screen and (max-width:749px) {
    .seo-list__nav {
        margin-inline: calc(var(--page-margin) * -1);
        padding-inline: var(--page-margin)
    }
}

.seo-list__nav::-webkit-scrollbar {
    display: none
}

.seo-list__list {
    display: flex;
    gap: var(--spacing-24);
    list-style: none;
    padding: 0;
    white-space: nowrap
}

@media screen and (max-width:749px) {
    .seo-list__item:last-child {
        padding-right: var(--page-margin)
    }
}

.seo-list__link {
    display: block;
    text-decoration: none
}

sticky-add-to-cart {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 3;
    flex-direction: column;
    gap: 1.2rem;
    padding: 1.2rem 1.6rem 3.2rem;
    background: #ffffffbf;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 -12px 32px -8px #0000001f;
    transform: translateY(100%);
    transition: transform .3s cubic-bezier(.25, 0, .3, 1);
    will-change: transform
}

sticky-add-to-cart:not([hidden]) {
    transform: translateY(0)
}

@media screen and (min-width:750px) {
    sticky-add-to-cart {
        display: none!important
    }
}

.sticky-add-to-cart__options {
    display: flex;
    flex-direction: column;
    gap: .8rem
}

.sticky-add-to-cart__select-wrapper {
    display: flex;
    flex-direction: column
}

.sticky-add-to-cart__select {
    width: 100%;
    min-height: 4.4rem;
    padding-inline: 1.2rem;
    border: 1px solid var(--color-border);
    background-color: transparent;
    font-size: var(--body-3-font-size);
    letter-spacing: var(--body-3-letter-spacing);
    line-height: 1;
    -webkit-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 1.2rem center;
    padding-inline-end: 3.2rem
}

.sticky-add-to-cart__form {
    display: contents
}

.store-card {
    position: relative;
    border: 1px solid var(--color-border);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    background: color-mix(in oklab, var(--color-background) 96%, var(--color-foreground))
}

.store-card__content {
    padding: var(--spacing-14);
    display: grid;
    gap: var(--spacing-10)
}

.store-card__title {
    margin: 0
}

.text-block {
    color: inherit;
    max-width: var(--text-block-max-width, none);
    text-wrap: var(--text-block-wrap, pretty)
}

.text-block--width-fill {
    width: 100%
}

.text-block--width-fit {
    width: fit-content;
    max-width: min(100%, var(--text-block-max-width, 100%))
}

.text-block--align-center {
    margin-inline: auto
}

.text-block--align-right {
    margin-inline-start: auto
}

.text-block :is(h1,
h2,
h3,
h4,
h5,
h6,
p,
li,
blockquote,
span,
a) {
    text-align: inherit!important
}

.text-block--uppercase {
    text-transform: uppercase
}

.text-block:is(.text-block--heading,
.text-block--h1,
.text-block--h2,
.text-block--h3,
.text-block--h4,
.text-block--button,
.text-block--link,
.text-block--body-1,
.text-block--body-2,
.text-block--body-3) :is(h1,
h2,
h3,
h4,
h5,
h6,
p,
li,
small,
blockquote,
a,
span,
em) {
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    font-weight: inherit
}

.text-block--heading {
    font-size: var(--headline-font-size);
    line-height: var(--headline-line-height);
    letter-spacing: var(--headline-letter-spacing);
    font-family: var(--font-heading-family);
    font-weight: var(--heading-font-weight)
}

.text-block--h1 {
    font-size: var(--h1-font-size);
    line-height: var(--h1-line-height);
    letter-spacing: var(--h1-letter-spacing);
    font-family: var(--font-heading-family);
    font-weight: var(--heading-font-weight)
}

.text-block--h2 {
    font-size: var(--h2-font-size);
    line-height: var(--h2-line-height);
    letter-spacing: var(--h2-letter-spacing);
    font-family: var(--font-heading-family);
    font-weight: var(--heading-font-weight)
}

.text-block--h3 {
    font-size: var(--h3-font-size);
    line-height: var(--h3-line-height);
    letter-spacing: var(--h3-letter-spacing);
    font-family: var(--font-heading-family);
    font-weight: var(--heading-font-weight)
}

.text-block--h4 {
    font-size: var(--h4-font-size);
    line-height: var(--h4-line-height);
    letter-spacing: var(--h4-letter-spacing);
    font-family: var(--font-heading-family);
    font-weight: var(--heading-font-weight)
}

.text-block--button {
    font-size: var(--button-font-size);
    line-height: var(--button-line-height);
    letter-spacing: var(--button-letter-spacing)
}

.text-block--link {
    font-size: var(--link-font-size);
    line-height: var(--link-line-height);
    letter-spacing: var(--link-letter-spacing)
}

.text-block--body-1 {
    font-size: var(--body-1-font-size);
    line-height: var(--body-1-line-height);
    letter-spacing: var(--body-1-letter-spacing)
}

.text-block--body-2 {
    font-size: var(--body-2-font-size);
    line-height: var(--body-2-line-height);
    letter-spacing: var(--body-2-letter-spacing)
}

.text-block--body-3 {
    font-size: var(--body-3-font-size);
    line-height: var(--body-3-line-height);
    letter-spacing: var(--body-3-letter-spacing)
}

.text-block--placeholder {
    font-style: italic
}

.text-block__rest {
    overflow: hidden;
    max-height: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    position: absolute;
    width: 1px;
    height: 1px
}

.text-block__rest>:first-child {
    margin-block-start: 0
}

.text-block__rest>:last-child {
    margin-block-end: 0
}

.text-block__rest.text-block__rest--expanded {
    overflow: hidden;
    max-height: none;
    transition: max-height .3s ease;
    clip: auto;
    clip-path: none;
    position: static;
    width: auto;
    height: auto
}

.text-block__read-more-toggle[aria-expanded=true] {
    margin-block-start: 1em
}

.text-block__read-more-toggle {
    cursor: pointer;
    margin-block-start: 0;
    transition: margin-block-start .3s ease;
    text-decoration: underline;
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    color: inherit
}

.text-block__read-less-label,
.text-block__read-more-toggle[aria-expanded=true] .text-block__read-more-label {
    display: none
}

.text-block__read-more-toggle[aria-expanded=true] .text-block__read-less-label {
    display: inline
}

.variant-option {
    border: 0;
    margin: 0;
    padding: 0
}

.variant-option__radios {
    --input-min-width: 6rem;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(var(--input-min-width), 1fr));
    padding-block-start: 1px;
    padding-inline-start: 1px
}

@media screen and (max-width:749px) {
    .variant-option__radios {
        --input-min-width: 4rem
    }
}

.variant-option__radios:has(.variant-option__radio:nth-child(5)) {
    grid-template-columns: repeat(auto-fit, minmax(var(--input-min-width), 1fr))
}

.variant-option__radio {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 4.4rem;
    padding-inline: 1rem;
    border: 1px solid var(--color-border);
    margin-block-start: -1px;
    margin-inline-start: -1px;
    cursor: pointer;
    font-size: var(--body-3-font-size);
    letter-spacing: var(--body-3-letter-spacing);
    line-height: 1;
    text-box: trim-both cap alphabetic;
    background-color: var(--color-background);
    transition: background-color .2s ease, color .2s ease, border-color .2s ease
}

.variant-option__radio:hover:not(:has(input:checked)) {
    border-color: var(--color-primary);
    z-index: 1
}

.variant-option__radio input {
    position: absolute;
    opacity: 0;
    pointer-events: none
}

.variant-option__radio:has(input:focus-visible) {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
    z-index: 2
}

.variant-option__radio:has(input:checked) {
    background-color: var(--color-primary);
    color: var(--color-primary-foreground);
    border-color: var(--color-primary);
    z-index: 1
}

.variant-option__radio--unavailable {
    color: var(--color-muted)
}

.variant-option__radio--unavailable:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: linear-gradient(to top right, transparent calc(50% - .5px), var(--color-border) calc(50% - .5px), var(--color-border) calc(50% + .5px), transparent calc(50% + .5px));
    pointer-events: none
}

.view-toggle {
    display: flex;
    justify-content: flex-end
}

view-toggle:not(:defined) .view-toggle__select {
    color: transparent
}

.view-toggle__select {
    -webkit-appearance: none;
    appearance: none;
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3Csvg width='11' height='6' viewBox='0 0 11 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.3201 0.384115L5.32007 4.55078L0.320069 0.384114' stroke='%230D0D0D'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: right .5em center;
    border: 0;
    color: var(--color-foreground);
    cursor: pointer;
    font-family: var(--font-heading-family);
    font-weight: 700;
    padding: var(--spacing-0);
    padding-right: var(--spacing-24);
    text-transform: uppercase
}

.view-toggle__select:focus-visible {
    outline: var(--focus-ring);
    outline-offset: 2px
}


/*# sourceMappingURL=/cdn/shop/t/115/compiled_assets/styles.css.map?v=105774987027844602721785251278 */