@charset "UTF-8"; /*! ============================================================================
  Broadcast Theme | (c) Presidio Creative
============================================================================== */
/*! Flickity v3.0.0
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
    position: relative
}

.flickity-enabled:focus {
    outline: none
}

.flickity-viewport {
    overflow: hidden;
    position: relative;
    height: 100%
}

.is-initialized .flickity-viewport {
    transition: height 0.3s
}

.flickity-slider {
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    touch-action: pan-y;
    -webkit-user-select: none;
    -webkit-user-drag: none
}

.flickity-slider>.flickity-cell {
    position: absolute
}

.flickity-viewport {
    touch-action: pan-y
}

.flickity-cell {
    position: absolute;
    left: 0
}

.flickity-enabled.is-draggable {
    -webkit-tap-highlight-color: #fff0;
    -webkit-user-select: none;
    user-select: none
}

.flickity-enabled.is-draggable .flickity-viewport {
    cursor: move;
    cursor: grab
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
    cursor: grabbing
}

.flickity-button {
    position: absolute;
    border: none;
    background: none;
    color: inherit
}

.flickity-button-hide .flickity-button {
    opacity: 0;
    visibility: hidden;
    pointer-events: none
}

.flickity-button:hover {
    cursor: pointer
}

body:not(.is-focused) .flickity-button:focus {
    outline: none
}

.flickity-button:active {
    opacity: 1
}

.flickity-button:disabled {
    opacity: 0;
    cursor: auto;
    visibility: hidden;
    pointer-events: none
}

.flickity-prev-next-button {
    --bg: var(--COLOR-BG);
    --bg-brighter: var(--COLOR-BG-BRIGHTER);
    --icon-size: 28px;
    --btn-size: 40px;
    top: 50%;
    width: var(--btn-size);
    height: var(--btn-size);
    padding: 0;
    background-color: var(--bg);
    border-radius: var(--RADIUS);
    box-shadow: 0 2px 6px rgb(0 0 0 / 0.04),0 2px 2px rgb(0 0 0 / 0.02);
    margin-top: calc(var(--btn-size) / -2)
}

@media only screen and (max-width: 749px) {
    .flickity-prev-next-button {
        display:none
    }
}

.flickity-prev-next-button:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: var(--bg-brighter);
    opacity: 1;
    transform: translate3d(0,100%,0);
    transition: transform 0.5s cubic-bezier(0.33,0,0,1);
    will-change: transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

@media (hover: hover) {
    .flickity-prev-next-button {
        opacity:0;
        transition: opacity 0.2s ease-in-out,transform 0.2s ease-in-out,visibility 0.2s
    }

    .flickity-prev-next-button.previous {
        transform: translateX(-100%)
    }

    .flickity-prev-next-button.next {
        transform: translateX(100%)
    }

    .flickity-prev-next-button:hover:after {
        transform: translate3d(0,0,0)
    }

    .flickity-enabled:hover .flickity-prev-next-button.previous:not(:disabled),.flickity-enabled:hover .flickity-prev-next-button.next:not(:disabled),.is-focused .flickity-prev-next-button.previous:not(:disabled):focus,.is-focused .flickity-prev-next-button.next:not(:disabled):focus {
        opacity: 1;
        transform: translate3d(0,0,0)
    }
}

.flickity-prev-next-button:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: var(--icon-size);
    height: var(--icon-size);
    background: var(--text-dark);
    -webkit-mask-size: var(--icon-size);
    mask-size: var(--icon-size);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center center;
    mask-position: center center;
    max-width: 100%;
    max-height: 100%;
    border-radius: var(--RADIUS)
}

.flickity-prev-next-button {
    overflow: hidden
}

.flickity-prev-next-button.previous:before {
    -webkit-mask-image: var(--ICON-ARROW-LEFT);
    mask-image: var(--ICON-ARROW-LEFT)
}

.flickity-prev-next-button.next:before {
    -webkit-mask-image: var(--ICON-ARROW-RIGHT);
    mask-image: var(--ICON-ARROW-RIGHT)
}

.flickity-button-icon {
    display: none
}

.flickity-prev-next-button.previous {
    left: max(var(--outer), calc(var(--btn-size) / 2))
}

.flickity-prev-next-button.next {
    right: max(var(--outer), calc(var(--btn-size) / 2))
}

.is-focused .flickity-prev-next-button {
    transition: opacity 0.2s ease-in-out
}

.flickity-rtl .flickity-prev-next-button.previous {
    left: auto;
    right: max(var(--outer), calc(var(--btn-size) / 2))
}

.flickity-rtl .flickity-prev-next-button.next {
    right: auto;
    left: max(var(--outer), calc(var(--btn-size) / 2))
}

.flickity-page-dots {
    position: absolute;
    width: 100%;
    bottom: -25px;
    padding: 0;
    margin: 0;
    list-style: none;
    justify-content: var(--alignment-text-align,center);
    line-height: 1;
    display: flex
}

.flickity-rtl .flickity-page-dots {
    direction: rtl
}

.flickity-page-dot {
    display: block;
    width: 10px;
    height: 10px;
    padding: 0;
    margin: 0 5px;
    border: 1px solid var(--text);
    border-radius: 50%;
    font-size: 0;
    line-height: 0;
    text-indent: -100%;
    font-style: normal;
    overflow: hidden;
    cursor: pointer;
    transition: opacity 0.3s ease,background 0.3s ease
}

.flickity-page-dot:first-child {
    margin-left: 0
}

.flickity-page-dot:last-child {
    margin-right: 0
}

.flickity-page-dot:only-child {
    display: none
}

.flickity-page-dot.is-selected {
    background: var(--text)
}

[data-dots=line] .flickity-page-dot {
    width: 40px;
    height: 2px;
    border-radius: initial;
    opacity: 0.25;
    background: currentColor
}

[data-dots=line] .flickity-page-dot:hover {
    opacity: 0.45
}

[data-dots=line] .flickity-page-dot.is-selected {
    opacity: 1
}

[data-dots=hidden] .flickity-page-dot {
    display: none
}

.flickity-enabled.is-fade .flickity-slider>* {
    pointer-events: none;
    z-index: 0
}

.flickity-enabled.is-fade .flickity-slider>.is-selected {
    pointer-events: auto;
    z-index: 1
}

.upsell-products .flickity-enabled[data-dots=line],.upsell-products .flickity-enabled[data-dots=circle],.bundle-products .flickity-enabled[data-dots=line],.bundle-products .flickity-enabled[data-dots=circle],.complementary-products .flickity-enabled[data-dots=line],.complementary-products .flickity-enabled[data-dots=circle] {
    padding-bottom: 20px
}

.is-fade .flickity-cell {
    opacity: 0!important;
    visibility: hidden;
    transition: opacity 0.8s ease,visibility 0.8s;
    will-change: transform,opacity
}

.is-fade .flickity-cell.is-selected {
    opacity: 1!important;
    visibility: visible
}

@media only screen and (min-width: 750px) {
    [data-slider-desktop]:after {
        content:"flickity";
        display: none
    }

    [data-slider]:not([data-slider-fullwidth]):not(.flickity-enabled) {
        display: flex;
        overflow-x: auto;
        overflow-y: hidden;
        scrollbar-width: none;
        -ms-overflow-style: none
    }

    [data-slider]:not([data-slider-fullwidth]):not(.flickity-enabled)::-webkit-scrollbar {
        display: none
    }

    .grid-outer [data-slider]:not([data-slider-fullwidth]):not(.flickity-enabled) {
        padding-left: var(--outer);
        padding-right: var(--outer);
        margin-left: var(--outer-offset);
        margin-right: var(--outer-offset)
    }
}

.aos-initialized [data-aos][data-aos][data-aos-duration="50"],.aos-initialized body[data-aos-duration="50"] [data-aos] {
    transition-duration: 50ms
}

.aos-initialized [data-aos][data-aos][data-aos-delay="50"],.aos-initialized body[data-aos-delay="50"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="50"].aos-animate,.aos-initialized body[data-aos-delay="50"] [data-aos].aos-animate {
    transition-delay: 50ms
}

.aos-initialized [data-aos][data-aos][data-aos-duration="100"],.aos-initialized body[data-aos-duration="100"] [data-aos] {
    transition-duration: 0.1s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="100"],.aos-initialized body[data-aos-delay="100"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="100"].aos-animate,.aos-initialized body[data-aos-delay="100"] [data-aos].aos-animate {
    transition-delay: 0.1s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="150"],.aos-initialized body[data-aos-duration="150"] [data-aos] {
    transition-duration: 0.15s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="150"],.aos-initialized body[data-aos-delay="150"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="150"].aos-animate,.aos-initialized body[data-aos-delay="150"] [data-aos].aos-animate {
    transition-delay: 0.15s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="200"],.aos-initialized body[data-aos-duration="200"] [data-aos] {
    transition-duration: 0.2s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="200"],.aos-initialized body[data-aos-delay="200"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="200"].aos-animate,.aos-initialized body[data-aos-delay="200"] [data-aos].aos-animate {
    transition-delay: 0.2s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="250"],.aos-initialized body[data-aos-duration="250"] [data-aos] {
    transition-duration: 0.25s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="250"],.aos-initialized body[data-aos-delay="250"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="250"].aos-animate,.aos-initialized body[data-aos-delay="250"] [data-aos].aos-animate {
    transition-delay: 0.25s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="300"],.aos-initialized body[data-aos-duration="300"] [data-aos] {
    transition-duration: 0.3s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="300"],.aos-initialized body[data-aos-delay="300"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="300"].aos-animate,.aos-initialized body[data-aos-delay="300"] [data-aos].aos-animate {
    transition-delay: 0.3s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="350"],.aos-initialized body[data-aos-duration="350"] [data-aos] {
    transition-duration: 0.35s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="350"],.aos-initialized body[data-aos-delay="350"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="350"].aos-animate,.aos-initialized body[data-aos-delay="350"] [data-aos].aos-animate {
    transition-delay: 0.35s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="400"],.aos-initialized body[data-aos-duration="400"] [data-aos] {
    transition-duration: 0.4s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="400"],.aos-initialized body[data-aos-delay="400"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="400"].aos-animate,.aos-initialized body[data-aos-delay="400"] [data-aos].aos-animate {
    transition-delay: 0.4s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="450"],.aos-initialized body[data-aos-duration="450"] [data-aos] {
    transition-duration: 0.45s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="450"],.aos-initialized body[data-aos-delay="450"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="450"].aos-animate,.aos-initialized body[data-aos-delay="450"] [data-aos].aos-animate {
    transition-delay: 0.45s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="500"],.aos-initialized body[data-aos-duration="500"] [data-aos] {
    transition-duration: 0.5s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="500"],.aos-initialized body[data-aos-delay="500"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="500"].aos-animate,.aos-initialized body[data-aos-delay="500"] [data-aos].aos-animate {
    transition-delay: 0.5s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="550"],.aos-initialized body[data-aos-duration="550"] [data-aos] {
    transition-duration: 0.55s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="550"],.aos-initialized body[data-aos-delay="550"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="550"].aos-animate,.aos-initialized body[data-aos-delay="550"] [data-aos].aos-animate {
    transition-delay: 0.55s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="600"],.aos-initialized body[data-aos-duration="600"] [data-aos] {
    transition-duration: 0.6s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="600"],.aos-initialized body[data-aos-delay="600"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="600"].aos-animate,.aos-initialized body[data-aos-delay="600"] [data-aos].aos-animate {
    transition-delay: 0.6s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="650"],.aos-initialized body[data-aos-duration="650"] [data-aos] {
    transition-duration: 0.65s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="650"],.aos-initialized body[data-aos-delay="650"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="650"].aos-animate,.aos-initialized body[data-aos-delay="650"] [data-aos].aos-animate {
    transition-delay: 0.65s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="700"],.aos-initialized body[data-aos-duration="700"] [data-aos] {
    transition-duration: 0.7s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="700"],.aos-initialized body[data-aos-delay="700"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="700"].aos-animate,.aos-initialized body[data-aos-delay="700"] [data-aos].aos-animate {
    transition-delay: 0.7s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="750"],.aos-initialized body[data-aos-duration="750"] [data-aos] {
    transition-duration: 0.75s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="750"],.aos-initialized body[data-aos-delay="750"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="750"].aos-animate,.aos-initialized body[data-aos-delay="750"] [data-aos].aos-animate {
    transition-delay: 0.75s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="800"],.aos-initialized body[data-aos-duration="800"] [data-aos] {
    transition-duration: 0.8s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="800"],.aos-initialized body[data-aos-delay="800"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="800"].aos-animate,.aos-initialized body[data-aos-delay="800"] [data-aos].aos-animate {
    transition-delay: 0.8s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="850"],.aos-initialized body[data-aos-duration="850"] [data-aos] {
    transition-duration: 0.85s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="850"],.aos-initialized body[data-aos-delay="850"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="850"].aos-animate,.aos-initialized body[data-aos-delay="850"] [data-aos].aos-animate {
    transition-delay: 0.85s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="900"],.aos-initialized body[data-aos-duration="900"] [data-aos] {
    transition-duration: 0.9s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="900"],.aos-initialized body[data-aos-delay="900"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="900"].aos-animate,.aos-initialized body[data-aos-delay="900"] [data-aos].aos-animate {
    transition-delay: 0.9s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="950"],.aos-initialized body[data-aos-duration="950"] [data-aos] {
    transition-duration: 0.95s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="950"],.aos-initialized body[data-aos-delay="950"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="950"].aos-animate,.aos-initialized body[data-aos-delay="950"] [data-aos].aos-animate {
    transition-delay: 0.95s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1000"],.aos-initialized body[data-aos-duration="1000"] [data-aos] {
    transition-duration: 1s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1000"],.aos-initialized body[data-aos-delay="1000"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1000"].aos-animate,.aos-initialized body[data-aos-delay="1000"] [data-aos].aos-animate {
    transition-delay: 1s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1050"],.aos-initialized body[data-aos-duration="1050"] [data-aos] {
    transition-duration: 1.05s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1050"],.aos-initialized body[data-aos-delay="1050"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1050"].aos-animate,.aos-initialized body[data-aos-delay="1050"] [data-aos].aos-animate {
    transition-delay: 1.05s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1100"],.aos-initialized body[data-aos-duration="1100"] [data-aos] {
    transition-duration: 1.1s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1100"],.aos-initialized body[data-aos-delay="1100"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1100"].aos-animate,.aos-initialized body[data-aos-delay="1100"] [data-aos].aos-animate {
    transition-delay: 1.1s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1150"],.aos-initialized body[data-aos-duration="1150"] [data-aos] {
    transition-duration: 1.15s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1150"],.aos-initialized body[data-aos-delay="1150"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1150"].aos-animate,.aos-initialized body[data-aos-delay="1150"] [data-aos].aos-animate {
    transition-delay: 1.15s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1200"],.aos-initialized body[data-aos-duration="1200"] [data-aos] {
    transition-duration: 1.2s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1200"],.aos-initialized body[data-aos-delay="1200"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1200"].aos-animate,.aos-initialized body[data-aos-delay="1200"] [data-aos].aos-animate {
    transition-delay: 1.2s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1250"],.aos-initialized body[data-aos-duration="1250"] [data-aos] {
    transition-duration: 1.25s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1250"],.aos-initialized body[data-aos-delay="1250"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1250"].aos-animate,.aos-initialized body[data-aos-delay="1250"] [data-aos].aos-animate {
    transition-delay: 1.25s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1300"],.aos-initialized body[data-aos-duration="1300"] [data-aos] {
    transition-duration: 1.3s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1300"],.aos-initialized body[data-aos-delay="1300"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1300"].aos-animate,.aos-initialized body[data-aos-delay="1300"] [data-aos].aos-animate {
    transition-delay: 1.3s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1350"],.aos-initialized body[data-aos-duration="1350"] [data-aos] {
    transition-duration: 1.35s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1350"],.aos-initialized body[data-aos-delay="1350"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1350"].aos-animate,.aos-initialized body[data-aos-delay="1350"] [data-aos].aos-animate {
    transition-delay: 1.35s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1400"],.aos-initialized body[data-aos-duration="1400"] [data-aos] {
    transition-duration: 1.4s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1400"],.aos-initialized body[data-aos-delay="1400"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1400"].aos-animate,.aos-initialized body[data-aos-delay="1400"] [data-aos].aos-animate {
    transition-delay: 1.4s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1450"],.aos-initialized body[data-aos-duration="1450"] [data-aos] {
    transition-duration: 1.45s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1450"],.aos-initialized body[data-aos-delay="1450"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1450"].aos-animate,.aos-initialized body[data-aos-delay="1450"] [data-aos].aos-animate {
    transition-delay: 1.45s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1500"],.aos-initialized body[data-aos-duration="1500"] [data-aos] {
    transition-duration: 1.5s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1500"],.aos-initialized body[data-aos-delay="1500"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1500"].aos-animate,.aos-initialized body[data-aos-delay="1500"] [data-aos].aos-animate {
    transition-delay: 1.5s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1550"],.aos-initialized body[data-aos-duration="1550"] [data-aos] {
    transition-duration: 1.55s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1550"],.aos-initialized body[data-aos-delay="1550"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1550"].aos-animate,.aos-initialized body[data-aos-delay="1550"] [data-aos].aos-animate {
    transition-delay: 1.55s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1600"],.aos-initialized body[data-aos-duration="1600"] [data-aos] {
    transition-duration: 1.6s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1600"],.aos-initialized body[data-aos-delay="1600"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1600"].aos-animate,.aos-initialized body[data-aos-delay="1600"] [data-aos].aos-animate {
    transition-delay: 1.6s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1650"],.aos-initialized body[data-aos-duration="1650"] [data-aos] {
    transition-duration: 1.65s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1650"],.aos-initialized body[data-aos-delay="1650"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1650"].aos-animate,.aos-initialized body[data-aos-delay="1650"] [data-aos].aos-animate {
    transition-delay: 1.65s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1700"],.aos-initialized body[data-aos-duration="1700"] [data-aos] {
    transition-duration: 1.7s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1700"],.aos-initialized body[data-aos-delay="1700"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1700"].aos-animate,.aos-initialized body[data-aos-delay="1700"] [data-aos].aos-animate {
    transition-delay: 1.7s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1750"],.aos-initialized body[data-aos-duration="1750"] [data-aos] {
    transition-duration: 1.75s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1750"],.aos-initialized body[data-aos-delay="1750"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1750"].aos-animate,.aos-initialized body[data-aos-delay="1750"] [data-aos].aos-animate {
    transition-delay: 1.75s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1800"],.aos-initialized body[data-aos-duration="1800"] [data-aos] {
    transition-duration: 1.8s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1800"],.aos-initialized body[data-aos-delay="1800"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1800"].aos-animate,.aos-initialized body[data-aos-delay="1800"] [data-aos].aos-animate {
    transition-delay: 1.8s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1850"],.aos-initialized body[data-aos-duration="1850"] [data-aos] {
    transition-duration: 1.85s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1850"],.aos-initialized body[data-aos-delay="1850"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1850"].aos-animate,.aos-initialized body[data-aos-delay="1850"] [data-aos].aos-animate {
    transition-delay: 1.85s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1900"],.aos-initialized body[data-aos-duration="1900"] [data-aos] {
    transition-duration: 1.9s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1900"],.aos-initialized body[data-aos-delay="1900"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1900"].aos-animate,.aos-initialized body[data-aos-delay="1900"] [data-aos].aos-animate {
    transition-delay: 1.9s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="1950"],.aos-initialized body[data-aos-duration="1950"] [data-aos] {
    transition-duration: 1.95s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1950"],.aos-initialized body[data-aos-delay="1950"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="1950"].aos-animate,.aos-initialized body[data-aos-delay="1950"] [data-aos].aos-animate {
    transition-delay: 1.95s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2000"],.aos-initialized body[data-aos-duration="2000"] [data-aos] {
    transition-duration: 2s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2000"],.aos-initialized body[data-aos-delay="2000"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2000"].aos-animate,.aos-initialized body[data-aos-delay="2000"] [data-aos].aos-animate {
    transition-delay: 2s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2050"],.aos-initialized body[data-aos-duration="2050"] [data-aos] {
    transition-duration: 2.05s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2050"],.aos-initialized body[data-aos-delay="2050"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2050"].aos-animate,.aos-initialized body[data-aos-delay="2050"] [data-aos].aos-animate {
    transition-delay: 2.05s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2100"],.aos-initialized body[data-aos-duration="2100"] [data-aos] {
    transition-duration: 2.1s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2100"],.aos-initialized body[data-aos-delay="2100"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2100"].aos-animate,.aos-initialized body[data-aos-delay="2100"] [data-aos].aos-animate {
    transition-delay: 2.1s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2150"],.aos-initialized body[data-aos-duration="2150"] [data-aos] {
    transition-duration: 2.15s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2150"],.aos-initialized body[data-aos-delay="2150"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2150"].aos-animate,.aos-initialized body[data-aos-delay="2150"] [data-aos].aos-animate {
    transition-delay: 2.15s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2200"],.aos-initialized body[data-aos-duration="2200"] [data-aos] {
    transition-duration: 2.2s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2200"],.aos-initialized body[data-aos-delay="2200"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2200"].aos-animate,.aos-initialized body[data-aos-delay="2200"] [data-aos].aos-animate {
    transition-delay: 2.2s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2250"],.aos-initialized body[data-aos-duration="2250"] [data-aos] {
    transition-duration: 2.25s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2250"],.aos-initialized body[data-aos-delay="2250"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2250"].aos-animate,.aos-initialized body[data-aos-delay="2250"] [data-aos].aos-animate {
    transition-delay: 2.25s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2300"],.aos-initialized body[data-aos-duration="2300"] [data-aos] {
    transition-duration: 2.3s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2300"],.aos-initialized body[data-aos-delay="2300"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2300"].aos-animate,.aos-initialized body[data-aos-delay="2300"] [data-aos].aos-animate {
    transition-delay: 2.3s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2350"],.aos-initialized body[data-aos-duration="2350"] [data-aos] {
    transition-duration: 2.35s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2350"],.aos-initialized body[data-aos-delay="2350"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2350"].aos-animate,.aos-initialized body[data-aos-delay="2350"] [data-aos].aos-animate {
    transition-delay: 2.35s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2400"],.aos-initialized body[data-aos-duration="2400"] [data-aos] {
    transition-duration: 2.4s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2400"],.aos-initialized body[data-aos-delay="2400"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2400"].aos-animate,.aos-initialized body[data-aos-delay="2400"] [data-aos].aos-animate {
    transition-delay: 2.4s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2450"],.aos-initialized body[data-aos-duration="2450"] [data-aos] {
    transition-duration: 2.45s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2450"],.aos-initialized body[data-aos-delay="2450"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2450"].aos-animate,.aos-initialized body[data-aos-delay="2450"] [data-aos].aos-animate {
    transition-delay: 2.45s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2500"],.aos-initialized body[data-aos-duration="2500"] [data-aos] {
    transition-duration: 2.5s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2500"],.aos-initialized body[data-aos-delay="2500"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2500"].aos-animate,.aos-initialized body[data-aos-delay="2500"] [data-aos].aos-animate {
    transition-delay: 2.5s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2550"],.aos-initialized body[data-aos-duration="2550"] [data-aos] {
    transition-duration: 2.55s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2550"],.aos-initialized body[data-aos-delay="2550"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2550"].aos-animate,.aos-initialized body[data-aos-delay="2550"] [data-aos].aos-animate {
    transition-delay: 2.55s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2600"],.aos-initialized body[data-aos-duration="2600"] [data-aos] {
    transition-duration: 2.6s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2600"],.aos-initialized body[data-aos-delay="2600"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2600"].aos-animate,.aos-initialized body[data-aos-delay="2600"] [data-aos].aos-animate {
    transition-delay: 2.6s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2650"],.aos-initialized body[data-aos-duration="2650"] [data-aos] {
    transition-duration: 2.65s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2650"],.aos-initialized body[data-aos-delay="2650"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2650"].aos-animate,.aos-initialized body[data-aos-delay="2650"] [data-aos].aos-animate {
    transition-delay: 2.65s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2700"],.aos-initialized body[data-aos-duration="2700"] [data-aos] {
    transition-duration: 2.7s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2700"],.aos-initialized body[data-aos-delay="2700"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2700"].aos-animate,.aos-initialized body[data-aos-delay="2700"] [data-aos].aos-animate {
    transition-delay: 2.7s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2750"],.aos-initialized body[data-aos-duration="2750"] [data-aos] {
    transition-duration: 2.75s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2750"],.aos-initialized body[data-aos-delay="2750"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2750"].aos-animate,.aos-initialized body[data-aos-delay="2750"] [data-aos].aos-animate {
    transition-delay: 2.75s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2800"],.aos-initialized body[data-aos-duration="2800"] [data-aos] {
    transition-duration: 2.8s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2800"],.aos-initialized body[data-aos-delay="2800"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2800"].aos-animate,.aos-initialized body[data-aos-delay="2800"] [data-aos].aos-animate {
    transition-delay: 2.8s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2850"],.aos-initialized body[data-aos-duration="2850"] [data-aos] {
    transition-duration: 2.85s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2850"],.aos-initialized body[data-aos-delay="2850"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2850"].aos-animate,.aos-initialized body[data-aos-delay="2850"] [data-aos].aos-animate {
    transition-delay: 2.85s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2900"],.aos-initialized body[data-aos-duration="2900"] [data-aos] {
    transition-duration: 2.9s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2900"],.aos-initialized body[data-aos-delay="2900"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2900"].aos-animate,.aos-initialized body[data-aos-delay="2900"] [data-aos].aos-animate {
    transition-delay: 2.9s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="2950"],.aos-initialized body[data-aos-duration="2950"] [data-aos] {
    transition-duration: 2.95s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2950"],.aos-initialized body[data-aos-delay="2950"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="2950"].aos-animate,.aos-initialized body[data-aos-delay="2950"] [data-aos].aos-animate {
    transition-delay: 2.95s
}

.aos-initialized [data-aos][data-aos][data-aos-duration="3000"],.aos-initialized body[data-aos-duration="3000"] [data-aos] {
    transition-duration: 3s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="3000"],.aos-initialized body[data-aos-delay="3000"] [data-aos] {
    transition-delay: 0s
}

.aos-initialized [data-aos][data-aos][data-aos-delay="3000"].aos-animate,.aos-initialized body[data-aos-delay="3000"] [data-aos].aos-animate {
    transition-delay: 3s
}

.aos-initialized [data-aos][data-aos][data-aos-easing=linear],.aos-initialized body[data-aos-easing=linear] [data-aos] {
    transition-timing-function: cubic-bezier(0.25,0.25,0.75,0.75)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease],.aos-initialized body[data-aos-easing=ease] [data-aos] {
    transition-timing-function: ease
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in],.aos-initialized body[data-aos-easing=ease-in] [data-aos] {
    transition-timing-function: ease-in
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-out],.aos-initialized body[data-aos-easing=ease-out] [data-aos] {
    transition-timing-function: ease-out
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-out],.aos-initialized body[data-aos-easing=ease-in-out] [data-aos] {
    transition-timing-function: ease-in-out
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-back],.aos-initialized body[data-aos-easing=ease-in-back] [data-aos] {
    transition-timing-function: cubic-bezier(0.6,-0.28,0.735,0.045)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-out-back],.aos-initialized body[data-aos-easing=ease-out-back] [data-aos] {
    transition-timing-function: cubic-bezier(0.175,0.885,0.32,1.275)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-out-back],.aos-initialized body[data-aos-easing=ease-in-out-back] [data-aos] {
    transition-timing-function: cubic-bezier(0.68,-0.55,0.265,1.55)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-sine],.aos-initialized body[data-aos-easing=ease-in-sine] [data-aos] {
    transition-timing-function: cubic-bezier(0.47,0,0.745,0.715)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-out-sine],.aos-initialized body[data-aos-easing=ease-out-sine] [data-aos] {
    transition-timing-function: cubic-bezier(0.39,0.575,0.565,1)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-out-sine],.aos-initialized body[data-aos-easing=ease-in-out-sine] [data-aos] {
    transition-timing-function: cubic-bezier(0.445,0.05,0.55,0.95)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-quad],.aos-initialized body[data-aos-easing=ease-in-quad] [data-aos] {
    transition-timing-function: cubic-bezier(0.55,0.085,0.68,0.53)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-out-quad],.aos-initialized body[data-aos-easing=ease-out-quad] [data-aos] {
    transition-timing-function: cubic-bezier(0.25,0.46,0.45,0.94)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-out-quad],.aos-initialized body[data-aos-easing=ease-in-out-quad] [data-aos] {
    transition-timing-function: cubic-bezier(0.455,0.03,0.515,0.955)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-cubic],.aos-initialized body[data-aos-easing=ease-in-cubic] [data-aos] {
    transition-timing-function: cubic-bezier(0.55,0.085,0.68,0.53)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-out-cubic],.aos-initialized body[data-aos-easing=ease-out-cubic] [data-aos] {
    transition-timing-function: cubic-bezier(0.25,0.46,0.45,0.94)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-out-cubic],.aos-initialized body[data-aos-easing=ease-in-out-cubic] [data-aos] {
    transition-timing-function: cubic-bezier(0.455,0.03,0.515,0.955)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-quart],.aos-initialized body[data-aos-easing=ease-in-quart] [data-aos] {
    transition-timing-function: cubic-bezier(0.55,0.085,0.68,0.53)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-out-quart],.aos-initialized body[data-aos-easing=ease-out-quart] [data-aos] {
    transition-timing-function: cubic-bezier(0.25,0.46,0.45,0.94)
}

.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-out-quart],.aos-initialized body[data-aos-easing=ease-in-out-quart] [data-aos] {
    transition-timing-function: cubic-bezier(0.455,0.03,0.515,0.955)
}

.aos-initialized [data-aos^=fade][data-aos^=fade] {
    opacity: 0;
    transition-property: opacity,transform
}

.aos-initialized [data-aos^=fade][data-aos^=fade].aos-animate {
    opacity: 1;
    transform: translateZ(0)
}

.aos-initialized [data-aos=fade-up] {
    transform: translateY(50px)
}

.aos-initialized [data-aos=fade-down] {
    transform: translateY(-50px)
}

.aos-initialized [data-aos=fade-right] {
    transform: translate(-50px)
}

.aos-initialized [data-aos=fade-left] {
    transform: translate(50px)
}

.aos-initialized [data-aos=fade-up-right] {
    transform: translate(-50px,50px)
}

.aos-initialized [data-aos=fade-up-left] {
    transform: translate(50px,50px)
}

.aos-initialized [data-aos=fade-down-right] {
    transform: translate(-50px,-50px)
}

.aos-initialized [data-aos=fade-down-left] {
    transform: translate(50px,-50px)
}

.aos-initialized [data-aos^=zoom][data-aos^=zoom] {
    opacity: 0;
    transition-property: opacity,transform
}

.aos-initialized [data-aos^=zoom][data-aos^=zoom].aos-animate {
    opacity: 1;
    transform: translateZ(0) scale(1)
}

.aos-initialized [data-aos=zoom-in] {
    transform: scale(0.6)
}

.aos-initialized [data-aos=zoom-in-up] {
    transform: translateY(50px) scale(0.6)
}

.aos-initialized [data-aos=zoom-in-down] {
    transform: translateY(-50px) scale(0.6)
}

.aos-initialized [data-aos=zoom-in-right] {
    transform: translate(-50px) scale(0.6)
}

.aos-initialized [data-aos=zoom-in-left] {
    transform: translate(50px) scale(0.6)
}

.aos-initialized [data-aos=zoom-out] {
    transform: scale(1.2)
}

.aos-initialized [data-aos=zoom-out-up] {
    transform: translateY(50px) scale(1.2)
}

.aos-initialized [data-aos=zoom-out-down] {
    transform: translateY(-50px) scale(1.2)
}

.aos-initialized [data-aos=zoom-out-right] {
    transform: translate(-50px) scale(1.2)
}

.aos-initialized [data-aos=zoom-out-left] {
    transform: translate(50px) scale(1.2)
}

.aos-initialized [data-aos^=slide][data-aos^=slide] {
    transition-property: transform
}

.aos-initialized [data-aos^=slide][data-aos^=slide].aos-animate {
    transform: translateZ(0)
}

.aos-initialized [data-aos=slide-up] {
    transform: translateY(100%)
}

.aos-initialized [data-aos=slide-down] {
    transform: translateY(-100%)
}

.aos-initialized [data-aos=slide-right] {
    transform: translateX(-100%)
}

.aos-initialized [data-aos=slide-left] {
    transform: translateX(100%)
}

.aos-initialized [data-aos^=flip][data-aos^=flip] {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition-property: transform
}

.aos-initialized [data-aos=flip-left] {
    transform: perspective(2500px) rotateY(-100deg)
}

.aos-initialized [data-aos=flip-left].aos-animate {
    transform: perspective(2500px) rotateY(0)
}

.aos-initialized [data-aos=flip-right] {
    transform: perspective(2500px) rotateY(100deg)
}

.aos-initialized [data-aos=flip-right].aos-animate {
    transform: perspective(2500px) rotateY(0)
}

.aos-initialized [data-aos=flip-up] {
    transform: perspective(2500px) rotateX(-100deg)
}

.aos-initialized [data-aos=flip-up].aos-animate {
    transform: perspective(2500px) rotateX(0)
}

.aos-initialized [data-aos=flip-down] {
    transform: perspective(2500px) rotateX(100deg)
}

.aos-initialized [data-aos=flip-down].aos-animate {
    transform: perspective(2500px) rotateX(0)
}

.aos-initialized [data-aos=img-in] {
    opacity: 0.001;
    transition-duration: 0.5s;
    transition-property: transform,opacity
}

@media only screen and (min-width: 750px) {
    .aos-initialized [data-aos=img-in] {
        transform:scale(1.05)
    }
}

.aos-initialized [data-aos=img-in].lazy-image.is-loading {
    opacity: 1
}

.aos-initialized [data-aos=img-in].aos-animate {
    opacity: 1;
    transform: none
}

.aos-initialized [data-aos=fade] {
    opacity: 0.001;
    transition-duration: 1s;
    transition-property: opacity
}

.aos-initialized [data-aos=fade].aos-animate {
    opacity: 1
}

.aos-initialized [data-aos][data-aos-order="1"] {
    animation-delay: 0ms;
    transition-delay: 0ms
}

.aos-initialized [data-aos][data-aos-order="2"] {
    animation-delay: 150ms;
    transition-delay: 150ms
}

.aos-initialized [data-aos][data-aos-order="3"] {
    animation-delay: 300ms;
    transition-delay: 300ms
}

.aos-initialized [data-aos][data-aos-order="4"] {
    animation-delay: 450ms;
    transition-delay: 450ms
}

.aos-initialized [data-aos][data-aos-order="5"] {
    animation-delay: 600ms;
    transition-delay: 600ms
}

.aos-initialized [data-aos][data-aos-order="6"] {
    animation-delay: 750ms;
    transition-delay: 750ms
}

.aos-initialized [data-aos][data-aos-order="7"] {
    animation-delay: 900ms;
    transition-delay: 900ms
}

.aos-initialized [data-aos][data-aos-order="8"] {
    animation-delay: 1050ms;
    transition-delay: 1050ms
}

.aos-initialized [data-aos][data-aos-order="9"] {
    animation-delay: 1200ms;
    transition-delay: 1200ms
}

.aos-initialized [data-aos][data-aos-order="10"] {
    animation-delay: 1350ms;
    transition-delay: 1350ms
}

.aos-initialized [data-aos][data-aos-order="11"] {
    animation-delay: 1500ms;
    transition-delay: 1500ms
}

.aos-initialized [data-aos][data-aos-order="12"] {
    animation-delay: 1650ms;
    transition-delay: 1650ms
}

.aos-initialized [data-aos][data-aos-order="13"] {
    animation-delay: 1800ms;
    transition-delay: 1800ms
}

.aos-initialized [data-aos][data-aos-order="14"] {
    animation-delay: 1950ms;
    transition-delay: 1950ms
}

.aos-initialized [data-aos][data-aos-order="15"] {
    animation-delay: 2100ms;
    transition-delay: 2100ms
}

.aos-initialized [data-aos][data-aos-order="16"] {
    animation-delay: 2250ms;
    transition-delay: 2250ms
}

.aos-initialized [data-aos][data-aos-order="17"] {
    animation-delay: 2400ms;
    transition-delay: 2400ms
}

.aos-initialized [data-aos][data-aos-order="18"] {
    animation-delay: 2550ms;
    transition-delay: 2550ms
}

.aos-initialized [data-aos][data-aos-order="19"] {
    animation-delay: 2700ms;
    transition-delay: 2700ms
}

.aos-initialized [data-aos][data-aos-order="20"] {
    animation-delay: 2850ms;
    transition-delay: 2850ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(1) {
    animation-delay: 150ms;
    transition-delay: 150ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(2) {
    animation-delay: 300ms;
    transition-delay: 300ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(3) {
    animation-delay: 450ms;
    transition-delay: 450ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(4) {
    animation-delay: 600ms;
    transition-delay: 600ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(5) {
    animation-delay: 750ms;
    transition-delay: 750ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(6) {
    animation-delay: 900ms;
    transition-delay: 900ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(7) {
    animation-delay: 1050ms;
    transition-delay: 1050ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(8) {
    animation-delay: 1200ms;
    transition-delay: 1200ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(9) {
    animation-delay: 1350ms;
    transition-delay: 1350ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(10) {
    animation-delay: 1500ms;
    transition-delay: 1500ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(11) {
    animation-delay: 1650ms;
    transition-delay: 1650ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(12) {
    animation-delay: 1800ms;
    transition-delay: 1800ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(13) {
    animation-delay: 1950ms;
    transition-delay: 1950ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(14) {
    animation-delay: 2100ms;
    transition-delay: 2100ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(15) {
    animation-delay: 2250ms;
    transition-delay: 2250ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(16) {
    animation-delay: 2400ms;
    transition-delay: 2400ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(17) {
    animation-delay: 2550ms;
    transition-delay: 2550ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(18) {
    animation-delay: 2700ms;
    transition-delay: 2700ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(19) {
    animation-delay: 2850ms;
    transition-delay: 2850ms
}

.aos-initialized [data-aos][data-aos-order=auto]:nth-child(20) {
    animation-delay: 3000ms;
    transition-delay: 3000ms
}

.aos-initialized [data-aos=hero] {
    opacity: 0.001;
    transform: none
}

.aos-initialized [data-aos=hero].aos-animate {
    animation-name: heroFadeIn;
    animation-duration: 1s;
    animation-fill-mode: both
}

.aos-initialized .aos-no-transition {
    transition: none!important
}

@keyframes heroFadeIn {
    from {
        opacity: 0.001;
        transform: translateY(15px)
    }

    to {
        opacity: 1;
        transform: none
    }
}

@keyframes heroFadeOut {
    from {
        opacity: 1;
        transform: none
    }

    to {
        opacity: 0;
        transform: translateY(15px)
    }
}

@keyframes dash {
    from {
        stroke-dashoffset: 100
    }

    to {
        stroke-dashoffset: 0
    }
}

@keyframes fadeIn {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes fadeOut {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes fadeToggle {
    0% {
        opacity: 0
    }

    10% {
        opacity: 1
    }

    90% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: none;
        visibility: hidden
    }

    to {
        opacity: 1;
        transform: translateX(100%);
        visibility: unset
    }
}

@keyframes slideOutLeft {
    from {
        opacity: 1;
        transform: translateX(100%);
        visibility: unset
    }

    to {
        opacity: 0;
        transform: none;
        visibility: hidden
    }
}

@keyframes slideInRight {
    from {
        opacity: 0;
        transform: none;
        visibility: hidden
    }

    to {
        opacity: 1;
        transform: translateX(-100%);
        visibility: unset
    }
}

@keyframes slideOutRight {
    from {
        opacity: 1;
        transform: translateX(-100%);
        visibility: unset
    }

    to {
        opacity: 0;
        transform: none;
        visibility: hidden
    }
}

@keyframes slideInUp {
    from {
        opacity: 0;
        transform: none
    }

    to {
        opacity: 1;
        transform: translateY(100%)
    }
}

@keyframes slideOutDown {
    from {
        transform: none
    }

    to {
        transform: translateY(100%)
    }
}

.aos-initialized [data-animation-delay] {
    animation-delay: calc(0ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="50"] {
    animation-delay: calc(50ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="100"] {
    animation-delay: calc(100ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="150"] {
    animation-delay: calc(150ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="200"] {
    animation-delay: calc(200ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="250"] {
    animation-delay: calc(250ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="300"] {
    animation-delay: calc(300ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="350"] {
    animation-delay: calc(350ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="400"] {
    animation-delay: calc(400ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="450"] {
    animation-delay: calc(450ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="500"] {
    animation-delay: calc(500ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="550"] {
    animation-delay: calc(550ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="600"] {
    animation-delay: calc(600ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="650"] {
    animation-delay: calc(650ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="700"] {
    animation-delay: calc(700ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="750"] {
    animation-delay: calc(750ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="800"] {
    animation-delay: calc(800ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="850"] {
    animation-delay: calc(850ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="900"] {
    animation-delay: calc(900ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="950"] {
    animation-delay: calc(950ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="1000"] {
    animation-delay: calc(1000ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="1050"] {
    animation-delay: calc(1050ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="1100"] {
    animation-delay: calc(1100ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="1150"] {
    animation-delay: calc(1150ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="1200"] {
    animation-delay: calc(1200ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="1250"] {
    animation-delay: calc(1250ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="1300"] {
    animation-delay: calc(1300ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="1350"] {
    animation-delay: calc(1350ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="1400"] {
    animation-delay: calc(1400ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="1450"] {
    animation-delay: calc(1450ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-delay="1500"] {
    animation-delay: calc(1500ms + var(--base-animation-delay))
}

.aos-initialized [data-animation-duration] {
    animation-duration: 500ms
}

.aos-initialized [data-animation-duration="100"] {
    animation-duration: 100ms
}

.aos-initialized [data-animation-duration="200"] {
    animation-duration: 200ms
}

.aos-initialized [data-animation-duration="300"] {
    animation-duration: 300ms
}

.aos-initialized [data-animation-duration="400"] {
    animation-duration: 400ms
}

.aos-initialized [data-animation-duration="500"] {
    animation-duration: 500ms
}

.aos-initialized [data-animation-duration="600"] {
    animation-duration: 600ms
}

.aos-initialized [data-animation-duration="700"] {
    animation-duration: 700ms
}

.aos-initialized [data-animation-duration="800"] {
    animation-duration: 800ms
}

.aos-initialized [data-animation-duration="900"] {
    animation-duration: 900ms
}

.aos-initialized [data-animation-duration="1000"] {
    animation-duration: 1000ms
}

.aos-initialized [data-animation-duration="1100"] {
    animation-duration: 1100ms
}

.aos-initialized [data-animation-duration="1200"] {
    animation-duration: 1200ms
}

.aos-initialized [data-animation-duration="1300"] {
    animation-duration: 1300ms
}

.aos-initialized [data-animation-duration="1400"] {
    animation-duration: 1400ms
}

.aos-initialized [data-animation-duration="1500"] {
    animation-duration: 1500ms
}

.aos-initialized .is-updated [data-animation-delay] {
    --base-animation-delay: 0ms
}

.aos-initialized [data-animation=drawer-images-fade] {
    opacity: 0;
    animation-fill-mode: both
}

.aos-initialized [data-animation=drawer-images-fade].is-animated {
    animation-name: cartDrawerItemsFadeIn
}

.aos-initialized [data-animation=drawer-images-fade].is-hiding {
    animation-name: cartDrawerItemsFadeOut;
    animation-delay: 0s
}

.aos-initialized [data-animation=drawer-items-fade],.aos-initialized .drawer [data-animation=cart-items-fade] {
    opacity: 0;
    animation-fill-mode: both
}

.aos-initialized [data-animation=drawer-items-fade].is-animated,.aos-initialized .drawer [data-animation=cart-items-fade].is-animated {
    animation-name: cartDrawerItemsFadeInLeft
}

.aos-initialized [data-animation=drawer-items-fade].is-hiding,.aos-initialized .drawer [data-animation=cart-items-fade].is-hiding {
    animation-name: cartDrawerItemsFadeOutRight;
    animation-delay: 0s
}

.aos-initialized [data-animation=drawer-items-fade].is-removed,.aos-initialized .drawer [data-animation=cart-items-fade].is-removed {
    animation-name: cartItemRemoved;
    animation-delay: 0s;
    animation-duration: 0.5s;
    animation-fill-mode: both
}

.aos-initialized .drawer.is-updated [data-animation=cart-items-fade].is-animated {
    animation-name: cartDrawerItemsFadeIn
}

.aos-initialized .drawer.is-updated [data-animation=cart-items-fade].is-removed {
    animation-name: cartItemRemoved
}

@media only screen and (max-width: 749px) {
    .aos-initialized .product-quick-add [data-animation=drawer-items-fade] {
        opacity:0;
        animation-fill-mode: both
    }

    .aos-initialized .product-quick-add [data-animation=drawer-items-fade].is-animated {
        animation-name: cartDrawerItemsFadeIn
    }

    .aos-initialized .product-quick-add [data-animation=drawer-items-fade].is-hiding {
        animation-name: cartDrawerItemsFadeOut;
        animation-delay: 0s
    }
}

.aos-initialized .cart [data-animation=cart-items-fade] {
    opacity: 0;
    animation-fill-mode: both
}

.aos-initialized .cart [data-animation=cart-items-fade].is-animated {
    animation-name: cartItemsFadeIn
}

.aos-initialized .cart [data-animation=cart-items-fade].is-removed {
    animation-name: cartItemRemoved;
    animation-delay: 0s;
    animation-duration: 0.5s;
    animation-fill-mode: both
}

.aos-initialized [data-animation].is-hidden,.aos-initialized [data-animation].is-hidden.is-animated {
    animation-name: slideUp;
    animation-fill-mode: forwards;
    animation-delay: 0s
}

.aos-initialized .drawer--animated [data-animation=drawer-items-fade] {
    animation-name: cartDrawerItemsFadeInRight
}

.aos-initialized .drawer--animated [data-sliderule-pane="0"] [data-animates="0"],.aos-initialized .drawer--animated [data-sliderule-pane="1"] [data-animates="1"],.aos-initialized .drawer--animated [data-sliderule-pane="2"] [data-animates="2"] {
    animation-name: cartDrawerItemsFadeInRight
}

.aos-initialized .drawer--animated [data-sliderule-pane="0"] [data-animates="1"],.aos-initialized .drawer--animated [data-sliderule-pane="0"] [data-animates="2"],.aos-initialized .drawer--animated [data-sliderule-pane="1"] [data-animates="2"] {
    animation-name: cartDrawerItemsFadeOutRight
}

.aos-initialized .drawer--animated [data-animation=drawer-items-fade].is-hiding {
    --base-animation-delay: -0.2s;
    animation-name: cartDrawerItemsFadeOutRight;
    animation-duration: 0.25s;
    animation-fill-mode: both
}

.aos-initialized .drawer--animated [data-animation=drawer-items-fade].is-hidden {
    transition: none;
    animation: none;
    opacity: 0;
    visibility: hidden
}

@keyframes cartDrawerItemsFadeIn {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes cartDrawerItemsFadeOut {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes cartDrawerItemsFadeInLeft {
    from {
        opacity: 0;
        transform: translateX(15px)
    }

    to {
        opacity: 1;
        transform: none
    }
}

@keyframes cartDrawerItemsFadeOutLeft {
    from {
        opacity: 1;
        transform: translateX(0)
    }

    to {
        opacity: 0;
        transform: translateX(-15px)
    }
}

@keyframes cartDrawerItemsFadeInRight {
    from {
        opacity: 0;
        transform: translateX(-15px)
    }

    to {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes cartDrawerItemsFadeOutRight {
    from {
        opacity: 1;
        transform: none
    }

    to {
        opacity: 0;
        transform: translateX(15px)
    }
}

@keyframes cartItemsFadeIn {
    from {
        opacity: 0;
        transform: translateY(15px)
    }

    to {
        opacity: 1;
        transform: none
    }
}

@keyframes cartItemRemoved {
    0% {
        opacity: 1;
        max-height: 300px
    }

    100% {
        opacity: 0;
        max-height: 0;
        padding-top: 0;
        padding-bottom: 0
    }
}

@keyframes slideUp {
    from {
        opacity: 1;
        max-height: 1000px
    }

    to {
        opacity: 0;
        max-height: 0px
    }
}

@keyframes imageFadeIn {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes imageFadeOut {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes pulseInOutSubtle {
    0% {
        opacity: 0
    }

    25% {
        opacity: 0.5
    }

    100% {
        transform: scale(1.65);
        opacity: 0
    }
}

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

    100% {
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes fadeOutDown {
    0% {
        transform: translateY(0);
        opacity: 1
    }

    100% {
        transform: translateY(15px);
        opacity: 0
    }
}

@keyframes translateUp {
    0% {
        transform: translateY(100%);
        visibility: hidden
    }

    100% {
        transform: translateY(0);
        visibility: unset
    }
}

@keyframes translateDown {
    0% {
        transform: translateY(0);
        visibility: unset
    }

    100% {
        transform: translateY(100%);
        visibility: hidden
    }
}

.shopify-model-viewer-ui {
    position: relative;
    display: inline-block;
    cursor: pointer
}

.shopify-model-viewer-ui model-viewer {
    transform: translateZ(0);
    z-index: 1
}

.shopify-model-viewer-ui model-viewer.shopify-model-viewer-ui__disabled {
    pointer-events: none
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--fullscreen model-viewer {
    position: relative;
    width: 100vw;
    height: 100vh
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--fullscreen .shopify-model-viewer-ui__control-icon--exit-fullscreen {
    display: block
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--fullscreen .shopify-model-viewer-ui__control-icon--enter-fullscreen {
    display: none
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--desktop:hover .shopify-model-viewer-ui__controls-area,.shopify-model-viewer-ui.shopify-model-viewer-ui--desktop.shopify-model-viewer-ui--child-focused .shopify-model-viewer-ui__controls-area {
    opacity: 1
}

.shopify-model-viewer-ui:not(.shopify-model-viewer-ui--desktop) .shopify-model-viewer-ui__controls-area {
    display: none
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area {
    display: flex;
    flex-direction: column;
    background: #FFF;
    opacity: 0;
    border: 1px solid rgb(0 0 0 / 0.05);
    position: absolute;
    bottom: 10px;
    right: 10px;
    z-index: 1;
    transition: opacity 0.1s linear
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area:focus-within {
    opacity: 1
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area:not(.shopify-model-viewer-ui__controls-area--playing) {
    display: none
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button {
    color: #3A3A3A;
    border-radius: 0;
    border: none;
    margin: 0px;
    cursor: pointer
}

body:not(.is-focused) .shopify-model-viewer-ui .shopify-model-viewer-ui__button:not(.focus-visible) {
    outline: none
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control {
    padding: 0px;
    height: 44px;
    width: 44px;
    background: #fff0;
    position: relative
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:hover {
    color: rgb(0 0 0 / 0.55)
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:active,.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control.focus-visible:focus {
    color: rgb(0 0 0 / 0.55);
    background: rgb(0 0 0 / 0.05)
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:not(:last-child):after {
    position: absolute;
    content: "";
    border-bottom: 1px solid rgb(0 0 0 / 0.05);
    width: 28px;
    bottom: 0px;
    right: 8px
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__control-icon {
    width: 44px;
    height: 44px;
    fill: none
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster {
    background: #FFF;
    position: absolute;
    border: 1px solid rgb(0 0 0 / 0.05);
    top: 50%;
    left: 50%;
    padding: 0;
    transform: translate3d(-50%,-50%,0);
    height: 62px;
    width: 62px;
    z-index: 1
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:hover,.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:focus {
    color: rgb(0 0 0 / 0.55)
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__poster-control-icon {
    width: 60px;
    height: 60px;
    z-index: 1;
    fill: none
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__control-icon--exit-fullscreen {
    display: none
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__control-icon--enter-fullscreen {
    display: block
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__spritesheet {
    display: none
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__sr-only {
    border: 0;
    -webkit-clip-path: rect(0,0,0,0);
    clip-path: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px
}

/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
.pswp {
    display: none;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    overflow: hidden;
    touch-action: none;
    z-index: 1000;
    -webkit-text-size-adjust: 100%;
    -webkit-backface-visibility: hidden;
    outline: none
}

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

.pswp img {
    max-width: none
}

.pswp--animate_opacity {
    opacity: 0.001;
    will-change: opacity;
    transition: opacity 333ms cubic-bezier(0.4,0,0.22,1)
}

.pswp--open {
    display: block
}

.pswp--zoom-allowed .pswp__img {
    cursor: zoom-in;
    cursor: -moz-zoom-in;
    cursor: -webkit-zoom-in;
    cursor: var(--ICON-ZOOM-IN),zoom-in
}

.pswp--zoomed-in .pswp__img {
    cursor: zoom-out;
    cursor: -moz-zoom-out;
    cursor: -webkit-zoom-out;
    cursor: var(--ICON-ZOOM-OUT),zoom-out
}

.pswp--dragging .pswp__img {
    cursor: grabbing;
    cursor: -moz-grabbing;
    cursor: -webkit-grabbing
}

.pswp__bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: var(--underlay-bg);
    opacity: 0;
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    will-change: opacity
}

.pswp__scroll-wrap {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

.pswp__container,.pswp__zoom-wrap {
    touch-action: none;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0
}

.pswp__container,.pswp__img {
    -webkit-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: #fff0;
    -webkit-touch-callout: none
}

.pswp__zoom-wrap {
    position: absolute;
    width: 100%;
    transform-origin: left top;
    transition: transform 333ms cubic-bezier(0.4,0,0.22,1)
}

.pswp__bg {
    will-change: opacity;
    transition: opacity 333ms cubic-bezier(0.4,0,0.22,1)
}

.pswp--animated-in .pswp__bg,.pswp--animated-in .pswp__zoom-wrap {
    transition: none
}

.pswp__container,.pswp__zoom-wrap {
    -webkit-backface-visibility: hidden
}

.pswp__item {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    overflow: hidden
}

.pswp__img {
    position: absolute;
    width: auto;
    height: auto;
    top: 0;
    left: 0
}

.pswp__img--placeholder {
    -webkit-backface-visibility: hidden
}

.pswp__img--placeholder--blank {
    background: #222
}

.pswp--ie .pswp__img {
    width: 100%!important;
    height: auto!important;
    left: 0;
    top: 0
}

.pswp__error-msg {
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    text-align: center;
    font-size: var(--font-body-small);
    line-height: 16px;
    margin-top: -8px;
    color: #CCC
}

.pswp__error-msg a {
    color: #CCC;
    text-decoration: underline
}

html,body,div,span,object,iframe,p,blockquote,pre,abbr,address,cite,code,del,dfn,img,ins,kbd,q,samp,small,sub,sup,var,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,slider-component {
    display: block
}

details>summary {
    list-style: none
}

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

blockquote,q {
    quotes: none
}

blockquote::before,blockquote::after,q::before,q::after {
    content: none
}

ins {
    background-color: var(--link);
    color: var(--link-opposite);
    text-decoration: none
}

mark {
    background-color: var(--link);
    color: var(--link-opposite);
    font-style: italic;
    font-weight: var(--FONT-WEIGHT-BODY-BOLD)
}

del {
    text-decoration: line-through
}

abbr[title],dfn[title] {
    border-bottom: 1px dotted;
    cursor: help
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid var(--border);
    margin: 1em 0;
    padding: 0
}

ol {
    list-style-type: decimal
}

p {
    margin: 0 0 1em
}

nav ul,nav li {
    margin: 0;
    list-style: none;
    list-style-image: none
}

small {
    font-size: 87.5%
}

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

td {
    vertical-align: top
}

sub sup {
    font-size: 50%;
    line-height: 0;
    position: relative
}

sup {
    top: -0.5em
}

sub {
    bottom: -0.25em
}

input[type=search]::-ms-clear {
    display: none;
    width: 0;
    height: 0
}

input[type=search]::-ms-reveal {
    display: none;
    width: 0;
    height: 0
}

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

pre {
    white-space: pre;
    white-space: pre-wrap;
    overflow-wrap: break-word;
    padding: 15px
}

textarea {
    overflow: auto
}

input[type=radio] {
    vertical-align: text-bottom
}

input[type=checkbox] {
    vertical-align: bottom
}

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

button,input,select,.popout__toggle,textarea {
    margin: 0
}

input[type=text].error,input[type=email].error,input[type=password].error {
    border-color: var(--COLOR-ERROR-BORDER)
}

input[type=text],input[type=password],input[type=email],input[type=tel] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    appearance: none;
    appearance: none
}

button {
    border: none;
    background: none;
    font-family: inherit;
    font-size: 100%;
    margin: 0;
    text-transform: none;
    line-height: 1;
    color: currentcolor
}

.loader {
    position: relative;
    height: 4px;
    display: block;
    background-color: var(--accent-fade);
    border-radius: 2px;
    overflow: hidden;
    width: 150px;
    margin: 30px auto
}

.loader--top {
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    margin: 0;
    opacity: 0;
    transition: opacity 0.3s,visibility 0.3s
}

.loader-indeterminate {
    background-color: var(--accent)
}

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

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

@keyframes indeterminate {
    0% {
        transform: translateX(0) scale(0.35,1)
    }

    60% {
        transform: translateX(50%) scale(0.9,1)
    }

    100% {
        transform: translateX(100%) scale(0.9,1)
    }
}

@keyframes indeterminate-short {
    0% {
        transform: translateX(0) scale(2,1)
    }

    60% {
        transform: translateX(460px) scale(0.01,1)
    }

    100% {
        transform: translateX(460px) scale(0.01,1)
    }
}

.clearfix {
    *zoom:1}

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

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

.visually-hidden--inline {
    margin: 0;
    height: 1em
}

.js-focus-hidden:focus {
    outline: none
}

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

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

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

.supports-no-cookies:not(html) {
    display: none
}

html.supports-no-cookies .supports-no-cookies:not(html) {
    display: block
}

html.supports-no-cookies .supports-cookies {
    display: none
}

.skip-link:focus {
    --bg: var(--COLOR-BG);
    position: absolute!important;
    overflow: auto;
    -webkit-clip-path: none;
    clip-path: none;
    width: auto;
    height: auto;
    margin: 0;
    color: var(--link);
    background: var(--bg);
    padding: 20px;
    z-index: 15000;
    transition: none
}

body.is-focused .sidebar__item input:focus~label,body.is-focused .checkbox input:focus~label::before,.no-touch body.is-focused .double__image .product-link:focus .product-item__bg__under,.no-touch body.is-focused .double__image.is-visible .product-link:focus .product-item__bg__inner.is-visible,body.is-focused a.product-link:focus>.product-item__bg,body.is-focused .look__dot__button:focus .look__dot,body.is-focused .product__thumb__link:focus img,body.is-focused .article__image-link:focus img,body.is-focused .article__image-link:focus .image-wrapper,body.is-focused .product__slides:focus,body.is-focused a.frame__item:focus img,body.is-focused .slideshow__slider:focus img {
    outline-color: var(--accent)!important;
    outline-offset: -2px!important;
    outline-style: auto!important;
    outline-width: 5px!important
}

body.is-focused *:focus {
    outline-color: var(--accent)
}

body.is-focused .checkbox input:focus~label::before,body.is-focused .filter-group__heading:focus,body.is-focused a.collection-item__image:focus,body.is-focused .product-upsell__image a,body.is-focused div.product__slides.product-single__photos:focus,body.is-focused .inline-image__link:focus,body.is-focused .search-popdown .product-link:focus {
    outline-offset: 2px!important
}

body.is-focused .look__slider:focus,body.is-focused .grid:focus {
    outline: none!important
}

body.is-focused .product__thumb__link:focus {
    outline: none
}

body.is-focused .swatch input[type=radio]:focus+label::after {
    border-width: 3px
}

body.is-focused .variant-input:focus+.variant__button-label {
    box-shadow: 0 0 0 4px var(--accent)
}

body.is-focused .deferred-media__poster:focus .deferred-media__poster-button,body.is-focused .deferred-media__poster.focus-visible .deferred-media__poster-button {
    outline-color: var(--accent);
    outline-offset: 2px;
    outline-style: auto;
    outline-width: 5px
}

body.is-focused .highlights__item:focus {
    outline-offset: 2px!important
}

[data-scroll-locked] .js__header__stuck,[data-scroll-locked] .theme__header,[data-scroll-locked] .collection__nav,[data-scroll-locked] .announcement__wrapper,[data-scroll-locked] .announcement__bar-outer,[data-scroll-locked] .search__popdown__outer,[data-scroll-locked] .toolbar {
    width: 100vw
}

[data-scroll-locked] .js__header__stuck,[data-scroll-locked] .theme__header,[data-scroll-locked] .collection__nav,[data-scroll-locked] .announcement__bar,[data-scroll-locked] .announcement__slider,[data-scroll-locked] .search__popdown__outer,[data-scroll-locked] .cart-bar,[data-scroll-locked] .toolbar {
    padding-right: var(--scrollbar-width)
}

[data-scroll-locked] .announcement__wrapper .flickity-prev-next-button.next {
    margin-right: var(--scrollbar-width)
}

#challenge .shopify-challenge__container,#challenge .shopify-challenge__button.btn,#challenge .shopify-challenge__button {
    margin: 60px auto
}

#challenge .shopify-challenge__button {
    --btn-border: var(--BTN-PRIMARY-BG);
    --btn-bg: var(--BTN-PRIMARY-BG);
    --btn-text: var(--BTN-PRIMARY-TEXT);
    --btn-border-hover: var(--BTN-PRIMARY-BG-BRIGHTER);
    --btn-bg-hover: var(--BTN-PRIMARY-BG-BRIGHTER);
    --btn-text-hover: var(--BTN-PRIMARY-TEXT)
}

@media (hover: hover) {
    #challenge .shopify-challenge__button:hover {
        background:var(--btn-bg-hover)
    }
}

#challenge .shopify-challenge__button.btn,#challenge .shopify-challenge__button {
    display: block
}

.ir {
    display: block;
    text-indent: -999em;
    overflow: hidden;
    background-repeat: no-repeat;
    text-align: left;
    direction: ltr
}

.hidden {
    display: none!important;
    visibility: hidden
}

.clearfix::before,.clearfix::after {
    content: " ";
    display: block;
    height: 0;
    overflow: hidden
}

.clearfix {
    zoom:1}

.clearfix::after {
    clear: both
}

.left {
    float: left
}

.right {
    float: right
}

.center {
    text-align: center
}

.align-left {
    text-align: left
}

.align-right {
    text-align: right
}

.text-left {
    text-align: left
}

.text-center {
    text-align: center
}

.text-right {
    text-align: right
}

@media only screen and (max-width: 749px) {
    .text-left--mobile {
        text-align:left
    }

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

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

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

.justify-center {
    justify-content: center
}

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

.flex-column {
    flex-direction: column
}

.flex-wrap {
    flex-wrap: wrap
}

.fade-toggle {
    visibility: visible;
    opacity: 1;
    transition: opacity 0.8s cubic-bezier(0.215,0.61,0.355,1),visibility 0.8s cubic-bezier(0.215,0.61,0.355,1)
}

.is-hidden {
    visibility: hidden;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: opacity 0.8s cubic-bezier(0.215,0.61,0.355,1),visibility 0.8s cubic-bezier(0.215,0.61,0.355,1)
}

@media only screen and (min-width: 750px) {
    .mobile {
        display:none
    }
}

@media only screen and (max-width: 749px) {
    .desktop {
        display:none
    }
}

.svg-placeholder {
    color: #AAA;
    background-color: #F7F7F7;
    height: 100%;
    position: relative;
    width: 100%;
    fill: currentcolor
}

.svg-placeholder svg {
    max-height: 100%;
    max-width: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%)
}

.svg-placeholder a,.svg-placeholder a:hover {
    color: inherit
}

.divider {
    margin: 0;
    border-color: var(--border)
}

.divider-holder {
    overflow: hidden
}

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

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

@media only screen and (min-width: 750px) {
    .flex-align-top--desktop {
        align-items:flex-start
    }

    .flex-align-center--desktop {
        align-items: center
    }
}

@media only screen and (max-width: 749px) {
    .flex-align-top--mobile {
        align-items:flex-start
    }

    .flex-align-center--mobile {
        align-items: center
    }
}

.underlay {
    position: fixed;
    visibility: hidden;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100%;
    opacity: 0;
    background: var(--underlay-bg);
    transition: opacity 0.3s ease 0.1s,visibility 0s linear 0.4s
}

.expanded~.underlay,details[open=true] .underlay,.is-open .underlay,.underlay--visible {
    visibility: visible;
    opacity: var(--underlay-opacity);
    transition-duration: 0.3s,0s;
    transition-delay: 0.1s,0s
}

dialog {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 6000;
    width: 100vw;
    height: 100%;
    max-width: 100vw;
    max-height: 100%;
    padding: 0;
    background: none;
    border: 0;
    margin: 0;
    overflow: hidden;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--underlay-bg)
}

dialog::-webkit-backdrop {
    background: #fff0
}

dialog::backdrop {
    background: #fff0
}

dialog:not([open]) {
    pointer-events: none;
    display: none
}

dialog[open] {
    animation: fadeIn 0.5s ease forwards
}

dialog[open] .drawer__inner {
    animation: slideInRight 0.3s ease forwards
}

dialog[closing] {
    animation: fadeOut 0.5s ease forwards
}

dialog[closing] .drawer__inner {
    animation: slideOutRight 0.3s ease forwards
}

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

body.has-line-design.grid-compact .grid {
    padding-top: 1px;
    padding-right: 1px
}

@media only screen and (min-width: 990px) {
    .grid {
        --columns:var(--COLUMNS)
    }
}

@media only screen and (min-width: 1400px) {
    .grid {
        --columns:var(--COLUMNS-WIDESCREEN, var(--COLUMNS))
    }
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .grid {
        --columns:var(--COLUMNS-MEDIUM)
    }
}

@media only screen and (max-width: 749px) {
    .grid {
        --columns:var(--COLUMNS-SMALL)
    }
}

@media only screen and (max-width: 479px) {
    .grid {
        --columns:var(--COLUMNS-MOBILE)
    }
}

.grid--1 {
    --columns: 1
}

.grid--2 {
    --columns: 2
}

.grid--3 {
    --columns: 3
}

@media only screen and (max-width: 749px) {
    .grid--3 {
        --columns:1
    }
}

@media only screen and (max-width: 479px) {
    .grid--3 {
        --columns:1
    }
}

.grid-outer {
    position: relative;
    flex-grow: 1;
    padding: 0 var(--outer)
}

body.grid-compact .grid-outer {
    --outer: 0px;
    --outer-offset: 0px;
    --gutter: 0px;
    --gap: 0px
}

.collection-list .grid-outer {
    padding-top: var(--outer);
    padding-bottom: var(--outer)
}

body.has-line-design .grid-item {
    border: 1px solid var(--border,var(--border))
}

body.has-line-design.grid-compact .grid-item {
    margin-top: -1px;
    margin-right: -1px
}

@media only screen and (min-width: 750px) {
    body.has-line-design.grid-compact .grid--slider .grid-item {
        margin-top:0
    }

    body.has-line-design.grid-compact .grid--slider {
        padding-right: 1px
    }
}

@media only screen and (max-width: 749px) {
    body.has-line-design.grid-compact .grid--mobile-slider .grid-item {
        margin-top:0
    }

    body.has-line-design.grid-compact .grid--mobile-slider {
        padding-right: 1px
    }
}

@media only screen and (min-width: 750px) {
    .grid--account {
        grid-template-columns:1fr 3fr;
        align-items: start
    }
}

@media only screen and (max-width: 749px) {
    .grid--account {
        grid-template-columns:auto
    }
}

@media only screen and (min-width: 750px) {
    .grid--article {
        grid-template-columns:auto minmax(300px,360px);
        align-items: start
    }
}

@media only screen and (max-width: 749px) {
    .grid--article {
        --columns:1
    }
}

.grid__loader {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4;
    width: 100%;
    height: 100%;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s,visibility 0.3s
}

.grid-outer.is-loading .grid__loader {
    opacity: 1;
    visibility: visible
}

@media only screen and (max-width: 749px) {
    .grid__loader {
        z-index:201
    }
}

.grid__loader-line {
    position: sticky;
    top: var(--collection-nav-height);
    width: 100%;
    margin: 0
}

.has-header-sticky .grid__loader-line {
    top: calc(var(--collection-nav-height) + var(--header-height))
}

grid-slider {
    display: block;
    width: 100%;
    position: relative
}

@media only screen and (min-width: 750px) {
    .grid--slider {
        --item-width:calc((100vw - var(--scrollbar-width) - var(--outer) * 2) * 0.38);
        display: flex;
        flex-flow: row nowrap;
        gap: 0;
        padding-left: var(--outer);
        padding-right: var(--outer);
        margin-left: var(--outer-offset);
        margin-right: var(--outer-offset);
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        scroll-padding: var(--outer);
        scrollbar-width: none;
        -ms-overflow-style: none;
        -webkit-user-select: none;
        user-select: none;
        -webkit-user-drag: none
    }

    .grid--slider::-webkit-scrollbar {
        display: none
    }

    .grid--slider.is-enabled {
        cursor: grab
    }

    .grid--slider.is-dragging:active {
        cursor: grabbing
    }

    .grid--slider.is-dragging a {
        pointer-events: none
    }

    .grid--slider.is-scrolling {
        scroll-snap-type: none
    }

    .grid--slider .grid-item {
        scroll-snap-align: start;
        flex: 0 0 var(--item-width);
        max-width: var(--item-width);
        margin-right: var(--gap)
    }

    .grid--slider .grid-item:last-child {
        margin-right: 0
    }

    body.has-line-design.grid-compact .grid--slider {
        padding-top: 1px;
        padding-bottom: 1px
    }
}

@media only screen and (min-width: 990px) {
    .grid--slider {
        --item-width:calc((100vw - var(--scrollbar-width) - var(--outer) * 2) * 0.28)
    }
}

.scroll-snap-disabled {
    scroll-snap-type: none
}

.grid--slider:has([data-aos]:not(.aos-animate)) {
    scroll-snap-type: none
}

@media only screen and (min-width: 990px) {
    .grid--slider-disabled {
        display:grid;
        grid-template-columns: repeat(auto-fit,minmax(0,calc((100% - var(--gap) * (var(--column-count) - 1)) / var(--column-count))));
        grid-column-gap: var(--gap);
        justify-content: center;
        cursor: auto
    }

    .grid--slider-disabled:active {
        cursor: auto
    }

    .grid--slider-disabled .grid-item {
        width: auto;
        max-width: none;
        margin-right: 0
    }
}

@media only screen and (max-width: 749px) {
    .grid--mobile-slider {
        display:flex;
        flex-flow: row nowrap;
        justify-content: flex-start;
        gap: 0;
        margin-left: var(--outer-offset);
        margin-right: var(--outer-offset);
        padding-left: var(--outer);
        padding-right: 0;
        overflow-x: scroll;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        scroll-padding: var(--outer);
        scrollbar-width: none;
        -ms-overflow-style: none
    }

    .grid--mobile-slider::-webkit-scrollbar {
        display: none
    }

    .grid--mobile-slider.is-enabled {
        cursor: grab
    }

    .grid--mobile-slider.is-dragging:active {
        cursor: grabbing
    }

    .grid--mobile-slider.is-dragging a {
        pointer-events: none
    }

    .grid--mobile-slider.is-scrolling {
        scroll-snap-type: none
    }

    body.grid-compact.has-line-design .grid--mobile-slider {
        padding-left: 1px
    }

    body.grid-classic.has-line-design .grid--mobile-slider {
        padding-left: var(--outer)
    }

    .grid--mobile-slider::after {
        content: "";
        min-height: 1px;
        display: block;
        position: relative;
        padding-right: var(--outer)
    }

    .grid--mobile-slider .grid-item {
        flex: 0 0 auto;
        width: calc(100% - 50px);
        margin-right: var(--gap);
        scroll-snap-align: start
    }

    .grid--mobile-slider .grid-item:last-child {
        margin-right: 0
    }

    .grid--mobile-slider .grid-item:only-child {
        flex: 0 1 100%
    }
}

.slider__arrows {
    position: absolute;
    top: 0;
    bottom: 0;
    right: var(--outer-offset);
    left: var(--outer-offset);
    z-index: 10;
    overflow: hidden;
    pointer-events: none
}

.slider__button {
    --bg: var(--COLOR-BG);
    --bg-brighter: var(--COLOR-BG-BRIGHTER);
    --icon-size: 28px;
    --btn-size: 40px;
    position: absolute;
    top: var(--button-position,50%);
    width: var(--btn-size);
    height: var(--btn-size);
    padding: 0;
    border: 0;
    border-radius: var(--RADIUS);
    color: inherit;
    background: var(--bg);
    box-shadow: 0 2px 6px rgb(0 0 0 / 0.04),0 2px 2px rgb(0 0 0 / 0.02);
    margin-top: calc(var(--btn-size) / -2);
    overflow: hidden;
    font-size: 0;
    text-indent: -100%;
    cursor: pointer;
    pointer-events: auto
}

.slider__button:active {
    opacity: 1
}

.slider__button:disabled {
    opacity: 0;
    cursor: auto;
    visibility: hidden;
    pointer-events: none
}

@media only screen and (max-width: 749px) {
    .slider__button {
        display:none
    }
}

.slider__button::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: var(--bg-brighter)
}

@media (hover: hover) {
    .slider__button {
        opacity:0;
        transition: opacity 0.2s ease-in-out,transform 0.2s ease-in-out,visibility 0.2s
    }

    .slider__button::after {
        opacity: 1;
        transform: translate3d(0,100%,0);
        transition: transform 0.5s cubic-bezier(0.33,0,0,1);
        will-change: transform;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden
    }

    .slider__button--prev {
        transform: translateX(-100%)
    }

    .slider__button--next {
        transform: translateX(100%)
    }

    .slider__button:hover::after {
        transform: translate3d(0,0,0)
    }

    grid-slider:hover .slider__button:not(:disabled),.product__slides:hover .slider__button:not(:disabled),.is-focused .slider__button:focus {
        opacity: 1;
        transform: translate3d(0,0,0)
    }
}

.slider__button::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: var(--icon-size);
    height: var(--icon-size);
    background: var(--text-dark);
    -webkit-mask-size: var(--icon-size);
    mask-size: var(--icon-size);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center center;
    mask-position: center center;
    max-width: 100%;
    max-height: 100%;
    border-radius: var(--RADIUS)
}

.slider__button--prev {
    left: var(--outer)
}

.slider__button--next {
    right: var(--outer)
}

.slider__button--prev::before {
    -webkit-mask-image: var(--ICON-ARROW-LEFT);
    mask-image: var(--ICON-ARROW-LEFT)
}

.slider__button--next::before {
    -webkit-mask-image: var(--ICON-ARROW-RIGHT);
    mask-image: var(--ICON-ARROW-RIGHT)
}

.is-focused .slider__button {
    transition: opacity 0.2s ease-in-out
}

body:not(.is-focused) .slider__button:focus {
    outline: none
}

:root {
    --full-height: 100vh;
    --full-screen: var(--full-height);
    --three-quarters: 75vh;
    --two-thirds: 66vh;
    --one-half: 50vh;
    --one-third: 33vh;
    --header-height: 80px;
    --header-sticky-height: 0px;
    --footer-height: 500px;
    --announcement-height: 0px;
    --content-full: 90vh;
    --content-min: calc(100vh - var(--header-height) - var(--announcement-height))
}

@media only screen and (min-width: 990px) {
    :root {
        --header-height:var(--HEADER-HEIGHT, 0px)
    }
}

@media only screen and (min-width: 750px) {
    :root {
        --announcement-height:var(--ANNOUNCEMENT-HEIGHT-DESKTOP, 0px)
    }
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    :root {
        --header-height:var(--HEADER-HEIGHT-MEDIUM, 0px)
    }
}

@media only screen and (max-width: 749px) {
    :root {
        --header-height:var(--HEADER-HEIGHT-MOBILE, 0px);
        --announcement-height: var(--ANNOUNCEMENT-HEIGHT-MOBILE, 0px)
    }
}

.main-content>.shopify-section:first-of-type {
    --full-screen: calc(var(--full-height) - var(--header-height) - var(--announcement-height))
}

body:has([data-header-sticky]) .main-content>.shopify-section {
    --full-screen: calc(var(--full-height) - var(--header-height))
}

body:has([data-header-sticky]) .main-content>.shopify-section:first-of-type {
    --full-screen: calc(var(--full-height) - var(--header-height) - var(--announcement-height))
}

body:has([data-header-transparent]) .main-content>.shopify-section.section-overlay-header:first-of-type {
    --full-screen: calc(var(--full-height) - var(--announcement-height))
}

.has-header-sticky {
    --header-sticky-height: var(--header-height)
}

@media only screen and (min-width: 750px) {
    .screen-height-full {
        min-height:var(--full-screen)
    }

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

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

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

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

    .seven-fifty-height-hero {
        min-height: 750px
    }

    .sixty-fifty-height-hero {
        min-height: 650px
    }

    .five-fifty-height-hero {
        min-height: 550px
    }

    .four-fifty-height-hero {
        min-height: 450px
    }

    .four-hundred-height-hero {
        min-height: 400px
    }

    .three-fifty-height-hero {
        min-height: 350px
    }

    .three-hundred-height-hero {
        min-height: 300px
    }

    .two-fifty-height-hero {
        min-height: 250px
    }

    .two-hundred-height-hero {
        min-height: 200px
    }

    .one-fifty-height-hero {
        min-height: 150px
    }
}

@media only screen and (max-width: 749px) {
    .screen-height-full--mobile {
        min-height:var(--full-screen)
    }

    .screen-height-three-quarters--mobile {
        min-height: var(--three-quarters)
    }

    .screen-height-two-thirds--mobile {
        min-height: var(--two-thirds)
    }

    .screen-height-one-half--mobile {
        min-height: var(--one-half)
    }

    .screen-height-one-third--mobile {
        min-height: var(--one-third)
    }

    .seven-fifty-height-hero--mobile {
        min-height: 750px
    }

    .sixty-fifty-height-hero--mobile {
        min-height: 650px
    }

    .five-fifty-height-hero--mobile {
        min-height: 550px
    }

    .four-fifty-height-hero--mobile {
        min-height: 450px
    }

    .four-hundred-height-hero--mobile {
        min-height: 400px
    }

    .three-fifty-height-hero--mobile {
        min-height: 350px
    }

    .three-hundred-height-hero--mobile {
        min-height: 300px
    }

    .two-fifty-height-hero--mobile {
        min-height: 250px
    }

    .two-hundred-height-hero--mobile {
        min-height: 200px
    }

    .one-fifty-height-hero--mobile {
        min-height: 150px
    }
}

:root {
    --outer: var(--LAYOUT-OUTER);
    --gutter: var(--LAYOUT-GUTTER);
    --gap: var(--gutter);
    --outer-offset: calc(var(--outer) * -1);
    --gutter-offset: calc(var(--gutter) * -1);
    --inner: 20px;
    --base: 16px;
    --line: 1rem;
    --line-offset: calc(var(--line) * -1);
    --content-max: 1100px;
    --sidebar-width: var(--SIDEBAR-WIDTH)
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    :root {
        --outer:calc(var(--LAYOUT-OUTER-MEDIUM));
        --gutter: calc(var(--LAYOUT-GUTTER-MEDIUM));
        --inner: 18px;
        --base: 15px;
        --sidebar-width: var(--SIDEBAR-WIDTH-MEDIUM)
    }
}

@media only screen and (max-width: 749px) {
    :root {
        --outer:calc(var(--LAYOUT-OUTER-SMALL));
        --gutter: calc(var(--LAYOUT-GUTTER-SMALL));
        --inner: 16px;
        --base: 14px;
        --line: 0.66rem
    }
}

@media only screen and (min-width: 1400px) {
    :root {
        --content-max:80vw
    }
}

html,body {
    min-height: 100%
}

* {
    box-sizing: border-box
}

html {
    font-size: var(--FONT-SIZE-BASE);
    scroll-behavior: smooth;
    --scroll-behavior: smooth
}

body {
    position: relative;
    min-width: 320px;
    background-color: var(--bg);
    font-size: var(--FONT-SIZE-BASE);
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

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

.container {
    margin: 0;
    padding: 0;
    display: block;
    width: 100%;
    min-height: 100%
}

.main-content {
    margin: 0;
    padding: 0;
    min-width: 100%;
    display: block;
    min-height: var(--content-min)
}

.wrapper {
    max-width: var(--content-max);
    margin: 0 auto;
    padding-left: var(--outer);
    padding-right: var(--outer)
}

.wrapper--narrow {
    max-width: 670px;
    margin: 0 auto;
    padding-left: var(--outer);
    padding-right: var(--outer)
}

.wrapper--full-padded {
    max-width: none;
    margin: 0 auto;
    padding-left: var(--outer);
    padding-right: var(--outer)
}

.wrapper--full {
    max-width: none;
    margin: 0 auto
}

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

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

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

.block-padding {
    margin-top: var(--block-padding-top,0px);
    margin-bottom: var(--block-padding-bottom,16px)
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid var(--border);
    margin: 1em 0
}

table tr>th,table tr>td {
    border-bottom: 1px solid var(--border);
    border-right: 1px solid var(--border);
    padding: 10px;
    line-height: 1.3;
    vertical-align: middle
}

.table {
    display: table;
    width: 100%;
    height: 100%
}

dl {
    margin-bottom: 1.5em
}

dt,dd {
    line-height: 1.5em
}

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

dd {
    margin-left: 0.8em
}

.main-content>.shopify-section:first-of-type .backdrop--linear::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: calc(var(--header-height) * 1.5);
    background: linear-gradient(to bottom,var(--header-overlay-color) 0%,var(--TRANSPARENT) 100%);
    opacity: var(--header-overlay-opacity)
}

[data-collapsible-trigger] {
    position: relative;
    cursor: pointer;
    list-style: none
}

[data-collapsible-trigger]>* {
    pointer-events: none
}

[data-collapsible-trigger] .icon {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    transition: opacity 0.3s ease,transform 0.3s ease,visibility 0.3s
}

[data-collapsible-body] {
    position: relative;
    height: 0;
    overflow: hidden;
    transition: height 0.3s ease
}

[data-collapsible-content] {
    display: grid;
    grid-template-columns: 100%
}

[data-collapsible][open=false] [data-collapsible-content] {
    animation: fadeOutDown 0.3s ease-in
}

[data-collapsible][open=true] [data-collapsible-trigger] .icon-nav-arrow-down {
    transform: translateY(-50%) rotateX(180deg)
}

[data-collapsible][open=true] [data-collapsible-content] {
    animation: fadeInUp 0.3s ease-in
}

details[disabled] [data-collapsible-trigger] {
    cursor: default;
    pointer-events: none
}

details[disabled] [data-collapsible-trigger] .icon {
    display: none
}

details[disabled] [data-collapsible-body] {
    height: auto;
    transition: none
}

:root {
    --font-body-x-large: 1.438rem;
    --font-body-large: 1rem;
    --font-body-medium: 0.875rem;
    --font-body-small: 0.825rem;
    --font-body-x-small: 0.8rem;
    --font-nav-large: 1;
    --font-nav-medium: 0.875;
    --font-nav-small: 0.825;
    --font-heading-mini: var(--FONT-HEADING-MINI-MOBILE);
    --font-heading-x-small: var(--FONT-HEADING-X-SMALL-MOBILE);
    --font-heading-small: var(--FONT-HEADING-SMALL-MOBILE);
    --font-heading-medium: var(--FONT-HEADING-MEDIUM-MOBILE);
    --font-heading-large: var(--FONT-HEADING-LARGE-MOBILE);
    --font-heading-x-large: var(--FONT-HEADING-X-LARGE-MOBILE);
    --font-subheading: var(--FONT-SIZE-SUBHEADING-MOBILE)
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    :root {
        --font-body-x-large:1.563rem;
        --font-body-large: 1.125rem;
        --font-body-medium: 0.938rem;
        --font-body-small: 0.813rem;
        --font-body-x-small: 0.688rem;
        --font-nav-large: 1.125;
        --font-nav-medium: 0.938;
        --font-nav-small: 0.813
    }
}

@media only screen and (min-width: 990px) {
    :root {
        --font-body-x-large:1.25rem;
        --font-body-large: 1.125rem;
        --font-body-medium: 1rem;
        --font-body-small: 0.875rem;
        --font-body-x-small: 0.75rem;
        --font-nav-large: 1.188;
        --font-nav-medium: 1;
        --font-nav-small: 0.875;
        --font-heading-mini: var(--FONT-HEADING-MINI);
        --font-heading-x-small: var(--FONT-HEADING-X-SMALL);
        --font-heading-small: var(--FONT-HEADING-SMALL);
        --font-heading-medium: var(--FONT-HEADING-MEDIUM);
        --font-heading-large: var(--FONT-HEADING-LARGE);
        --font-heading-x-large: var(--FONT-HEADING-X-LARGE);
        --font-subheading: var(--FONT-SIZE-SUBHEADING-DESKTOP)
    }
}

h1,.h1 {
    font-size: var(--font-heading-x-large)
}

h2,.h2 {
    font-size: var(--font-heading-large)
}

h3,.h3 {
    font-size: var(--font-heading-medium)
}

h4,.h4 {
    font-size: var(--font-heading-small)
}

h5,.h5 {
    font-size: var(--font-heading-x-small)
}

h6,.article__author-bio h3,.blog-section .article__image .article__tags,.h6 {
    font-size: var(--font-heading-mini)
}

.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6,.article__author-bio h3,.blog-section .article__image .article__tags {
    font-family: var(--FONT-STACK-HEADING);
    font-style: var(--FONT-STYLE-HEADING);
    font-weight: var(--FONT-WEIGHT-HEADING);
    letter-spacing: var(--LETTER-SPACING-HEADING);
    text-transform: var(--FONT-UPPERCASE-HEADING);
    line-height: 1.2;
    margin: 0.5em 0;
    text-transform: var(--FONT-UPPERCASE-HEADING,none)
}

body {
    font-family: var(--FONT-STACK-BODY);
    font-style: var(--FONT-STYLE-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none
}

.subheading {
    font-size: var(--font-subheading);
    font-family: var(--FONT-STACK-SUBHEADING);
    font-style: var(--FONT-STYLE-SUBHEADING);
    font-weight: var(--FONT-WEIGHT-SUBHEADING);
    letter-spacing: var(--LETTER-SPACING-SUBHEADING);
    text-transform: var(--FONT-UPPERCASE-SUBHEADING)
}

.body-x-large {
    font-size: var(--font-body-x-large)
}

.body-large {
    font-size: var(--font-body-large)
}

.body-medium {
    font-size: var(--font-body-medium)
}

.body-small {
    font-size: var(--font-body-small)
}

.body-x-small {
    font-size: var(--font-body-x-small)
}

p .p {
    font-size: var(--font-body-medium)
}

small,.small,p small {
    font-size: var(--font-body-small)
}

.font-body {
    font-family: var(--FONT-STACK-BODY);
    font-style: var(--FONT-STYLE-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none
}

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

.heading-mini {
    font-size: var(--font-heading-mini)
}

.heading-x-small {
    font-size: var(--font-heading-x-small)
}

.heading-small {
    font-size: var(--font-heading-small)
}

.heading-medium {
    font-size: var(--font-heading-medium)
}

.heading-large {
    font-size: var(--font-heading-large)
}

.heading-x-large {
    font-size: var(--font-heading-x-large)
}

@media only screen and (min-width: 750px) {
    .heading-desktop-mini {
        font-size:var(--font-heading-mini)
    }

    .heading-desktop-x-small {
        font-size: var(--font-heading-x-small)
    }

    .heading-desktop-small {
        font-size: var(--font-heading-small)
    }

    .heading-desktop-medium {
        font-size: var(--font-heading-medium)
    }

    .heading-desktop-large {
        font-size: var(--font-heading-large)
    }

    .heading-desktop-x-large {
        font-size: var(--font-heading-x-large)
    }
}

@media only screen and (max-width: 749px) {
    .heading-mobile-mini {
        font-size:var(--font-heading-mini)
    }

    .heading-mobile-x-small {
        font-size: var(--font-heading-x-small)
    }

    .heading-mobile-small {
        font-size: var(--font-heading-small)
    }

    .heading-mobile-medium {
        font-size: var(--font-heading-medium)
    }

    .heading-mobile-large {
        font-size: var(--font-heading-large)
    }

    .heading-mobile-x-large {
        font-size: var(--font-heading-x-large)
    }
}

p,.p {
    margin: 0.5em 0
}

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

.uppercase {
    text-transform: uppercase
}

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

blockquote {
    font-size: var(--font-body-medium);
    padding-left: 1.5em;
    border-left: 5px solid var(--text);
    margin: 0 0 1.5em 1.25em
}

ul,ol {
    font-size: var(--font-body-medium);
    margin: 0 0 1.5em 1.3em
}

ul.unstyled,ol.unstyled {
    list-style-type: none;
    margin-left: 0
}

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

li {
    margin: 0 0 0.25em
}

hr,.hr {
    clear: both;
    border-top: solid var(--border);
    border-width: 1px 0 0;
    margin: 1.25 0;
    height: 0
}

hr.hr--small,.hr.hr--small {
    margin: 0.625 0
}

hr.hr--tall,.hr.hr--tall {
    margin: 2.5 0
}

hr.hr--clear,.hr.hr--clear {
    border-top-color: #fff0
}

hr.hr--dash,.hr.hr--dash {
    margin: var(--gutter) auto;
    width: 40px
}

hr.hr--thick,.hr.hr--thick {
    border-width: 2px 0 0
}

hr.hr--underline,.hr.hr--underline {
    margin-top: 10px;
    margin-bottom: 20px
}

hr.hr--no-margin,.hr.hr--no-margin {
    margin: 0
}

hr.hr--color,.hr.hr--color {
    border-top-color: var(--text-a35)
}

.page__heading {
    text-align: center;
    position: relative;
    z-index: 11
}

.caps,.blog-section .article__image .article__tags,.popout__toggle,.search-submit {
    text-transform: uppercase;
    font-size: var(--font-body-x-small);
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY)
}

.caps--link {
    font-size: var(--BTN-FONT-SIZE);
    font-family: var(--BTN-FONT-STACK);
    font-weight: var(--BTN-FONT-WEIGHT);
    font-style: var(--BTN-FONT-STYLE);
    text-transform: var(--BTN-UPPERCASE);
    letter-spacing: var(--BTN-LETTER-SPACING);
    padding-left: 0;
    padding-right: 0
}

@media (hover: hover) {
    .caps--link .icon-nav-arrow-right {
        transition:transform 0.5s ease;
        transform: translateZ(0)
    }

    .caps--link:hover .icon-nav-arrow-right {
        transform: translate3d(5px,0,0)
    }
}

.sup {
    font-size: 50%;
    vertical-align: super
}

.icon {
    display: inline-block;
    width: var(--icon-size,20px);
    height: var(--icon-size,20px);
    vertical-align: middle;
    fill: none;
    stroke: var(--icons,currentColor);
    stroke-width: var(--ICON-STROKE-WIDTH)
}

.icon path {
    stroke-width: inherit
}

.no-svg .icon {
    display: none
}

.icon circle,.icon ellipse,.icon g,.icon line,.icon path,.icon polygon,.icon polyline,.icon rect {
    fill: inherit;
    stroke: inherit
}

.socials--normal .icon-x {
    stroke-width: calc(var(--ICON-STROKE-WIDTH) * 1.25)
}

.socials--thick .icon-x {
    stroke-width: calc(var(--ICON-STROKE-WIDTH) * 1.25)
}

.icon-nav-arrow-right {
    transition: transform 0.25s ease-out
}

.icon-media-video path,.icon-media-model path {
    fill: none;
    stroke: none
}

.icon-media-video .icon-media-video-outline,.icon-media-model .icon-media-model-outline {
    fill: var(--COLOR-BG);
    opacity: 0.6
}

.icon-media-video .icon-media-video-element,.icon-media-model .icon-media-model-element {
    fill: currentcolor
}

.icon-cancel {
    pointer-events: none
}

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

.no-svg .icon-fallback-text {
    position: static!important;
    overflow: auto;
    -webkit-clip-path: none;
    clip-path: none;
    width: auto;
    height: auto;
    margin: 0
}

.payment-icons {
    -webkit-user-select: none;
    user-select: none;
    cursor: default
}

.payment-icons--greyscale {
    filter: grayscale(1)
}

.rte img {
    max-width: 100%;
    height: auto;
    margin: 10px 0
}

.rte a {
    display: inline-block
}

.rte table {
    table-layout: fixed
}

.rte ul,.rte ol {
    margin: 0 0 calc(var(--gutter) / 2) var(--gutter)
}

.rte ul {
    list-style: disc outside
}

.rte ul ul {
    list-style: circle outside
}

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

.text-center.rte ul,.text-center.rte ol,.text-center .rte ul,.text-center .rte ol,.text-center .grid__description ul,.text-center .grid__description ol,.text-center .countdown-block__text ul,.text-center .countdown-block__text ol {
    margin-left: 0;
    list-style-position: inside
}

.rte-table {
    max-width: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch
}

.rte__video-wrapper {
    position: relative;
    overflow: hidden;
    max-width: 100%;
    padding-bottom: 56.25%;
    height: 0;
    height: auto
}

.rte__video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.rte__table-wrapper {
    max-width: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch
}

.rich-text-columns__wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    overflow-wrap: anywhere
}

.rich-text-columns__left {
    flex: 0 0 calc(var(--rte-column-width-left) - var(--gap) / 2)
}

.rich-text-columns__left .hero__button-group {
    justify-content: flex-start
}

.rich-text-columns__divider {
    flex: 0 0 var(--rte-column-divider-width);
    display: flex;
    justify-content: center
}

@media only screen and (max-width: 749px) {
    .rich-text-columns__divider {
        padding:var(--gap) 0
    }
}

.rich-text-columns__divider-line {
    width: 1px;
    height: 100%;
    background-color: var(--border)
}

@media only screen and (max-width: 749px) {
    .rich-text-columns__divider-line {
        width:100%;
        height: 1px
    }
}

.rich-text-columns__right {
    flex: 0 0 calc(var(--rte-column-width-right) - var(--gap) / 2)
}

.rich-text-columns__right .text-left .hero__button-group {
    justify-content: flex-start
}

.rich-text-columns__right .text-right .hero__button-group {
    justify-content: flex-end
}

@media only screen and (max-width: 749px) {
    .text-center--mobile .rte-columns-block .hero__button-group {
        justify-content:center
    }
}

@media only screen and (max-width: 749px) {
    .text-left--mobile .rte-columns-block .hero__button-group {
        justify-content:flex-start
    }
}

@media only screen and (max-width: 749px) {
    .rich-text-columns__left,.rich-text-columns__divider,.rich-text-columns__right {
        flex:0 0 100%
    }
}

@media only screen and (max-width: 749px) {
    .responsive-table {
        width:100%
    }

    .responsive-table thead {
        display: none
    }

    .responsive-table tr {
        display: block
    }

    .responsive-table tr,.responsive-table td {
        float: left;
        clear: both;
        width: 100%
    }

    .responsive-table th,.responsive-table td {
        display: block;
        text-align: right;
        padding: calc(var(--gutter) / 2);
        margin: 0
    }

    .responsive-table td::before {
        content: attr(data-label);
        float: left;
        text-align: center;
        padding-right: 10px
    }

    .responsive-table-row+.responsive-table-row,tfoot>.responsive-table-row:first-child {
        position: relative;
        margin-top: 10px;
        padding-top: calc(var(--gutter) / 2)
    }

    .responsive-table-row+.responsive-table-row::after,tfoot>.responsive-table-row:first-child::after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: calc(var(--gutter) / 2);
        right: calc(var(--gutter) / 2);
        border-bottom: 1px solid var(--border)
    }
}

:root {
    --radius: var(--RADIUS);
    --btn-radius: var(--RADIUS);
    --btn-top: var(--BTN-SIZE-MEDIUM);
    --btn-left: calc(var(--BTN-SIZE-MEDIUM) * 1.8)
}

@media only screen and (max-width: 749px) {
    :root {
        --btn-top:calc(var(--BTN-SIZE-MEDIUM) * 0.8);
        --btn-left: calc(var(--BTN-SIZE-MEDIUM) * 1.6)
    }
}

button {
    width: auto;
    overflow: visible
}

.btn,.shopify-payment-button .shopify-payment-button__button--unbranded,#challenge .shopify-challenge__button {
    -webkit-user-select: none;
    user-select: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: auto;
    padding: var(--btn-top) var(--btn-left);
    border: 1px solid var(--btn-border);
    border-radius: var(--btn-radius);
    background-color: var(--btn-bg);
    font-family: var(--BTN-FONT-STACK);
    font-size: var(--BTN-FONT-SIZE);
    line-height: var(--line-height-normal);
    color: var(--btn-text);
    font-style: var(--BTN-FONT-STYLE);
    font-weight: var(--BTN-FONT-WEIGHT);
    letter-spacing: var(--BTN-LETTER-SPACING);
    text-decoration: none;
    text-align: center;
    vertical-align: middle;
    text-transform: var(--BTN-UPPERCASE);
    transition: 0.25s ease-out;
    transition-property: color,background,border;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow-wrap: anywhere;
    --icons: var(--btn-text)
}

.btn span,.shopify-payment-button .shopify-payment-button__button--unbranded span,#challenge .shopify-challenge__button span {
    position: relative;
    vertical-align: middle
}

.btn span.btn__added,.shopify-payment-button .shopify-payment-button__button--unbranded span.btn__added,#challenge .shopify-challenge__button span.btn__added,.btn span.btn__plus,.shopify-payment-button .shopify-payment-button__button--unbranded span.btn__plus,#challenge .shopify-challenge__button span.btn__plus,.btn span.btn__loader,.shopify-payment-button .shopify-payment-button__button--unbranded span.btn__loader,#challenge .shopify-challenge__button span.btn__loader {
    top: 50%;
    left: 50%;
    position: absolute
}

.btn[disabled],.shopify-payment-button [disabled].shopify-payment-button__button--unbranded,#challenge [disabled].shopify-challenge__button {
    cursor: default;
    opacity: 0.5
}

.btn[disabled]::after,.shopify-payment-button [disabled].shopify-payment-button__button--unbranded::after,#challenge [disabled].shopify-challenge__button::after {
    content: none
}

@media (hover: hover) {
    .btn:hover,.shopify-payment-button .shopify-payment-button__button--unbranded:hover,#challenge .shopify-challenge__button:hover {
        border-color:var(--btn-border-hover);
        color: var(--btn-text-hover)
    }
}

.btn .icon-nav-arrow-left,.shopify-payment-button .shopify-payment-button__button--unbranded .icon-nav-arrow-left,#challenge .shopify-challenge__button .icon-nav-arrow-left,.btn .icon-nav-arrow-right,.shopify-payment-button .shopify-payment-button__button--unbranded .icon-nav-arrow-right,#challenge .shopify-challenge__button .icon-nav-arrow-right {
    --icon-size: var(--BTN-FONT-SIZE);
    display: inline-block;
    margin: -2px 0 -2px 4px;
    flex-basis: 0 0 var(--icon-size,20px)
}

.btn .icon-nav-arrow-left,.shopify-payment-button .shopify-payment-button__button--unbranded .icon-nav-arrow-left,#challenge .shopify-challenge__button .icon-nav-arrow-left {
    margin-right: 4px;
    margin-left: 0
}

.btn--text {
    background: #fff0;
    border: 0
}

.btn--text .icon-nav-arrow-left,.btn--text .icon-nav-arrow-right {
    margin-top: 0;
    margin-bottom: 0
}

@media (hover: hover) {
    .btn .icon-nav-arrow-left,.shopify-payment-button .shopify-payment-button__button--unbranded .icon-nav-arrow-left,#challenge .shopify-challenge__button .icon-nav-arrow-left,.btn .icon-nav-arrow-right,.shopify-payment-button .shopify-payment-button__button--unbranded .icon-nav-arrow-right,#challenge .shopify-challenge__button .icon-nav-arrow-right {
        transition:transform 0.5s ease;
        transform: translateZ(0)
    }

    .btn:hover .icon-nav-arrow-right,.shopify-payment-button .shopify-payment-button__button--unbranded:hover .icon-nav-arrow-right,#challenge .shopify-challenge__button:hover .icon-nav-arrow-right {
        transform: translate3d(5px,0,0)
    }

    .btn:hover .icon-nav-arrow-left,.shopify-payment-button .shopify-payment-button__button--unbranded:hover .icon-nav-arrow-left,#challenge .shopify-challenge__button:hover .icon-nav-arrow-left {
        transform: translate3d(-5px,0,0)
    }
}

.btn .icon-bag,.shopify-payment-button .shopify-payment-button__button--unbranded .icon-bag,#challenge .shopify-challenge__button .icon-bag {
    flex: 0 0 auto;
    margin: 0 10px 0 0;
    --icon-size: 1.25rem
}

.btn--primary,.btn--primary .shopify-payment-button__button--unbranded {
    --btn-border: var(--BTN-PRIMARY-BORDER);
    --btn-bg: var(--BTN-PRIMARY-BG);
    --btn-text: var(--BTN-PRIMARY-TEXT)
}

.btn--primary.btn--text,.btn--primary .btn--text.shopify-payment-button__button--unbranded {
    --btn-text: var(--BTN-PRIMARY-BORDER);
    --btn-text-hover: var(--BTN-PRIMARY-BORDER);
    --link-a70: var(--BTN-PRIMARY-BORDER-A70)
}

.btn--secondary,.btn--secondary .shopify-payment-button__button--unbranded {
    --btn-border: var(--BTN-SECONDARY-BORDER);
    --btn-bg: var(--BTN-SECONDARY-BG);
    --btn-text: var(--BTN-SECONDARY-TEXT)
}

.btn--secondary.btn--text,.btn--secondary .btn--text.shopify-payment-button__button--unbranded {
    --btn-text: var(--BTN-SECONDARY-BORDER);
    --btn-text-hover: var(--BTN-SECONDARY-BORDER);
    --link-a70: var(--BTN-SECONDARY-BORDER-A70)
}

.btn--white,.btn--white .shopify-payment-button__button--unbranded {
    --btn-border: var(--COLOR-TEXT-BTN-BORDER-WHITE);
    --btn-bg: var(--COLOR-TEXT-BTN-BG-WHITE);
    --btn-text: var(--COLOR-TEXT-BTN-WHITE)
}

.btn--white.btn--text,.btn--white .btn--text.shopify-payment-button__button--unbranded {
    --btn-text: #FFF;
    --btn-text-hover: #FFF;
    --link-a70: var(--COLOR-TEXT-BTN-WHITE-A70)
}

.btn--black,.btn--black .shopify-payment-button__button--unbranded {
    --btn-border: var(--COLOR-TEXT-BTN-BORDER-BLACK);
    --btn-bg: var(--COLOR-TEXT-BTN-BG-BLACK);
    --btn-text: var(--COLOR-TEXT-BTN-BLACK)
}

.btn--black.btn--text,.btn--black .btn--text.shopify-payment-button__button--unbranded {
    --btn-text: #000;
    --btn-text-hover: #000;
    --link-a70: var(--COLOR-TEXT-BTN-BLACK-A70)
}

.btn--solid.btn--primary,.btn--solid .btn--primary.shopify-payment-button__button--unbranded,.btn--primary .btn--solid.shopify-payment-button__button--unbranded,.btn--primary .btn--solid .shopify-payment-button__button--unbranded,.btn--solid .btn--primary .shopify-payment-button__button--unbranded {
    --btn-border: var(--BTN-PRIMARY-BG);
    --btn-bg: var(--BTN-PRIMARY-BG);
    --btn-text: var(--BTN-PRIMARY-TEXT);
    --btn-border-hover: var(--BTN-PRIMARY-BG-BRIGHTER);
    --btn-bg-hover: var(--BTN-PRIMARY-BG-BRIGHTER);
    --btn-text-hover: var(--BTN-PRIMARY-TEXT)
}

.btn--solid.btn--secondary,.btn--solid .btn--secondary.shopify-payment-button__button--unbranded,.btn--secondary .btn--solid.shopify-payment-button__button--unbranded,.btn--secondary .btn--solid .shopify-payment-button__button--unbranded,.btn--solid .btn--secondary .shopify-payment-button__button--unbranded {
    --btn-border: var(--BTN-SECONDARY-BG);
    --btn-bg: var(--BTN-SECONDARY-BG);
    --btn-text: var(--BTN-SECONDARY-TEXT);
    --btn-border-hover: var(--BTN-SECONDARY-BG-BRIGHTER);
    --btn-bg-hover: var(--BTN-SECONDARY-BG-BRIGHTER);
    --btn-text-hover: var(--BTN-SECONDARY-TEXT)
}

.btn--solid.btn--white,.btn--solid .btn--white.shopify-payment-button__button--unbranded,.btn--white .btn--solid.shopify-payment-button__button--unbranded,.btn--white .btn--solid .shopify-payment-button__button--unbranded,.btn--solid .btn--white .shopify-payment-button__button--unbranded {
    --btn-border: #FFF;
    --btn-bg: #FFF;
    --btn-text: #000;
    --btn-border-hover: var(--COLOR-TEXT-BTN-BG-WHITE-BRIGHTER);
    --btn-bg-hover: var(--COLOR-TEXT-BTN-BG-WHITE-BRIGHTER);
    --btn-text-hover: #000
}

.btn--solid.btn--black,.btn--solid .btn--black.shopify-payment-button__button--unbranded,.btn--black .btn--solid.shopify-payment-button__button--unbranded,.btn--black .btn--solid .shopify-payment-button__button--unbranded,.btn--solid .btn--black .shopify-payment-button__button--unbranded {
    --btn-border: #000;
    --btn-bg: #000;
    --btn-text: #FFF;
    --btn-border-hover: var(--COLOR-TEXT-BTN-BG-BLACK-BRIGHTER);
    --btn-bg-hover: var(--COLOR-TEXT-BTN-BG-BLACK-BRIGHTER);
    --btn-text-hover: #FFF
}

.btn--outline.btn--primary,.btn--outline .btn--primary.shopify-payment-button__button--unbranded,.btn--primary .btn--outline.shopify-payment-button__button--unbranded,.btn--primary .btn--outline .shopify-payment-button__button--unbranded,.btn--outline .btn--primary .shopify-payment-button__button--unbranded {
    --btn-border: var(--BTN-PRIMARY-BORDER);
    --btn-bg: transparent;
    --btn-text: var(--BTN-PRIMARY-BORDER);
    --btn-border-hover: var(--BTN-PRIMARY-BORDER);
    --btn-bg-hover: transparent;
    --btn-text-hover: var(--BTN-PRIMARY-BORDER)
}

.btn--outline.btn--secondary,.btn--outline .btn--secondary.shopify-payment-button__button--unbranded,.btn--secondary .btn--outline.shopify-payment-button__button--unbranded,.btn--secondary .btn--outline .shopify-payment-button__button--unbranded,.btn--outline .btn--secondary .shopify-payment-button__button--unbranded {
    --btn-border: var(--BTN-SECONDARY-BORDER);
    --btn-bg: transparent;
    --btn-text: var(--BTN-SECONDARY-BORDER);
    --btn-border-hover: var(--BTN-SECONDARY-BORDER);
    --btn-bg-hover: transparent;
    --btn-text-hover: var(--BTN-SECONDARY-BORDER)
}

.btn--outline.btn--white,.btn--outline .btn--white.shopify-payment-button__button--unbranded,.btn--white .btn--outline.shopify-payment-button__button--unbranded,.btn--white .btn--outline .shopify-payment-button__button--unbranded,.btn--outline .btn--white .shopify-payment-button__button--unbranded {
    --btn-border: #FFF;
    --btn-bg: transparent;
    --btn-text: #FFF;
    --btn-border-hover: #FFF;
    --btn-bg-hover: transparent;
    --btn-text-hover: #FFF
}

.btn--outline.btn--black,.btn--outline .btn--black.shopify-payment-button__button--unbranded,.btn--black .btn--outline.shopify-payment-button__button--unbranded,.btn--black .btn--outline .shopify-payment-button__button--unbranded,.btn--outline .btn--black .shopify-payment-button__button--unbranded {
    --btn-border: #000;
    --btn-bg: transparent;
    --btn-text: #000;
    --btn-border-hover: #000;
    --btn-bg-hover: transparent;
    --btn-text-hover: #000
}

.btn--large {
    max-width: 100%;
    --btn-top: var(--BTN-SIZE-LARGE);
    --btn-left: calc(var(--BTN-SIZE-LARGE) * 1.4)
}

@media only screen and (max-width: 749px) {
    .btn--large {
        --btn-top:calc(var(--BTN-SIZE-LARGE) * 0.75);
        --btn-left: calc(var(--BTN-SIZE-LARGE) * 1.15)
    }
}

.btn--small {
    --btn-top: var(--BTN-SIZE-SMALL);
    --btn-left: calc(var(--BTN-SIZE-SMALL) * 1.7)
}

.btn--small .icon-nav-arrow-left,.btn--small .icon-nav-arrow-right {
    --icon-size: 16px
}

.btn--text {
    --btn-top: 0;
    --btn-left: 0;
    --btn-radius: 0;
    --btn-border: transparent;
    --btn-border-hover: transparent;
    --btn-bg: transparent;
    width: auto;
    max-width: none;
    display: inline-block
}

.btn--text span {
    --main-color: var(--btn-text);
    --hover-color: var(--link-a70);
    position: relative;
    display: inline-block;
    background-image: linear-gradient(to right,var(--hover-color) 0% 50%,var(--main-color) 50% 100%);
    background-size: 200% 100%;
    background-position: 100% 0;
    background-repeat: no-repeat;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: #fff0;
    transition: background-position 0.3s cubic-bezier(0.39,0.575,0.565,1)
}

.btn--text:not(.btn--text-no-underline) span::after {
    --main-color: var(--btn-text);
    --hover-color: var(--link-a70);
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 1px;
    width: 100%;
    pointer-events: none;
    background: linear-gradient(to right,var(--hover-color) 0% 50%,var(--main-color) 50% 100%);
    background-size: 200% 100%;
    background-position: 100% 0;
    transition: background-position 0.3s cubic-bezier(0.39,0.575,0.565,1);
    pointer-events: none
}

@media (hover: hover) {
    .btn--text span:hover,.btn--text:not(.btn--text-no-underline) span:hover::after {
        background-position:0 0
    }
}

.btn--outline,.btn--outline .shopify-payment-button__button--unbranded,.btn--solid,.btn--solid .shopify-payment-button__button--unbranded {
    overflow: hidden;
    z-index: 1
}

.btn--outline::after,.btn--outline .shopify-payment-button__button--unbranded::after,.btn--solid::after,.btn--solid .shopify-payment-button__button--unbranded::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: currentcolor;
    opacity: 0.05;
    transform: translate3d(0,100%,0);
    transition: transform 0.5s cubic-bezier(0.33,0,0,1)
}

.btn--solid::after,.btn--solid .shopify-payment-button__button--unbranded::after {
    background-color: var(--btn-bg-hover);
    opacity: 1
}

@media (hover: hover) {
    .btn--outline:hover::after,.btn--outline .shopify-payment-button__button--unbranded:hover::after,.btn--solid:hover::after,.btn--solid .shopify-payment-button__button--unbranded:hover::after {
        transform:translate3d(0,0,0)
    }
}

.btn--half {
    margin: 0;
    min-width: 50%
}

@media only screen and (max-width: 749px) {
    .btn--half {
        width:100%
    }
}

.btn--full {
    width: 100%;
    min-width: 100%;
    max-width: 100%
}

.btn--scroll-top {
    --icon-size: 28px;
    --btn-size: 40px;
    position: fixed;
    right: var(--outer);
    bottom: var(--outer);
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    width: var(--btn-size);
    height: var(--btn-size);
    padding: 0;
    overflow: hidden;
    padding-left: 0;
    padding-right: 0;
    box-shadow: 0 0 10px rgb(0 0 0 / 0.2);
    opacity: 0;
    visibility: hidden;
    transform: translateY(100%);
    transition: opacity 0.3s ease,box-shadow 0.3s ease,transform 0.3s ease,visibility 0s linear 0.3s
}

.btn--scroll-top.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition-delay: 0s
}

@media only screen and (max-width: 749px) {
    .btn--scroll-top {
        right:16px;
        bottom: 16px
    }
}

.inline-nav {
    list-style: none;
    list-style-type: none;
    text-align: center;
    padding: 0;
    margin: 30px 0
}

.inline-nav li {
    display: inline-block;
    padding: 5px 0;
    margin: 5px 20px
}

@media only screen and (max-width: 749px) {
    .inline-nav li {
        margin:5px 15px 5px 0
    }
}

.inline-nav li a {
    color: var(--link);
    position: relative
}

.inline-nav li a::after {
    content: "";
    margin: auto;
    width: 10%;
    height: 2px;
    position: absolute;
    bottom: -4px;
    left: 0;
    opacity: 0;
    background: var(--link-hover);
    transition: 0.25s ease-out;
    transition-property: color,background,border
}

.inline-nav li.inline-nav--active a::after,.inline-nav li a:hover::after {
    color: var(--link);
    opacity: 1;
    width: 100%
}

.blog__title+.inline-nav {
    margin-top: 0
}

.aos-initialized a[data-aos][data-aos][data-aos-delay="200"].aos-animate,.aos-initialized a[data-aos][data-aos][data-aos-delay="500"].aos-animate {
    transition: 0.25s ease-out;
    transition-property: color,background,border
}

.btn__added {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 14px;
    height: 8px;
    border-left: 1px solid var(--btn-text);
    border-bottom: 1px solid var(--btn-text);
    margin-top: -2px;
    transform: translate(-50%,-50%) rotate(-45deg);
    opacity: 0
}

.btn__added,.btn__loader {
    opacity: 0
}

.btn__plus {
    --icon-size: 24px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: var(--icon-size);
    height: var(--icon-size);
    margin: auto;
    background: currentcolor;
    -webkit-mask-image: var(--icon-add-cart);
    mask-image: var(--icon-add-cart);
    -webkit-mask-size: cover;
    mask-size: cover;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center center;
    mask-position: center center
}

.btn__plus,.btn__text,.btn__loader,.btn__added,.btn__error {
    transition: opacity 0.5s,visibility 0.5s
}

.is-loading.btn::after,.shopify-payment-button .is-loading.shopify-payment-button__button--unbranded::after,#challenge .is-loading.shopify-challenge__button::after {
    content: none
}

.is-loading>.btn__text,.is-loading>.btn__plus,.is-loading>.btn__added {
    opacity: 0
}

.is-loading>.btn__loader {
    opacity: 1
}

.is-loading>.btn__loader circle~circle {
    animation-play-state: running
}

.is-added.btn,.shopify-payment-button .is-added.shopify-payment-button__button--unbranded,#challenge .is-added.shopify-challenge__button,.is-added.btn[data-add-to-cart],.is-added.btn[data-cart-bar-add-to-cart] {
    opacity: 1
}

.is-added.btn::after,.shopify-payment-button .is-added.shopify-payment-button__button--unbranded::after,#challenge .is-added.shopify-challenge__button::after,.is-added.btn[data-add-to-cart]::after,.is-added.btn[data-cart-bar-add-to-cart]::after {
    content: none
}

.is-added>.btn__added {
    opacity: 1
}

.is-added>.btn__plus,.is-added>.btn__text,.is-added>.btn__loader {
    opacity: 0
}

.is-added.btn::after,.shopify-payment-button .is-added.shopify-payment-button__button--unbranded::after,#challenge .is-added.shopify-challenge__button::after {
    content: none
}

.has-error .btn__loader,.has-error .btn__text,.has-error .btn__plus {
    opacity: 0;
    visibility: hidden
}

.has-error.btn::after,.shopify-payment-button .has-error.shopify-payment-button__button--unbranded::after,#challenge .has-error.shopify-challenge__button::after {
    content: none
}

.has-error .btn__error {
    opacity: 1;
    visibility: unset
}

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

.svg-loader circle {
    stroke-width: 1;
    stroke: var(--accent-fade);
    fill: none
}

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

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

    100% {
        stroke-dashoffset: 0
    }
}

.badge {
    border: none;
    padding: 3px 6px;
    background-color: var(--border-light);
    color: var(--text-dark);
    border-radius: 3px
}

.grecaptcha-badge {
    visibility: hidden
}

input,textarea,select,.popout__toggle,.input-group {
    font-family: var(--FONT-STACK-BODY);
    font-style: var(--FONT-STYLE-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none;
    border: 1px solid var(--border);
    font-size: var(--FONT-SIZE-BASE);
    border-radius: var(--RADIUS-SELECT);
    max-width: 100%;
    padding: 9px 16px;
    margin: 7px 0;
    background: var(--TRANSPARENT)
}

@media only screen and (max-width: 749px) {
    input,textarea,select,.popout__toggle,.input-group {
        padding:9px 10px
    }
}

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

input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active,textarea:-webkit-autofill,textarea:-webkit-autofill:hover,textarea:-webkit-autofill:focus,textarea:-webkit-autofill:active,select:-webkit-autofill,.popout__toggle:-webkit-autofill,select:-webkit-autofill:hover,select:-webkit-autofill:focus,select:-webkit-autofill:active,.input-group:-webkit-autofill,.input-group:-webkit-autofill:hover,.input-group:-webkit-autofill:focus,.input-group:-webkit-autofill:active {
    -webkit-transition: background-color 5000s ease-in-out 0s,border-color 5000s ease-in-out 0s;
    transition: background-color 5000s ease-in-out 0s,border-color 5000s ease-in-out 0s;
    -webkit-text-fill-color: var(--text-dark)!important
}

textarea {
    min-height: 100px;
    padding: 16px
}

@media only screen and (max-width: 749px) {
    textarea {
        padding:9px 10px
    }
}

.form-field {
    --bg: var(--COLOR-BG);
    width: 100%;
    max-width: 400px;
    margin: 0 auto 20px;
    line-height: 1;
    text-align: left;
    position: relative
}

.form-field label {
    background: var(--bg);
    font-size: var(--font-body-x-small);
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    left: 9px;
    opacity: 0;
    padding: 0 0.5em;
    position: absolute;
    top: 2em;
    transition: 0.25s ease-out;
    transition-property: color,background,border;
    z-index: -1
}

.form-field label.label--float {
    opacity: 1;
    top: -0.8em;
    z-index: 1
}

.form-field select,.form-field .popout__toggle,.form-field input[type=text],.form-field input[type=password],.form-field input[type=email],.form-field input[type=number],.form-field input[type=tel],.form-field textarea {
    display: block;
    width: 100%
}

input[type=text],input[type=password],input[type=email],input[type=number],input[type=tel],textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

input[type=checkbox] {
    margin: 4px 3px 4px 0;
    -webkit-appearance: checkbox;
    -moz-appearance: checkbox;
    appearance: checkbox
}

input[type=radio] {
    margin: 11px 3px 4px 0;
    -webkit-appearance: radio;
    -moz-appearance: radio;
    appearance: radio
}

legend {
    padding-bottom: 6px
}

.label--block {
    display: block
}

.checkbox {
    position: relative
}

.checkbox input[type=checkbox] {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    padding: 0;
    margin: 0;
    opacity: 0
}

.checkbox input[type=checkbox]+label {
    display: flex;
    align-items: center;
    cursor: pointer
}

.checkbox input[type=checkbox]+label::before {
    content: "";
    align-self: flex-start;
    flex: 0 0 auto;
    display: inline-block;
    width: 1.2em;
    height: 1.2em;
    border: 1px solid var(--text-light);
    margin-right: 10px
}

.checkbox input[type=checkbox]:checked+label::before {
    background: var(--accent);
    box-shadow: inset 0 0 0 2px var(--COLOR-BG)
}

.input-group {
    background-color: var(--TRANSPARENT);
    position: relative;
    display: table;
    border-collapse: separate;
    padding: 0
}

.input-group .btn,.input-group .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .input-group .shopify-payment-button__button--unbranded,.input-group #challenge .shopify-challenge__button,#challenge .input-group .shopify-challenge__button {
    box-shadow: none
}

.input-group input,.input-group input:focus,.input-group input:active {
    background-color: var(--TRANSPARENT);
    border: none;
    box-shadow: none;
    margin: 0
}

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

.input-group-field,.input-group-btn {
    display: table-cell;
    vertical-align: middle;
    margin: 0
}

.input-group .input-group-field {
    width: 100%;
    margin-bottom: 0
}

.input-group-btn {
    position: relative;
    white-space: nowrap;
    width: 1%;
    padding: 0;
    margin: 0
}

.form__legal {
    max-width: none;
    line-height: 1;
    text-align: left
}

.form__legal p {
    font-style: italic;
    color: var(--text-a80);
    font-size: var(--font-body-x-small)
}

.form__legal p a {
    padding-bottom: 0
}

.small-newsletter .form__legal,.modal--newsletter .form__legal,.account--login .form__legal {
    margin-top: 15px
}

.small-newsletter .form__legal p,.modal--newsletter .form__legal p,.account--login .form__legal p {
    margin: 0
}

select,.popout__toggle {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: var(--ICON-SELECT);
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-color: #fff0;
    background-size: 18px auto;
    padding-right: 28px;
    text-indent: 0.01px;
    text-overflow: unset;
    cursor: pointer
}

select::-ms-expand,.popout__toggle::-ms-expand {
    display: none
}

input.input-error,select.input-error,.input-error.popout__toggle,textarea.input-error {
    border-color: var(--COLOR-ERROR-BORDER);
    background-color: var(--COLOR-ERROR-BG);
    color: var(--COLOR-ERROR)
}

product-form .errors,form .errors,.form-errors {
    padding: var(--inner);
    margin-bottom: 10px;
    border: 1px solid var(--COLOR-ERROR-BORDER);
    border-radius: var(--RADIUS-SELECT);
    background-color: var(--COLOR-ERROR-BG);
    color: var(--COLOR-ERROR)
}

product-form .errors ul,form .errors ul,.form-errors ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    color: inherit
}

product-form .errors li:last-child,form .errors li:last-child,.form-errors li:last-child {
    margin-bottom: 0
}

.form-success {
    border: 1px solid var(--border);
    border-radius: var(--RADIUS-SELECT);
    margin: 0 0 1.875 0;
    padding: var(--inner);
    color: var(--text-dark);
    box-shadow: 0 1px 3px var(--border-hairline),0 1px 2px var(--border-hairline)
}

.contact-form .form-success {
    max-width: 400px;
    margin: 30px auto
}

.field {
    --border: var(--text-a35, var(--text));
    display: block;
    width: 100%;
    border: 0;
    border-bottom: 1px solid var(--border);
    padding: 1em 0;
    border-radius: 0;
    color: var(--text)
}

.field:focus {
    border: 0;
    border-bottom: 1px solid var(--border)
}

.field::placeholder,.field:-webkit-autofill,.field:-webkit-autofill:hover,.field:-webkit-autofill:focus,.field:-webkit-autofill:active {
    -webkit-text-fill-color: var(--text-a80)
}

.template- .main-content>*:not(.shopify-policy__container) {
    margin-top: 60px
}

.placeholder-svg {
    display: block;
    fill: var(--text-light);
    background-color: var(--bg-accent);
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    border: 1px solid var(--bg-accent)
}

.placeholder-noblocks {
    position: relative;
    z-index: 11;
    width: 100%;
    padding: 40px;
    text-align: center
}

.placeholder-background {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.placeholder-background .icon {
    border: 0
}

.lazy-image {
    display: block
}

.lazy-image--backfill::after {
    content: none;
    display: none
}

.lazy-image--backfill.is-loading {
    position: relative;
    overflow: hidden;
    background: var(--bg-accent);
    z-index: 1
}

@media only screen and (min-width: 750px) {
    .lazy-image--backfill.is-loading::after {
        content:"";
        display: block;
        position: absolute;
        top: -10%;
        left: -10%;
        right: -10%;
        bottom: -10%;
        z-index: -1;
        animation-duration: 1.6s;
        animation-fill-mode: forwards;
        animation-iteration-count: infinite;
        animation-name: shimmer;
        animation-timing-function: linear;
        background: linear-gradient(98deg,var(--bg-accent) 16%,var(--bg-accent-lighten) 32%,var(--bg-accent) 48%);
        transform: translateX(-100%)
    }
}

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

    100% {
        transform: translateX(100%)
    }
}

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

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

.image__fill {
    position: relative;
    overflow: hidden;
    width: 100%
}

.image__fill img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    image-rendering: auto
}

.image-wrapper {
    display: block;
    position: relative;
    width: 100%;
    height: 0;
    padding-top: calc(1 / var(--aspect-ratio) * 100%)
}

.image-wrapper img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    image-rendering: auto
}

.image-wrapper .svg-placeholder {
    position: absolute;
    top: 0;
    left: 0
}

@media only screen and (min-width: 750px) {
    .image-wrapper.mobile {
        display:none
    }
}

@media only screen and (max-width: 749px) {
    .image-wrapper.desktop {
        display:none
    }
}

.image-wrapper--cover {
    height: 100%;
    padding-top: 0
}

.image-wrapper--cover img {
    object-fit: cover
}

img.fit-cover {
    object-fit: cover
}

.image__hero__frame {
    flex: 1;
    position: relative;
    overflow: hidden;
    height: 100%
}

@media only screen and (min-width: 750px) {
    .image__hero__frame.image-height {
        padding-top:calc(1 / var(--aspect-ratio) * 100%);
        min-height: 100%;
        height: auto
    }
}

@media only screen and (max-width: 749px) {
    .image__hero__frame.image-height--mobile {
        padding-top:calc(1 / var(--aspect-ratio-mobile, var(--aspect-ratio)) * 100%);
        min-height: 100%;
        height: auto
    }
}

.image__hero__pane {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: inherit
}

.image__hero__scale {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    min-height: inherit
}

.image__hero__scale[data-parallax-img] {
    height: calc(1 / var(--aspect-ratio-mobile, var(--aspect-ratio)) * 100vw)
}

@media only screen and (min-width: 750px) {
    .image__hero__scale[data-parallax-img] {
        height:calc(1 / var(--aspect-ratio) * 100vw)
    }
}

.image--empty {
    background: var(--bg-accent)
}

.image__hero__missing-metafield-image {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    background: var(--bg-accent);
    color: var(--COLOR-TEXT-BTN-BG-BLACK);
    padding: var(--inner)
}

parallax-hero .image__hero__pane {
    display: flex;
    align-items: center
}

parallax-hero .image__hero__scale {
    min-height: var(--PARALLAX-STRENGTH-MIN);
    max-height: var(--PARALLAX-STRENGTH-MAX)
}

.link-over-image {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 20;
    will-change: opacity
}

.link-over-image .image-wrapper {
    transition: transform 2s cubic-bezier(0.215,0.61,0.355,1);
    transform: scale(1)
}

.link-over-image:hover .image-wrapper {
    transform: scale(1.06)
}

.image-overlay-bottom {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    opacity: 0.5;
    background: linear-gradient(to bottom,rgb(0 0 0 / 0.05),rgb(0 0 0 / 0.3) 100%)
}

.fade-in-image .image__hero__scale>img {
    opacity: 0;
    transition: opacity 0.5s ease-in
}

.fade-in-image .image__hero__scale>img.is-loaded {
    opacity: 1
}

.fade-in-image-zoom .image__hero__scale>img {
    opacity: 0;
    transform: scale(1.06);
    transition: opacity 0.65s cubic-bezier(0.215,0.61,0.355,1),transform 2s cubic-bezier(0.215,0.61,0.355,1)
}

.fade-in-image-zoom .image__hero__scale>img.is-loaded {
    opacity: 1;
    transform: scale(1)
}

.inline-image {
    --image-width: 200px;
    display: inline-block;
    width: var(--image-width);
    margin: 2px 0;
    vertical-align: middle
}

@media only screen and (max-width: 749px) {
    .inline-image {
        width:var(--image-width-mobile,var(--image-width))
    }
}

.inline-image__inner {
    overflow: hidden;
    border-radius: var(--radius)
}

.inline-image__image {
    transition: transform 2s cubic-bezier(0.215,0.61,0.355,1)
}

.inline-image__link:hover .inline-image__image {
    transform: scale(1.08)
}

parallax-hero {
    display: block
}

.tooltip-default {
    --bg: var(--COLOR-BG);
    position: absolute;
    z-index: 7000;
    top: var(--tooltip-top,0);
    left: 0;
    right: 0;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.2s ease-out;
    overflow: hidden;
    padding-bottom: 20px;
    background: none
}

.tooltip-default__inner {
    position: relative;
    display: inline-block;
    max-width: 100%
}

.tooltip-default__arrow {
    position: absolute;
    top: 8px;
    left: 0;
    z-index: 1;
    margin-top: 4px;
    transition: top 0.2s ease-out
}

.tooltip-default__arrow::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 12px;
    height: 12px;
    margin-left: -6px;
    background: var(--bg);
    border: 1px solid var(--border);
    -webkit-clip-path: polygon(0% 0%,100% 100%,0 100%);
    clip-path: polygon(0% 0%,100% 100%,0 100%);
    transform: rotate(135deg);
    content: ""
}

.tooltip-default__text {
    position: relative;
    top: 8px;
    margin-top: 10px;
    background: var(--bg);
    padding: 3px 10px;
    border-radius: 0;
    box-shadow: 0 0 0 1px var(--border);
    font-size: var(--font-body-small);
    text-align: center;
    transition: top 0.2s ease-out
}

.tooltip-default.is-hiding {
    opacity: 1
}

.tooltip-default.is-hiding .tooltip-default__arrow,.tooltip-default.is-hiding .tooltip-default__text {
    top: 0
}

.tooltip-default.is-visible {
    transition: none;
    animation: tooltip-opacity 0.2s ease-out;
    animation-fill-mode: forwards
}

.tooltip-default.is-visible .tooltip-default__arrow,.tooltip-default.is-visible .tooltip-default__text {
    transition: none;
    animation: tooltip-top 0.2s ease-out;
    animation-fill-mode: forwards
}

@keyframes tooltip-top {
    from {
        top: 8px
    }

    to {
        top: 0
    }
}

@keyframes tooltip-opacity {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

toggle-ellipsis {
    --height: 175px;
    display: block;
    position: relative;
    overflow: hidden;
    max-height: var(--height);
    transition: max-height 0.5s ease
}

.toggle-ellipsis__content {
    overflow: hidden
}

.toggle-ellipsis__actions {
    --bg: var(--COLOR-BG);
    display: none;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 10px 0;
    background: var(--bg);
    transition: opacity 0.5s ease,visibility 0.5s
}

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

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

.is-enabled .toggle-ellipsis__actions {
    display: block
}

.drawer {
    --inner: 15px;
    --inner-offset: -15px
}

.drawer quantity-input {
    display: block
}

.drawer .cart__checkout {
    margin: 0 0 var(--inner)
}

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

.drawer .cart__item__content {
    display: grid;
    grid-template-columns: minmax(50%,1fr) auto;
    gap: var(--inner)
}

.drawer .cart__item__content__right {
    text-align: right
}

.drawer .is-hidden a,.drawer .is-hidden button,.drawer .is-hidden input,.drawer .is-hidden textarea,.drawer .is-hidden select,.drawer .is-hidden .popout__toggle {
    visibility: hidden
}

.cart__view {
    width: 100%;
    margin-bottom: var(--inner)
}

.cart__view--additional-checkout-buttons {
    margin: var(--inner) 0
}

.drawer__inner {
    visibility: hidden;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    position: fixed;
    top: 0;
    left: 100vw;
    z-index: 6001;
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
    border-left: 1px solid var(--border);
    background: var(--bg)
}

.is-open .drawer__inner {
    animation: slideInRight 0.3s ease;
    animation-fill-mode: forwards
}

.is-closing .drawer__inner {
    animation: slideOutRight 0.3s ease;
    animation-fill-mode: forwards
}

@media only screen and (min-width: 480px) {
    .drawer__inner {
        max-width:var(--DRAWER-WIDTH)
    }
}

@media only screen and (max-width: 749px) {
    .drawer__inner {
        border-left:none
    }
}

.drawer__underlay {
    z-index: 6000
}

.drawer .cart__widget+.cart__form {
    margin-top: -1px
}

.drawer .cart__widget+.cart__foot__inner {
    border-top: 0
}

.drawer .cart__foot__inner {
    padding: calc(var(--inner) - 2px) var(--inner)
}

.drawer .cart__widget__title {
    padding-left: var(--inner)
}

.drawer .cart__widget__content__inner {
    padding-left: var(--inner);
    padding-right: var(--inner)
}

.drawer .product-upsell__errors .errors {
    margin-top: 0
}

.drawer .cart__payment-icons {
    padding: var(--inner)
}

.drawer__head {
    position: relative;
    width: 100%;
    padding: var(--inner);
    border-bottom: 1px solid var(--border)
}

.drawer__heading {
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    font-style: var(--FONT-STYLE-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none;
    display: flex;
    margin: 0 0 -3px;
    font-size: inherit;
    line-height: 1;
    letter-spacing: 0.025em
}

.drawer__close {
    --icon-size: 24px;
    position: absolute;
    top: 50%;
    right: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    color: var(--link);
    background: #fff0;
    border-radius: var(--RADIUS);
    font-size: 0;
    text-decoration: none;
    transform: translate3d(0,-50%,0);
    transition: color 0.3s ease
}

.drawer__close .icon {
    display: block;
    fill: currentcolor;
    pointer-events: none;
    will-change: transform;
    transition: transform 0.4s cubic-bezier(0.4,0,0.22,1)
}

@media (hover: hover) {
    .drawer__close:hover {
        color:var(--link-hover)
    }

    .drawer__close:hover .icon {
        transform: scale(1.25)
    }
}

.drawer__body {
    flex: 1;
    width: 100%;
    min-height: 250px;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch
}

.drawer__items {
    display: block
}

.drawer__foot {
    margin-top: -1px
}

.drawer__foot .cart__note {
    margin-top: 0
}

.drawer__empty {
    flex-grow: 1;
    flex-direction: column;
    max-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    visibility: hidden;
    align-items: center;
    width: 100%;
    transition: max-height 0.3s ease,visibility 0.3s
}

.is-empty .cart-block:not(.cart-block--top) {
    max-height: 0;
    overflow: hidden;
    visibility: hidden
}

.is-empty .drawer__empty {
    display: flex;
    max-height: 100%
}

.is-empty .drawer__body {
    flex: 0 0 auto;
    min-height: 0
}

.is-open.is-empty .drawer__empty {
    visibility: visible
}

.drawer__empty__inner {
    flex: 0 1 100%;
    width: 100%;
    padding: var(--inner);
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: var(--inner)
}

.drawer__message {
    padding: 12px var(--inner)
}

.drawer__message.text-center {
    text-align: center;
    justify-content: center
}

.drawer__message.free-shipping {
    overflow-wrap: anywhere
}

.drawer__message--custom {
    min-height: 45px;
    background: var(--bg-accent);
    text-align: left
}

.drawer__message--custom p {
    margin: 0
}

.drawer__empty__message {
    text-align: center;
    transition: all 0.3s;
    margin: var(--inner) auto
}

.is-hidden .drawer__empty__message {
    padding: 0
}

.drawer__empty__buttons {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: var(--inner);
    justify-items: center;
    margin: 0 0 var(--inner)
}

.drawer__empty__item {
    width: 100%
}

.drawer__empty__item--odd--last {
    grid-column: 2 span/3;
    max-width: 100%
}

.drawer__empty__item .btn,.drawer__empty__item .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .drawer__empty__item .shopify-payment-button__button--unbranded,.drawer__empty__item #challenge .shopify-challenge__button,#challenge .drawer__empty__item .shopify-challenge__button {
    min-height: 100%
}

.drawer__empty__product:empty {
    display: none
}

.drawer__errors {
    position: sticky;
    top: 0;
    z-index: 9;
    border-left: none;
    border-right: none
}

.drawer__errors .cart__errors__inner {
    padding: calc(var(--inner) / 2) var(--inner);
    margin: 0;
    border-left: none;
    border-right: none;
    border-radius: 0
}

.cart-block--top {
    position: sticky;
    top: 0;
    z-index: 15;
    padding: var(--inner);
    background: var(--bg);
    border-bottom: 1px solid var(--border)
}

.cart-block--items {
    z-index: 10
}

.cart-block--bottom {
    position: sticky;
    bottom: 0;
    background: var(--bg);
    z-index: 5;
    order: 10;
    width: 100%;
    margin-top: auto
}

.cart-block {
    transition: max-height 0.3s ease,visibility 0.3s
}

.cart-block .accordion {
    margin-top: 0
}

.cart-block .cart__price__holder .cart__total:first-child {
    margin-top: 0
}

.cart__item {
    position: relative;
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: center;
    padding: var(--inner);
    border-bottom: 1px solid var(--border)
}

.cart__item a {
    --link: var(--text);
    --link-hover: var(--text-hover)
}

.cart__item:has(.popout-list--visible) {
    z-index: 20
}

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

.cart__item--open {
    z-index: 1
}

.cart__item.is-removed {
    overflow: hidden;
    animation: cartItemRemoved 0.5s ease;
    animation-fill-mode: forwards
}

.cart__item__image {
    font-size: 0
}

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

.cart__item__image a {
    display: block;
    position: relative;
    width: 90px;
    height: 90px;
    background: var(--bg);
    text-decoration: none
}

.cart__item__image .lazy-image {
    height: 100%
}

.cart__item__image.image--empty a {
    background: #fff0
}

.cart__item__content {
    width: calc(100% - 90px);
    padding-left: 30px
}

.cart__item__title {
    font-family: var(--FONT-STACK-BODY);
    font-style: var(--FONT-STYLE-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none;
    margin-top: 0;
    margin-bottom: 5px;
    font-size: inherit;
    line-height: 1.35
}

.cart__item__title a {
    transition: color 0.3s ease
}

.cart__item__remove {
    display: inline-block;
    font-size: var(--font-body-x-small);
    letter-spacing: 0.05em;
    text-transform: uppercase
}

.drawer__items .cart__item__remove {
    margin-top: 8px
}

.cart__item__meta {
    margin-bottom: 10px
}

.cart__item__meta:empty {
    display: none
}

.cart__item__meta:last-child {
    margin-bottom: 0
}

.cart__item__selling-plan {
    font-style: italic
}

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

.item__title .cart__item__selling-plan span {
    margin-bottom: 0;
    margin-top: 10px
}

.cart__item__selected-options,.cart__item__property {
    margin: 2px 0 0;
    line-height: 1.3
}

.cart__blocks {
    height: 100%;
    display: flex;
    flex-flow: column
}

.drawer__inner .block__icon__container {
    padding: var(--inner)
}

.cart__custom-code {
    padding: var(--inner)
}

header-component,hover-disclosure {
    display: block
}

.header-sections {
    display: flex;
    flex-direction: column
}

.header-sections .page-announcement {
    order: -1
}

.header__wrapper {
    --bg: var(--COLOR-MENU-BG);
    position: relative;
    transition: top 0.2s linear
}

.header__desktop {
    --text: var(--COLOR-HEADER-LINK);
    --link: var(--COLOR-HEADER-LINK);
    --link-hover: var(--COLOR-HEADER-LINK-HOVER)
}

.theme__header {
    position: absolute;
    z-index: 2300;
    width: 100%
}

.theme__header .icon {
    --icons: currentcolor
}

.toolbar.has-border,.theme__header.has-border {
    --border: var(--border-color, var(--link))
}

.toolbar.has-border::before,.theme__header.has-border::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    pointer-events: none;
    transition: border-color 0.2s ease;
    border-bottom: 1px solid var(--border);
    opacity: var(--border-opacity,1)
}

.header__mobile {
    --text: var(--COLOR-HEADER-LINK);
    --link: var(--COLOR-HEADER-LINK);
    --link-hover: var(--COLOR-HEADER-LINK-HOVER);
    display: grid;
    min-height: 42px;
    grid-template-columns: repeat(3,1fr);
    gap: 10px
}

.header__mobile__bottom {
    --bg: var(--COLOR-MENU-BG);
    grid-column: span 3;
    margin: 0 var(--outer-offset);
    background: var(--bg)
}

body:has([data-header-transparent]) .header__mobile__bottom {
    --bg: transparent
}

@media only screen and (min-width: 750px) {
    .header__mobile__bottom {
        display:none
    }
}

.has-line-design .header__mobile__bottom {
    border-top: 1px solid var(--border)
}

.header__mobile__nav {
    position: relative;
    transition: opacity 0.2s ease 0.1s,visibility 0.3s
}

.header__mobile__nav::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: -5;
    transition: opacity 0.2s cubic-bezier(0.215,0.61,0.355,1),visibility 0.2s;
    opacity: 0;
    visibility: hidden;
    background: var(--bg)
}

.header__mobile__nav::before {
    content: "";
    position: absolute;
    z-index: 1;
    right: 0;
    top: 0;
    bottom: 0;
    width: calc(var(--outer) * 1.5);
    pointer-events: none;
    background: linear-gradient(to right,var(--COLOR-BG-TRANSPARENT) 0%,var(--bg) 90%);
    transition: opacity 0.2s cubic-bezier(0.215,0.61,0.355,1),visibility 0.2s;
    opacity: 0;
    visibility: hidden
}

.header__mobile__nav__scroller {
    display: flex;
    justify-content: space-between;
    overflow: hidden;
    overflow-x: auto;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scroll-padding: calc(var(--outer) - var(--inner));
    padding-left: calc(var(--outer) - var(--inner));
    scrollbar-width: none;
    -ms-overflow-style: none
}

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

.header__mobile__nav .navlink {
    display: block;
    scroll-snap-align: start;
    white-space: nowrap;
    padding: var(--inner)
}

.header__backfill {
    visibility: hidden;
    z-index: -1;
    position: relative;
    height: var(--header-height)
}

.header__logo {
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 46px
}

.header__logo__link {
    --logo-width: var(--logo-width-mobile);
    width: var(--logo-width);
    display: block;
    text-decoration: none;
    position: relative;
    max-width: calc(100vw - 202px - var(--scrollbar-width))
}

@media only screen and (min-width: 750px) {
    .header__logo__link {
        --logo-width:var(--logo-width-desktop)
    }
}

.header__logo__link::before,.js__header__stuck .header__logo__link::before,.meganav--visible .header__logo__link::before {
    padding-bottom: var(--logo-padding)
}

.header__logo--image .header__logo__link::before {
    content: "";
    display: block;
    width: 100%;
    height: 0;
    font-size: 0
}

.header__logo__text {
    font-family: var(--FONT-STACK-NAV);
    font-style: var(--FONT-STYLE-NAV);
    font-weight: var(--FONT-WEIGHT-NAV-BOLD);
    letter-spacing: var(--LETTER-SPACING-NAV);
    font-size: calc(var(--font-nav-large) * var(--FONT-SIZE-NAV));
    height: 50px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 1em 0;
    text-transform: uppercase;
    letter-spacing: 0.12em
}

.header__logo__text span {
    max-width: calc(50vw - 1em);
    text-align: center;
    line-height: 1;
    height: auto
}

.header__logo__text--long {
    font-size: calc(var(--font-nav-medium) * var(--FONT-SIZE-NAV))
}

@media only screen and (max-width: 749px) {
    .header__logo__text--break {
        overflow-wrap:break-word
    }
}

.header__mobile__left,.header__mobile__right {
    display: flex;
    align-items: center;
    min-height: inherit
}

.header__mobile__right {
    margin-right: -9px
}

@media only screen and (min-width: 750px) {
    .header__mobile__right {
        margin-right:-11px
    }
}

.header__mobile__left,.header__mobile__left .header__mobile__button .navlink {
    justify-content: flex-start
}

.header__mobile__right,.header__mobile__right .header__mobile__button .navlink {
    justify-content: flex-end
}

.header__mobile__right,.header__mobile__right .header__mobile__button {
    transform-style: preserve-3d;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.header__mobile__button {
    height: 100%
}

.header__mobile__button .navlink {
    height: 100%;
    display: flex;
    align-items: center;
    transition: color 0.25s cubic-bezier(0.215,0.61,0.355,1)
}

@media only screen and (max-width: 749px) {
    .header__mobile__button .navtext {
        display:none
    }
}

@media only screen and (max-width: 749px) {
    .header__mobile__button.navlink--toplevel::after {
        content:none
    }
}

.header__mobile__button:last-child .header__mobile__hamburger,.header__mobile__button:last-child .navlink {
    margin-right: 0
}

.header__desktop__upper,.header__desktop__lower,.header__mobile {
    padding-left: var(--outer);
    padding-right: var(--outer)
}

.header__desktop__upper,.header__desktop__lower {
    display: flex;
    width: 100%;
    justify-content: space-around;
    align-items: center;
    flex-wrap: nowrap
}

.header__desktop__bar__l,.header__desktop__bar__c,.header__desktop__bar__r {
    display: flex;
    align-self: stretch
}

.header__desktop__bar__l {
    flex: 1 0 0;
    justify-content: flex-start;
    align-items: center
}

.header__desktop__upper--reverse .header__desktop__bar__l {
    justify-content: center
}

.header__desktop__bar__c {
    flex-grow: 0
}

.header__desktop__upper--reverse .header__desktop__bar__c {
    order: -1;
    min-width: 33.33%
}

.header__desktop__buttons {
    display: flex;
    align-items: center
}

.header__desktop__buttons .socials {
    margin-right: 3px
}

.navlink--toplevel,.header__desktop__button .navlink {
    align-items: center;
    display: flex;
    height: 100%
}

.header__mobile__button .navlink:not(.navlink--toplevel),.header__desktop__button .navlink:not(.navlink--toplevel) {
    padding: 5px 9px;
    transition: color 0.25s cubic-bezier(0.215,0.61,0.355,1)
}

@media only screen and (min-width: 750px) {
    .header__mobile__button .navlink:not(.navlink--toplevel),.header__desktop__button .navlink:not(.navlink--toplevel) {
        padding-left:11px;
        padding-right: 11px
    }
}

.header__mobile__button .popout-header,.header__desktop__button .popout-header {
    margin: 0
}

.header__desktop__button--cta {
    padding: 0 16px
}

.header__mobile .header__desktop__button--cta {
    padding: 0 11px
}

[data-header-style=logo_above] .header__desktop__button--cta {
    padding-left: 0
}

@media only screen and (max-width: 989px) {
    .header__desktop__button--cta {
        display:none
    }
}

.header__desktop {
    width: 100%;
    transition: opacity 0.5s ease
}

body:not(.is-loaded) .header__desktop {
    opacity: 0
}

.navlink {
    font-family: var(--FONT-STACK-NAV);
    font-style: var(--FONT-STYLE-NAV);
    font-weight: var(--FONT-WEIGHT-NAV);
    letter-spacing: var(--LETTER-SPACING-NAV);
    line-height: 1.2;
    padding: 5px 0;
    position: relative;
    transition: none;
    color: var(--link)
}

.navlink .icon {
    --icon-size: 24px;
    fill: none
}

.navlink--search {
    cursor: pointer
}

.navlink--search .icon-cancel {
    display: none
}

.navlink--child,.navlink--grandchild {
    --link: var(--text-light)
}

.navlink--toplevel {
    --link-padding: 15px;
    position: relative;
    padding: 5px 9px;
    z-index: 6;
    color: var(--link)
}

@media only screen and (min-width: 750px) {
    .navlink--toplevel {
        padding:var(--link-padding)
    }
}

.navlink--highlight {
    --link: var(--highlight);
    --link-hover: var(--highlight)
}

.navlink--toplevel span,.parent .navlink--child span,.grandparent .navlink--grandchild span {
    font-size: calc(var(--font-nav-small) * var(--FONT-SIZE-NAV));
    display: block;
    position: relative;
    margin-bottom: 2px
}

.navlink--toplevel span:first-of-type::after,.parent .navlink--child span:first-of-type::after,.grandparent .navlink--grandchild span:first-of-type::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 1px;
    background-color: var(--link);
    transition: width 0.3s cubic-bezier(0.39,0.575,0.565,1)
}

@media (hover: hover) {
    .navlink--toplevel:hover span:first-of-type::after,.parent .navlink--child:hover span:first-of-type::after,.grandparent .navlink--grandchild:hover span:first-of-type::after {
        width:100%
    }
}

.header__mobile__hamburger,.header__logo__link {
    color: var(--link);
    transition: color 0.25s cubic-bezier(0.215,0.61,0.355,1)
}

.header__mobile__hamburger:hover,.header__logo__link:hover {
    color: var(--link-hover)
}

.header__desktop__bar__r {
    flex: 1 0 0;
    justify-content: flex-end
}

.header__desktop__bar__r .header__menu {
    margin-right: -15px
}

.header__desktop__bar__r .header__desktop__buttons--text {
    margin-right: -15px
}

.header__desktop__bar__r .header__desktop__buttons--icons {
    margin-right: -11px
}

.header__desktop__upper--reverse .header__menu {
    margin-left: -15px
}

.theme__header .socials {
    flex-wrap: nowrap
}

.theme__header .popout__toggle {
    font-size: inherit;
    letter-spacing: inherit;
    transition: color 0.25s cubic-bezier(0.215,0.61,0.355,1)
}

.js__header__stuck {
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 5600
}

.js__header__stuck .theme__header::after,.js__header__stuck .header__mobile__nav::after,.js__header__stuck .header__mobile__nav::before {
    opacity: 1;
    visibility: visible;
    transition-delay: 0s
}

.theme__header::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: -5;
    transition: opacity 0.2s cubic-bezier(0.215,0.61,0.355,1),visibility 0s 0.2s;
    opacity: 0;
    visibility: hidden;
    background: var(--bg)
}

.header__wrapper:not([data-header-transparent]) .theme__header::after,.meganav--visible .theme__header::after {
    opacity: 1;
    visibility: visible;
    transition-delay: 0s
}

@media only screen and (max-width: 749px) {
    .template-product .header__wrapper[data-header-transparent] .theme__header::after {
        opacity:1;
        visibility: visible;
        transition-delay: 0s
    }
}

.logo__img {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%
}

.logo__img--transparent {
    position: absolute;
    top: 0;
    opacity: 0
}

body:has(.main-content>.shopify-section.section-overlay-header:first-of-type):not(:has(.main-content>.shopify-section.section-overlay-header:first-of-type>.prevent-transparent-header)) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck),body:has(.main-content>.shopify-section.section-overlay-header:first-of-type):not(:has(.main-content>.shopify-section.section-overlay-header:first-of-type>.prevent-transparent-header)) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__desktop,body:has(.main-content>.shopify-section.section-overlay-header:first-of-type):not(:has(.main-content>.shopify-section.section-overlay-header:first-of-type>.prevent-transparent-header)) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__mobile,body:has(.main-content>.shopify-section.section-overlay-header:first-of-type):not(:has(.main-content>.shopify-section.section-overlay-header:first-of-type>.prevent-transparent-header)) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .toolbar {
    --text: var(--COLOR-MENU-TRANSPARENT);
    --link: var(--COLOR-MENU-TRANSPARENT);
    --link-hover: var(--COLOR-MENU-TRANSPARENT-HOVER);
    --text-dark: var(--COLOR-MENU-TRANSPARENT);
    --text-light: var(--COLOR-MENU-TRANSPARENT)
}

body:has(.main-content>.shopify-section.section-overlay-header:first-of-type):not(:has(.main-content>.shopify-section.section-overlay-header:first-of-type>.prevent-transparent-header)) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .toolbar {
    --bg: var(--TRANSPARENT)
}

body:has(.main-content>.shopify-section.section-overlay-header:first-of-type):not(:has(.main-content>.shopify-section.section-overlay-header:first-of-type>.prevent-transparent-header)) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .theme__header.has-border {
    --border: var(--COLOR-MENU-TRANSPARENT)
}

body:has(.main-content>.shopify-section.section-overlay-header:first-of-type):not(:has(.main-content>.shopify-section.section-overlay-header:first-of-type>.prevent-transparent-header)) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .toolbar.has-border {
    --border: var(--COLOR-MENU-TRANSPARENT)
}

body:has(.main-content>.shopify-section.section-overlay-header:first-of-type):not(:has(.main-content>.shopify-section.section-overlay-header:first-of-type>.prevent-transparent-header)) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .parent .navlink--toplevel::after {
    content: none
}

body:has(.main-content>.shopify-section.section-overlay-header:first-of-type):not(:has(.main-content>.shopify-section.section-overlay-header:first-of-type>.prevent-transparent-header)) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__logo--has-transparent .logo__img--color {
    opacity: 0
}

body:has(.main-content>.shopify-section.section-overlay-header:first-of-type):not(:has(.main-content>.shopify-section.section-overlay-header:first-of-type>.prevent-transparent-header)) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__logo--has-transparent .logo__img--transparent {
    opacity: 1;
    transition: opacity 0.6s cubic-bezier(0.215,0.61,0.355,1)
}

body:has(.main-content>.shopify-section.section-overlay-header:first-of-type):not(:has(.main-content>.shopify-section.section-overlay-header:first-of-type>.prevent-transparent-header)) [data-header-transparent]:not(.meganav--visible) .navlink--cart--icon .header__cart__status {
    --bg: var(--text)
}

.header__menu {
    z-index: 5;
    display: flex;
    height: 100%
}

.header__menu.caps,.blog-section .article__image .header__menu.article__tags,.header__menu.popout__toggle,.header__menu.search-submit {
    letter-spacing: 0.1em
}

@media only screen and (max-width: 479px) {
    .header__mobile {
        display:grid
    }

    .header__desktop {
        position: relative;
        overflow: hidden;
        max-height: 0;
        opacity: 0;
        visibility: hidden;
        pointer-events: none
    }
}

@media only screen and (min-width: 480px) {
    .header__desktop {
        position:static
    }

    .header__mobile {
        display: none
    }
}

.js__header__clone {
    position: absolute;
    transform: translateY(-5000px);
    width: 1400px;
    visibility: hidden
}

.js__show__mobile .header__mobile,[data-header-style=drawer] .header__mobile {
    display: grid
}

.js__show__mobile .header__desktop,[data-header-style=drawer] .header__desktop {
    position: relative;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none
}

.header__dropdown {
    --bg: var(--COLOR-SUBMENU-BG);
    --text: var(--COLOR-SUBMENU-LINK);
    --text-dark: var(--COLOR-SUBMENU-LINK);
    --text-light: var(--COLOR-SUBMENU-LINK);
    --link-hover: var(--COLOR-SUBMENU-LINK-HOVER);
    color: var(--COLOR-SUBMENU-LINK);
    position: absolute;
    top: 100%;
    opacity: 0;
    background: var(--bg);
    border-bottom: 1px solid #fff0;
    border-top: 1px solid #fff0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.2s cubic-bezier(0.215,0.61,0.355,1),visibility 0s 0.2s
}

.header__dropdown::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    height: var(--padding-bottom);
    background: #fff0
}

body:not(.has-line-design) .header__dropdown {
    border-bottom: none
}

.has-line-design .header__dropdown {
    border-bottom-color: var(--border);
    border-top-color: var(--border)
}

.header__dropdown__wrapper {
    max-height: calc(100vh - var(--header-height) - var(--announcement-height));
    overflow-y: auto
}

.js__header__stuck .header__dropdown__wrapper {
    max-height: calc(100vh - var(--header-height))
}

.menu__item.parent:not(.is-visible):not(:hover) .navlink--child {
    transition-delay: 0s!important
}

.menu__item:not(.parent):not(.grandparent) {
    white-space: nowrap
}

.menu__item.parent:hover>.header__dropdown,.header__dropdown.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto
}

.dropdown__family {
    padding: 30px 0;
    display: flex;
    flex-direction: column
}

.dropdown__family .navlink--child {
    font-weight: var(--FONT-WEIGHT-NAV-BOLD)
}

.header__dropdown__image {
    position: relative;
    overflow: hidden;
    opacity: 0;
    transition: opacity 0.75s cubic-bezier(0.215,0.61,0.355,1)
}

.header__dropdown__image .hero__content {
    padding: 14px;
    margin: 0;
    max-width: none
}

.header__dropdown__image .image-overlay {
    transform: translateZ(0)
}

.grandparent .header__dropdown {
    width: 100%;
    left: 0;
    max-width: 100vw
}

.grandparent .header__dropdown__inner {
    display: flex;
    justify-content: space-between
}

.grandparent .header__grandparent__links {
    flex: 3;
    display: grid;
    grid-row-gap: 1.5em;
    position: relative
}

.grandparent .dropdown__family {
    padding-left: var(--outer);
    padding-right: var(--outer)
}

.grandparent .menu__blocks {
    display: flex;
    flex: var(--images-space,1)
}

body.grid-classic .grandparent .menu__blocks .menu__block {
    padding: var(--gap) calc(var(--gap) / 2)
}

body.grid-classic .grandparent .menu__blocks:not(:first-child) .menu__block:first-child {
    padding-left: 0
}

body.grid-classic .grandparent .menu__blocks:first-child .menu__block:first-child {
    padding-left: var(--outer)
}

body.grid-classic .grandparent .menu__blocks:not(:last-child) .menu__block:last-child {
    padding-right: 0
}

body.grid-classic .grandparent .menu__blocks:last-child .menu__block:last-child {
    padding-right: var(--outer)
}

.grandparent .menu__block--narrow {
    flex: 1
}

.grandparent .menu__block--wide {
    flex: 3
}

.grandparent .navlink--child,.grandparent .navlink--grandchild {
    display: inline-block;
    margin-right: auto;
    padding-right: 5px
}

.grandparent .navlink--child {
    margin-bottom: 20px
}

.meganav--is-transitioning .grandparent.is-visible::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--header-height);
    background: #fff0;
    z-index: 5
}

.has-line-design .grandparent .header__grandparent__links::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    border-left: 1px solid var(--bg)
}

.has-line-design .grandparent .header__grandparent__links .dropdown__family::before {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1;
    border-left: 1px solid var(--border);
    margin-left: var(--outer-offset);
    content: ""
}

.grandparent.kids-1 .header__grandparent__links {
    grid-template-columns: repeat(1,minmax(0,1fr))
}

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

.grandparent.kids-3 .header__grandparent__links {
    grid-template-columns: repeat(3,minmax(0,1fr))
}

.grandparent.kids-4 .header__grandparent__links {
    grid-template-columns: repeat(4,minmax(0,1fr))
}

.grandparent.kids-5 .header__grandparent__links {
    grid-template-columns: repeat(5,minmax(0,1fr))
}

.grandparent.kids-6 .header__grandparent__links {
    grid-template-columns: repeat(6,minmax(0,1fr))
}

.grandparent.kids-7 .header__grandparent__links {
    grid-template-columns: repeat(4,minmax(0,1fr))
}

.grandparent.kids-8 .header__grandparent__links {
    grid-template-columns: repeat(4,minmax(0,1fr))
}

.grandparent.kids-9 .header__grandparent__links {
    grid-template-columns: repeat(3,minmax(0,1fr))
}

.grandparent.kids-10 .header__grandparent__links,.grandparent.kids-11 .header__grandparent__links,.grandparent.kids-12 .header__grandparent__links,.grandparent.kids-13 .header__grandparent__links,.grandparent.kids-14 .header__grandparent__links,.grandparent.kids-15 .header__grandparent__links,.grandparent.kids-16 .header__grandparent__links,.grandparent.kids-17 .header__grandparent__links,.grandparent.kids-18 .header__grandparent__links,.grandparent.kids-19 .header__grandparent__links,.grandparent.kids-20 .header__grandparent__links {
    grid-template-columns: repeat(5,minmax(0,1fr))
}

[class*=images-].grandparent.kids-4 .header__grandparent__links {
    grid-template-columns: repeat(2,minmax(0,1fr))
}

[class*=images-].grandparent.kids-5 .header__grandparent__links,[class*=images-].grandparent.kids-6 .header__grandparent__links,[class*=images-].grandparent.kids-7 .header__grandparent__links,[class*=images-].grandparent.kids-8 .header__grandparent__links,[class*=images-].grandparent.kids-10 .header__grandparent__links,[class*=images-].grandparent.kids-11 .header__grandparent__links,[class*=images-].grandparent.kids-12 .header__grandparent__links,[class*=images-].grandparent.kids-13 .header__grandparent__links,[class*=images-].grandparent.kids-14 .header__grandparent__links,[class*=images-].grandparent.kids-15 .header__grandparent__links,[class*=images-].grandparent.kids-16 .header__grandparent__links,[class*=images-].grandparent.kids-17 .header__grandparent__links,[class*=images-].grandparent.kids-18 .header__grandparent__links,[class*=images-].grandparent.kids-19 .header__grandparent__links,[class*=images-].grandparent.kids-20 .header__grandparent__links {
    grid-template-columns: repeat(2,minmax(0,1fr))
}

.grandparent.kids-2.images-1 .header__grandparent__links {
    grid-template-columns: repeat(2,minmax(0,1fr))
}

.grandparent.kids-3.images-1 .header__grandparent__links,.grandparent.kids-4.images-1 .header__grandparent__links,.grandparent.kids-5.images-1 .header__grandparent__links,.grandparent.kids-6.images-1 .header__grandparent__links,.grandparent.kids-7.images-1 .header__grandparent__links,.grandparent.kids-8.images-1 .header__grandparent__links,.grandparent.kids-9.images-1 .header__grandparent__links,.grandparent.kids-10.images-1 .header__grandparent__links,.grandparent.kids-11.images-1 .header__grandparent__links,.grandparent.kids-12.images-1 .header__grandparent__links,.grandparent.kids-13.images-1 .header__grandparent__links,.grandparent.kids-14.images-1 .header__grandparent__links,.grandparent.kids-15.images-1 .header__grandparent__links,.grandparent.kids-16.images-1 .header__grandparent__links,.grandparent.kids-17.images-1 .header__grandparent__links,.grandparent.kids-18.images-1 .header__grandparent__links,.grandparent.kids-19.images-1 .header__grandparent__links,.grandparent.kids-20.images-1 .header__grandparent__links {
    grid-template-columns: repeat(3,minmax(0,1fr))
}

.grandparent.images-2 .header__grandparent__links,.grandparent.images-2 .menu__block--wide {
    flex: 2
}

.grandparent.grandparent--all-images .header__grandparent__links {
    flex: 0
}

.grandparent.grandparent--all-images.images-1 .menu__block--narrow {
    flex-grow: 0;
    flex-basis: 50%
}

.menu__item.parent .navlink--child {
    opacity: 0;
    transform: translateY(-5px);
    transition: transform 0.15s cubic-bezier(0.215,0.61,0.355,1),opacity 0.35s cubic-bezier(0.215,0.61,0.355,1),color 0.25s cubic-bezier(0.215,0.61,0.355,1)
}

.menu__item.parent:hover .navlink--child,.menu__item.parent .is-visible .navlink--child {
    opacity: 1;
    transform: translateY(0)
}

.menu__item.grandparent .navlink--child {
    opacity: 0;
    transition: none
}

.menu__item.grandparent .navlink--grandchild {
    opacity: 0;
    transform: translateY(-5px);
    transition: none
}

.menu__item.grandparent .is-visible .navlink--child,.menu__item.grandparent .is-visible .navlink--grandchild {
    opacity: 1;
    transform: translateY(0);
    transition: transform 0.15s cubic-bezier(0.215,0.61,0.355,1),opacity 0.35s cubic-bezier(0.215,0.61,0.355,1),color 0.25s cubic-bezier(0.215,0.61,0.355,1)
}

.header__dropdown:not(.is-visible) .header__dropdown__image,.header__dropdown:not(.is-visible) .image-wrapper {
    transition-delay: 0s!important
}

.header__dropdown__image .image-wrapper {
    transform: scale(1.06);
    transform-origin: bottom center;
    transition: transform 0.75s cubic-bezier(0.215,0.61,0.355,1)
}

.is-visible .header__dropdown__image {
    opacity: 1
}

.is-visible .header__dropdown__image .image-wrapper {
    transform: scale(1);
    transition: transform 1.5s cubic-bezier(0.215,0.61,0.355,1)
}

.is-visible .header__dropdown__image>div,.is-visible .header__dropdown__image .image-wrapper {
    transition-delay: inherit
}

.menu__item:not(.grandparent):hover>.header__dropdown,.header__dropdown.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s
}

.parent .header__dropdown {
    border-left: 1px solid #fff0;
    border-right: 1px solid #fff0;
    border-bottom: 1px solid #fff0;
    background: var(--bg)
}

.parent .header__dropdown__wrapper {
    padding: 15px
}

.parent .header__dropdown__inner {
    display: flex;
    flex-direction: column
}

.parent .navlink--child {
    padding: 5px 0;
    display: inline-block;
    margin-right: auto
}

.has-line-design .parent .header__dropdown {
    border-left-color: var(--border);
    border-right-color: var(--border);
    border-bottom-color: var(--border)
}

.navlink[href="#"] {
    cursor: default
}

.navlink__cart__content {
    position: relative;
    display: flex;
    align-items: center;
    font-size: 0
}

.header__cart__status__holder {
    position: relative;
    display: flex;
    align-items: center
}

.navlink--cart--circle {
    --icon-size: 21px
}

.navlink--cart--circle .navlink__cart__content {
    margin-right: -1px
}

.navlink--cart--circle .header__cart__status {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: calc(0.627 * var(--FONT-SIZE-NAV))
}

.navlink--cart--circle .header__cart__status::after {
    content: none
}

.navlink--cart--circle .header__cart__status__holder {
    width: var(--icon-size);
    height: var(--icon-size)
}

.navlink--cart--circle .navtext {
    margin-right: 8px
}

.navlink--cart--circle .header__cart__status::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: var(--icon-size);
    height: var(--icon-size);
    border-radius: 50%;
    border: var(--ICON-STROKE-WIDTH) solid currentcolor;
    transform: translate(-50%,-50%);
    box-sizing: border-box
}

.navlink--cart--icon .header__cart__status {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: -2px;
    right: -8px;
    min-width: 17px;
    height: 17px;
    border-radius: 15px;
    padding: 2px;
    color: var(--bg);
    background: #b90000;
    font-size: calc(0.627 * var(--FONT-SIZE-NAV));
    line-height: var(--FONT-SIZE-NAV)
}

.navlink--cart--icon .header__cart__status[data-cart-count="0"] {
    display: none
}

@media only screen and (max-width: 749px) {
    .navlink--cart--text .header__cart__status[data-cart-count="0"] {
        display:none
    }
}

@media only screen and (min-width: 750px) {
    .navlink--cart--text .navtext {
        display:inline;
        white-space: nowrap
    }
}

@media only screen and (min-width: 750px) {
    .navlink--cart--text .header__cart__status::before {
        content:attr(data-status-separator)
    }
}

@media only screen and (max-width: 749px) {
    .navlink--cart--text .header__cart__status {
        display:inline-flex;
        justify-content: center;
        align-items: center;
        position: absolute;
        top: -2px;
        right: -8px;
        min-width: 17px;
        height: 17px;
        border-radius: 15px;
        padding: 2px;
        color: var(--bg);
        background: var(--accent);
        font-size: calc(0.627 * var(--FONT-SIZE-NAV));
        line-height: var(--FONT-SIZE-NAV)
    }
}

.theme__header [data-glyph=cart] {
    font-size: calc(1.1875 * var(--FONT-SIZE-NAV))
}

.theme__header [data-glyph=magnifying-glass] {
    font-size: var(--FONT-SIZE-NAV)
}

announcement-bar {
    --padding: var(--padding-scrolling, var(--outer));
    display: block
}

.announcement__wrapper {
    --icon-offset: 0.2;
    --icon-size: max(var(--text-size) * 0.8, 18px);
    --btn-size: var(--icon-size);
    position: relative;
    overflow: hidden;
    background: var(--bg);
    line-height: var(--line-height-normal);
    transition: opacity 0.5s ease
}

.announcement__wrapper .free-shipping__graph svg {
    width: var(--icon-size);
    height: var(--icon-size)
}

body:not(.is-loaded) .announcement__wrapper {
    opacity: 0
}

.announcement__wrapper--top {
    z-index: 5500
}

.announcement__wrapper--top.announcement__wrapper--borders {
    border-top: 0
}

.announcement__wrapper--borders {
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border)
}

.announcement__bar-holder--slider div:not(.flickity-enabled) .announcement__slide+.announcement__slide {
    opacity: 0
}

@keyframes ticker-rtl {
    0% {
        transform: none;
        visibility: visible
    }

    100% {
        transform: translateX(-100%)
    }
}

@keyframes ticker-ltr {
    0% {
        transform: translateX(-100%);
        visibility: visible
    }

    100% {
        transform: none
    }
}

.announcement__bar .flickity-slider {
    display: flex;
    align-items: center
}

.announcement__slide {
    padding: 0 var(--padding);
    width: 100%;
    color: var(--text)
}

.announcement__slide.announcement__bar {
    padding: 0 var(--outer)
}

.announcement__slide>div {
    display: flex;
    min-height: var(--announcement-height);
    align-items: center;
    justify-content: var(--justify-content,center)
}

.announcement__content {
    font-family: var(--scrolling-font-family,inherit);
    font-size: var(--scrolling-font-size,inherit);
    font-style: var(--scrolling-font-style,inherit);
    font-weight: var(--scrolling-font-weight,inherit);
    letter-spacing: var(--scrolling-letter-spacing,normal)
}

@media only screen and (max-width: 749px) {
    .announcement__content {
        font-size:var(--scrolling-mobile-font-size,inherit)
    }
}

.announcement__content strong {
    font-weight: var(--scrolling-font-weight-bold,var(--FONT-WEIGHT-BODY-BOLD))
}

.announcement__bg-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.announcement__slide:not(.announcement__bar) {
    white-space: nowrap
}

.announcement__slide:not(.announcement__bar)>* {
    width: 100%
}

.announcement__bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: center
}

.announcement__bar:not(.desktop):not(.mobile) {
    width: 100%
}

.announcement__bar.desktop {
    width: 100%
}

@media only screen and (max-width: 749px) {
    .announcement__bar.desktop {
        display:none
    }
}

@media only screen and (min-width: 750px) {
    .announcement__bar.mobile {
        display:none;
        width: 0
    }
}

@media only screen and (max-width: 749px) {
    .announcement__bar.mobile {
        width:100%
    }
}

.announcement__bar .icon {
    fill: currentcolor
}

.announcement__bar--error {
    display: none
}

.announcement__main {
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    font-style: var(--FONT-STYLE-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none
}

.announcement__text {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    white-space: nowrap;
    min-height: var(--announcement-height)
}

.announcement__text p,.announcement__text h1,.announcement__text h2,.announcement__text h3,.announcement__text h4,.announcement__text h5,.announcement__text h6,.announcement__text .blog-section .article__image .article__tags,.blog-section .article__image .announcement__text .article__tags {
    font-family: inherit;
    margin: 0
}

.announcement__text.ticker--animated {
    padding: 0 var(--padding)
}

.announcement__text.ticker--animated>.announcement__slide:first-child {
    padding-left: 0
}

.announcement__text.ticker--animated>.announcement__slide:last-child {
    padding-right: 0
}

.announcement__bar-holder--marquee .announcement__text {
    min-height: 0
}

.announcement__bar-holder--marquee .announcement__slide {
    min-height: var(--announcement-height)
}

.announcement__text>div {
    display: inline-flex;
    align-items: center
}

@media only screen and (min-width: 750px) {
    .announcement__text>.mobile {
        display:none
    }
}

@media only screen and (max-width: 749px) {
    .announcement__text>.desktop {
        display:none
    }
}

.announcement__text a {
    position: relative
}

.announcement__text .free-shipping {
    padding: 0;
    border: none;
    font-size: inherit;
    line-height: inherit;
    flex-wrap: nowrap;
    position: relative
}

.announcement__text .free-shipping circle+circle {
    stroke: currentcolor
}

.announcement__divider {
    margin-left: 10px;
    padding-right: 10px;
    width: 0;
    height: 10%;
    border-left: 1px solid currentcolor
}

.announcement__message {
    width: 100%;
    text-align: var(--text-align,center);
    font-size: 0
}

.announcement__scale {
    display: inline-flex;
    transition: opacity 0.5s linear
}

.announcement__scale.ticker--unloaded {
    width: max-content
}

.announcement__bar-holder--slider>div {
    justify-content: var(--justify-content,center)
}

.announcement__bar-holder--slider.flickity-enabled .announcement__scale.ticker--unloaded {
    position: static
}

.announcement__image {
    display: block;
    margin: 0 auto
}

.announcement__image.svg-placeholder {
    background-color: #fff0
}

html:not(.js) .announcement__scale.ticker--unloaded {
    opacity: 1;
    position: static;
    width: auto
}

.ticker--animated {
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    animation-name: var(--ticker-direction);
    animation-duration: var(--animation-time);
    animation-play-state: paused;
    display: inline-flex;
    align-items: center;
    width: max-content
}

.ticker--animated>div {
    transition: transform 0.5s ease-out
}

.ticker--animated:hover {
    animation-play-state: paused
}

.announcement__bar-outer:not(:hover) .is-selected ticker-bar:not([paused]) .ticker--animated,.announcement__bar-outer:not(:hover) ticker-bar[autoplay]:not([paused]) .ticker--animated,.announcement__bar-outer:not(:hover) ticker-bar[data-slide]:not([paused]) .ticker--animated {
    animation-play-state: running
}

.announcement__bar-outer:hover .is-selected ticker-bar:not([paused]) .ticker--animated>div,.announcement__bar-outer:hover ticker-bar[autoplay]:not([paused]) .ticker--animated>div,.announcement__bar-outer:hover ticker-bar[data-slide]:not([paused]) .ticker--animated>div {
    transform: translateX(calc(-20px / var(--animation-speed, 1)));
    transition: transform 0.5s ease-out
}

html.supports-touch .is-selected ticker-bar:not([paused]) .ticker--animated,html.supports-touch ticker-bar[autoplay]:not([paused]) .ticker--animated,html.supports-touch ticker-bar[data-slide]:not([paused]) .ticker--animated {
    animation-play-state: running
}

.announcement__slide:not(:only-child):not(.is-selected) .ticker--animated {
    animation-play-state: paused
}

.announcement__bar-holder {
    position: relative
}

.announcement__bar-holder .flickity-slider {
    display: flex;
    align-items: center
}

.announcement__slider:not(.flickity-enabled) {
    display: flex;
    flex-wrap: nowrap;
    overflow: auto;
    justify-content: flex-start;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.announcement__slider:not(.flickity-enabled)::-webkit-scrollbar {
    display: none
}

.announcement__slider:not(.flickity-enabled) .announcement__slide {
    flex: 1 0 100%
}

.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) {
    --arrow-space: var(--icon-size);
    --arrow-space-offset: calc(var(--arrow-space) * -1);
    margin-left: calc(var(--outer) + var(--icon-size));
    margin-right: calc(var(--outer) + var(--icon-size))
}

.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .announcement__slide.announcement__bar {
    padding: 0 20px
}

.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-viewport::before,.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-viewport::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    width: calc(var(--arrow-space) + 20px);
    pointer-events: none;
    transition: transform 0.2s ease-in-out
}

.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-viewport::before {
    left: var(--arrow-space-offset);
    background: linear-gradient(90deg,var(--COLOR-BG) 80%,var(--COLOR-BG-TRANSPARENT,#fff0) 100%)
}

.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-viewport::after {
    right: var(--arrow-space-offset);
    background: linear-gradient(-90deg,var(--COLOR-BG) 80%,var(--COLOR-BG-TRANSPARENT,#fff0) 100%)
}

.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-prev-next-button {
    --icon-size: inherit;
    --btn-size: inherit;
    display: block;
    background-color: #fff0;
    overflow: unset;
    box-shadow: none;
    z-index: 2;
    opacity: 1
}

.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-prev-next-button::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 40px;
    transform: translate(-50%,-50%);
    background: #fff0
}

.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-prev-next-button::before {
    background-color: var(--text)
}

.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-prev-next-button.previous {
    transform: none;
    left: var(--arrow-space-offset)
}

.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-prev-next-button.next {
    transform: none;
    right: var(--arrow-space-offset)
}

.announcement__bar-outer {
    width: 100%
}

@media only screen and (max-width: 749px) {
    .announcement__bar-outer--desktop {
        padding-top:0;
        padding-bottom: 0
    }
}

@media only screen and (min-width: 750px) {
    .announcement__bar-outer--mobile {
        padding-top:0;
        padding-bottom: 0
    }
}

.ticker__comparitor {
    position: absolute;
    transform: translateY(-5000px);
    visibility: hidden
}

.drawer--header {
    --bg: var(--COLOR-BG);
    --text: var(--COLOR-TEXT);
    --text-dark: var(--COLOR-TEXT-DARK);
    --text-light: var(--COLOR-TEXT-LIGHT);
    --link-hover: var(--COLOR-LINK-HOVER);
    --link: var(--text);
    position: relative;
    z-index: 5600
}

.drawer--header .drawer__inner {
    left: auto;
    right: 100%;
    border-left: 0;
    border-right: 1px solid var(--border);
    box-shadow: 0 2px 8px rgb(0 0 0 / 0.06),0 3px 12px rgb(0 0 0 / 0.02)
}

@media only screen and (max-width: 749px) {
    .drawer--header .drawer__inner {
        border-right:none
    }
}

.drawer--header.is-open .drawer__inner {
    animation: slideInLeft 0.3s ease;
    animation-fill-mode: forwards
}

.drawer--header.is-closing .drawer__inner {
    animation: slideOutLeft 0.3s ease;
    animation-fill-mode: forwards
}

.drawer--header .drawer__head {
    display: flex;
    flex-direction: row-reverse;
    border: 0
}

.drawer--header .drawer__close {
    --icon-size: 24px;
    position: relative;
    left: auto;
    right: -7px
}

.drawer--header .drawer__underlay {
    z-index: 2400
}

.drawer--header .drawer__content {
    --item-height: 50px;
    position: relative;
    flex: 1;
    display: flex;
    min-height: var(--item-height);
    width: 100%;
    overflow: hidden
}

@media only screen and (max-width: 749px) {
    .drawer--header .drawer__main-menu--desktop {
        display:none
    }
}

@media only screen and (min-width: 750px) {
    .drawer--header .drawer__main-menu--mobile {
        display:none
    }
}

.drawer--header .drawer__bottom__row {
    --min-height: 30px;
    flex: 0 1 100%;
    width: 100%;
    min-height: var(--min-height);
    margin-bottom: var(--inner)
}

.drawer--header .drawer__bottom__row:last-child {
    margin-bottom: 0
}

.drawer--header .drawer__bottom__row>*:only-child {
    flex-wrap: wrap;
    min-height: var(--min-height);
    height: auto
}

.drawer--header .drawer__bottom__row--menu {
    width: auto;
    margin-left: var(--outer-offset);
    margin-right: var(--outer-offset);
    padding: var(--inner) var(--outer);
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border)
}

.drawer--header .drawer__bottom__row--localization-gift {
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

.drawer--header .drawer__search {
    border-bottom: 1px solid var(--border)
}

.drawer--header .drawer__bottom {
    position: relative;
    z-index: 11;
    width: 100%;
    min-height: 51px;
    padding: var(--inner);
    margin-top: auto
}

.drawer--header .drawer__bottom::before {
    content: "";
    pointer-events: none;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 100%;
    height: 20px;
    background: linear-gradient(to bottom,transparent,var(--bg))
}

.drawer--header .popout-header {
    flex-wrap: wrap;
    width: auto;
    padding-right: 22px;
    gap: calc(var(--gap) / 2) var(--gap)
}

.has-line-design .drawer--header .drawer__content {
    margin-bottom: -1px
}

.has-line-design .drawer--header .drawer__bottom {
    border-top: 1px solid var(--border)
}

.drawer__content__scroll {
    overflow-x: hidden;
    overflow-y: auto;
    width: 100%;
    height: 100%;
    flex: 0 1 100%;
    display: flex;
    flex-direction: column
}

.drawer__menu {
    position: relative;
    overflow: hidden;
    width: 100%;
    max-height: 100%;
    flex: 1 0 auto
}

.mobile-menu__block {
    padding: 0 var(--inner) 0;
    transition: opacity 0.5s ease,transform 0.5s,visibility 0.5s
}

.drawer__foot .mobile-menu__block {
    flex-basis: 100%
}

.mobile-menu__block--menu-columns {
    padding: 0
}

.mobile-menu__block--menu-columns .drawer__main-menu {
    display: grid;
    grid-template-columns: repeat(2,1fr)
}

.mobile-menu__block--menu-columns .sliderow,.mobile-menu__block--menu-columns .sliderow__title {
    align-items: flex-start;
    min-height: 0
}

.mobile-menu__block--menu-columns .sliderow__title {
    padding: calc(var(--inner) / 2) var(--inner)
}

.mobile-menu__block--localization {
    position: relative;
    z-index: 2
}

.mobile-menu__block--menu {
    padding: 0;
    overflow: hidden;
    min-height: var(--item-height);
    position: relative
}

.mobile-menu__block--menu::after {
    content: "";
    position: absolute;
    left: 0;
    right: var(--scrollbar-width);
    bottom: 0;
    height: 20px;
    pointer-events: none;
    background: linear-gradient(to bottom,transparent 0%,var(--COLOR-BG) 100%)
}

.mobile-menu__block-inner {
    background: var(--bg);
    height: 100%;
    display: flex;
    flex-direction: column
}

mobile-menu:has(header-search-popdown.is-open) .mobile-menu__block:not(.mobile-menu__block--search) {
    opacity: 0;
    visibility: hidden;
    transform: translateY(50px);
    transition: opacity 0.3s ease,transform 0.3s,visibility 0.3s
}

.mobile-menu__block--half {
    max-width: calc(50% - var(--inner))
}

.mobile-menu__block--review {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: var(--inner);
    font-size: calc(var(--font-nav-large) * var(--FONT-SIZE-NAV))
}

.block-review {
    width: -moz-fit-content;
    width: fit-content;
    margin-bottom: 8px
}

.block-review .icon {
    --icon-size: 16px
}

.block-review__full-stars {
    -webkit-clip-path: inset(0 var(--star-rating-clip,0) 0 0);
    clip-path: inset(0 var(--star-rating-clip,0) 0 0)
}

.block-review__full-stars .icon {
    fill: var(--text)
}

.block-review__text {
    padding: 0;
    margin: 0;
    border: 0
}

.block-review__author {
    margin: 0.5em 0 0
}

.mobile-menu__block--button .btn,.mobile-menu__block--button .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .mobile-menu__block--button .shopify-payment-button__button--unbranded,.mobile-menu__block--button #challenge .shopify-challenge__button,#challenge .mobile-menu__block--button .shopify-challenge__button {
    width: 100%
}

.mobile-menu__image-link {
    display: flex;
    width: 100%;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap
}

.mobile-menu__block-inner--padding {
    padding: 9px
}

.mobile-menu__block--padding-no-bg {
    padding: 9px 9px 9px 0
}

.mobile-menu__image {
    width: var(--image-size);
    flex: 0 0 var(--image-size)
}

.popout__icon-currency,.popout__icon-globe {
    margin-right: 8px
}

.popout__icon-globe {
    margin-top: -2px;
    margin-bottom: -2px;
    --icon-size: 16px
}

.mobile-menu__block--socials .socials--mobile-menu {
    flex-direction: column;
    align-items: flex-start;
    font-size: var(--font-body-small)
}

.mobile-menu__block--socials .icon-fallback-text {
    -webkit-clip-path: none;
    clip-path: none;
    position: relative!important;
    overflow: visible;
    display: block;
    height: auto;
    width: auto
}

.mobile-menu__block--socials .social-link {
    display: flex;
    align-items: center;
    gap: 12px
}

mobile-menu .drawer__inner {
    overflow: hidden
}

mobile-menu .drawer__inner .block__icon__container {
    padding: 0
}

mobile-menu .drawer__head {
    justify-content: space-between;
    align-items: center
}

mobile-menu .header__logo__link {
    --logo-width: var(--logo-width-mobile)
}

mobile-menu .drawer__close {
    top: 0;
    transform: none
}

mobile-menu .drawer__text {
    margin: 0
}

mobile-menu .hero__button {
    margin-top: 0
}

mobile-menu .sliderow {
    font-size: inherit
}

mobile-menu .sliderule__chevron {
    --icon-size: inherit
}

mobile-menu .drawer__foot__scroll {
    display: flex;
    flex-wrap: wrap;
    padding: var(--inner) 0 0;
    max-height: 40vh;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch
}

mobile-menu .drawer__foot__scroll:has(.popout-list--visible) {
    overflow: visible
}

mobile-menu header-search-popdown {
    min-height: 34px
}

mobile-menu .search-popdown .wrapper {
    padding: 0 var(--inner)
}

mobile-menu .navlink--search {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    height: 44px;
    margin-left: -8px;
    padding-left: 6px
}

mobile-menu .predictive-search__layout {
    grid-template-columns: minmax(0,1fr)
}

mobile-menu .search-popdown {
    --bg: inherit;
    --text: inherit;
    --text-dark: inherit;
    --text-light: inherit;
    --link-hover: inherit;
    box-shadow: none;
    transform: none
}

mobile-menu .search-popdown__main {
    height: 44px
}

mobile-menu .search-popdown__main::after {
    content: "";
    height: 1px;
    position: absolute;
    left: var(--inner);
    right: var(--inner);
    bottom: 0;
    background: var(--border)
}

mobile-menu .search-form input[type=search] {
    padding: 8px
}

mobile-menu .drawer:has(header-search-popdown.is-open) .drawer__content__scroll {
    overflow: hidden
}

mobile-menu .drawer:has(header-search-popdown.is-open) .drawer__content {
    height: 100%
}

mobile-menu .drawer:has(header-search-popdown.is-open) .drawer__body {
    min-height: calc(100vh - 64px)
}

mobile-menu .drawer:has(header-search-popdown.is-open) .drawer__foot {
    pointer-events: none;
    overflow: hidden
}

.drawer__search {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease,visibility 0.5s
}

header-search-popdown {
    display: block;
    height: 100%
}

header-search-popdown>details {
    height: 100%
}

.search-popdown {
    font-family: var(--FONT-STACK-NAV);
    font-style: var(--FONT-STYLE-NAV);
    font-weight: var(--FONT-WEIGHT-NAV);
    letter-spacing: var(--LETTER-SPACING-NAV);
    --bg: var(--COLOR-SUBMENU-BG);
    --text: var(--COLOR-SUBMENU-LINK);
    --link: var(--COLOR-SUBMENU-LINK);
    --link-hover: var(--COLOR-SUBMENU-LINK-HOVER);
    --text-light: var(--COLOR-SUBMENU-TEXT-LIGHT);
    position: absolute;
    z-index: 6002;
    top: 0;
    right: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-100%);
    transition: opacity 0.5s ease,transform 0.5s ease,visibility 0s linear 0.5s;
    box-shadow: 0 5px 10px rgb(0 0 0 / 0.1);
    background: var(--bg)
}

.search-popdown .search-form {
    position: static
}

.search-popdown input[type=search] {
    font-family: var(--FONT-STACK-NAV);
    font-style: var(--FONT-STYLE-NAV);
    font-weight: var(--FONT-WEIGHT-NAV);
    letter-spacing: var(--LETTER-SPACING-NAV);
    width: 100%;
    border: none;
    margin: 0;
    text-align: left;
    color: var(--text);
    font-size: calc(var(--font-nav-small) * var(--FONT-SIZE-NAV))
}

.search-popdown input[type=search]::placeholder {
    color: var(--text)
}

.search-popdown input[type=search]:focus,.search-popdown input[type=search]:active {
    box-shadow: none
}

.search-popdown .product-link {
    --link: var(--COLOR-HEADER-LINK);
    --link-hover: var(--COLOR-HEADER-LINK-HOVER)
}

.search-popdown .product-information .price {
    --text-light: var(--COLOR-HEADER-LINK)
}

.search-popdown+.underlay {
    z-index: 6001
}

.theme__header header-search-popdown.is-open .search-popdown,.theme__header header-search-popdown.is-open .predictive-search {
    width: 100vw;
    padding-right: var(--scrollbar-width)
}

header-search-popdown.is-open .search-popdown {
    opacity: 1;
    transform: none;
    transition-delay: 0s;
    visibility: unset;
    max-height: calc(100vh - var(--announcement-height))
}

.search-popdown__main {
    width: 100%;
    height: var(--header-height);
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--bg);
    transition: transform 0.5s ease
}

.search-popdown__close {
    position: relative;
    width: 80px;
    height: 100%;
    display: flex
}

@media only screen and (max-width: 749px) {
    .search-popdown__close {
        width:20px
    }
}

.search-popdown__close__button {
    --icon-size: 24px;
    position: absolute;
    top: 50%;
    right: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    color: var(--link);
    background: #fff0;
    border-radius: var(--RADIUS);
    font-size: 0;
    text-decoration: none;
    transform: translate3d(0,-50%,0);
    transition: color 0.3s ease;
    --icon-size: 24px;
    font-size: var(--FONT-SIZE-NAV);
    cursor: pointer;
    width: 34px;
    height: 34px;
    right: -11px
}

.search-popdown__close__button .icon {
    display: block;
    fill: currentcolor;
    pointer-events: none;
    will-change: transform;
    transition: transform 0.4s cubic-bezier(0.4,0,0.22,1)
}

@media (hover: hover) {
    .search-popdown__close__button:hover {
        color:var(--link-hover)
    }

    .search-popdown__close__button:hover .icon {
        transform: scale(1.25)
    }
}

.search-popdown__submit {
    --icon-size: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    margin-left: -8px;
    padding: 0
}

.sliderule__panel {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    visibility: hidden;
    opacity: 0;
    overflow: hidden;
    scrollbar-width: none;
    -ms-overflow-style: none
}

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

[data-sliderule-pane].is-scrolling,[data-sliderule].is-scrolling,[data-sliderule-pane="0"],[data-sliderule-pane="1"] [data-sliderule="1"].is-visible,[data-sliderule-pane="2"] [data-sliderule="2"].is-visible {
    overflow-y: auto;
    overflow-x: hidden
}

[data-sliderule].is-hiding,[data-sliderule-pane="2"] [data-sliderule].is-visible,[data-sliderule-pane="1"] [data-sliderule="1"].is-visible {
    z-index: 10;
    visibility: visible;
    opacity: 1
}

[data-sliderule-pane] [data-animates].is-visible {
    opacity: 1
}

.sliderule__wrapper {
    width: 100%
}

.sliderow__links {
    padding-top: var(--item-height);
    overflow: hidden
}

.sliderow--back {
    --bg: var(--COLOR-BG);
    top: 0;
    position: absolute;
    z-index: 40;
    background: var(--bg)
}

.sliderow--back .sliderow__title {
    justify-content: center
}

.sliderule__wrapper--secondary {
    padding-top: 24px;
    margin-top: auto
}

.sliderule__wrapper--secondary:last-child {
    margin-bottom: 10px
}

.sliderule__wrapper--secondary .sliderow,.sliderule__wrapper--secondary .sliderow__title {
    height: calc(var(--item-height) - 21px)
}

.sliderule__wrapper--secondary+.sliderule__wrapper--secondary {
    padding-top: 0;
    margin-top: 0
}

.sliderow {
    width: 100%;
    min-height: var(--item-height);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    background: var(--bg);
    padding: 0;
    font-size: calc(var(--font-nav-large) * var(--FONT-SIZE-NAV));
    text-transform: inherit
}

.sliderow__title {
    min-height: var(--item-height);
    width: 100%;
    padding: 0 var(--inner);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: left;
    transition: color 0.4s cubic-bezier(0.215,0.61,0.355,1)
}

.sliderow__title span:first-of-type {
    display: block;
    position: relative;
    margin-bottom: 2px
}

.sliderow__title span:first-of-type::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 1px;
    background-color: var(--link);
    transition: width 0.3s cubic-bezier(0.39,0.575,0.565,1)
}

@media (hover: hover) {
    .sliderow__title:hover span:first-of-type::after {
        width:100%
    }
}

.sliderow__title--highlight {
    --link: var(--highlight);
    --link-hover: var(--highlight);
    color: var(--link)
}

.drawer__menu>.sliderule__wrapper>.sliderow>.sliderow__title {
    font-weight: var(--FONT-WEIGHT-NAV-BOLD)
}

.drawer__menu>.sliderule__wrapper>.sliderow>.sliderow__title--secondary {
    font-size: calc(var(--font-nav-medium) * var(--FONT-SIZE-NAV));
    font-weight: var(--FONT-WEIGHT-NAV)
}

.sliderow:not(.sliderow__back) .sliderow__title::after {
    bottom: 0
}

.drawer__menu::after {
    top: 0;
    left: var(--outer);
    z-index: 1
}

.sliderule__chevron {
    --icon-size: 24px;
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-self: stretch
}

.sliderule__chevron .icon {
    fill: none;
    transition: transform 0.3s
}

.sliderule__chevron--right {
    width: 40px;
    justify-content: flex-end
}

@media (hover: hover) {
    .sliderow:hover .sliderule__chevron--right .icon {
        transform:translateX(5px)
    }
}

.sliderule__chevron--left {
    height: 100%;
    width: calc(var(--outer) * 1.5);
    min-width: 60px
}

.sliderule__chevron--left .icon {
    margin-left: -4px
}

.sliderule__panel .sliderow {
    padding-left: 0
}

.sliderow__back-button+.sliderow__title {
    cursor: pointer;
    font-family: var(--FONT-STACK-NAV);
    font-style: var(--FONT-STYLE-NAV);
    font-weight: var(--FONT-WEIGHT-NAV-BOLD);
    letter-spacing: var(--LETTER-SPACING-NAV);
    padding: 0 calc(var(--inner) + 30px)
}

@media (hover: hover) {
    .sliderow__back-button+.sliderow__title:hover {
        color:var(--link-hover)
    }
}

.sliderow__back-button {
    position: absolute;
    top: 0;
    left: 0;
    padding-left: var(--inner);
    height: 100%;
    z-index: 5
}

@media (hover: hover) {
    .sliderow__back-button:hover .icon {
        transform:translateX(-5px)
    }
}

@media only screen and (max-width: 479px) {
    .js-grid[data-grid-small="1"] {
        grid-template-columns:repeat(1,1fr)
    }

    .js-grid[data-grid-small="2"] {
        grid-template-columns: repeat(2,1fr)
    }

    [data-toggle-grid="3"],[data-toggle-grid="4"],[data-toggle-grid="5"],[data-toggle-grid="6"] {
        display: none
    }
}

.sliderule-grid .hero__content {
    max-width: 100%;
    padding: 30px;
    margin: 0
}

@media only screen and (max-width: 479px) {
    .sliderule-grid .hero__content {
        padding:5px
    }
}

.sliderule-grid .menu__block {
    padding: var(--inner)
}

.sliderule-grid .menu__block:not(:first-child) {
    padding-top: 0
}

.header__mobile__hamburger {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 100%;
    left: 0;
    padding: 0 5px;
    margin-left: -10px;
    margin-right: 2px;
    cursor: pointer
}

@media only screen and (min-width: 750px) {
    .header__mobile__hamburger.navlink {
        width:auto;
        padding: 15px;
        margin-left: -15px;
        margin-right: 0
    }
}

@media only screen and (max-width: 749px) {
    .header__mobile__hamburger.navlink {
        display:block
    }
}

.header__mobile__hamburger .icon {
    --icon-size: 24px
}

@media only screen and (max-width: 749px) {
    .header__mobile__button .navlink__cart__content>.navtext {
        display:none
    }
}

@media only screen and (min-width: 750px) {
    .header__desktop__button .navlink--toplevel .icon,.header__mobile__button .navlink--toplevel .icon {
        display:none
    }
}

ticker-bar {
    display: block
}

@media only screen and (min-width: 750px) {
    ticker-bar {
        width:100%
    }
}

ticker-bar[paused] .ticker--animated {
    animation-play-state: paused
}

.toolbar {
    --link: var(--text);
    --link-hover: var(--text);
    --border: var(--border-color, var(--text));
    position: relative;
    z-index: 2400;
    font-size: calc(var(--font-nav-small) * var(--FONT-SIZE-NAV));
    background: var(--bg)
}

.toolbar.has-border::before {
    border-color: var(--border)
}

.meganav--visible .toolbar {
    --text: var(--COLOR-HEADER-LINK);
    --link: var(--COLOR-HEADER-LINK);
    --link-hover: var(--COLOR-HEADER-LINK-HOVER)
}

@media only screen and (max-width: 749px) {
    .toolbar--no-text {
        padding:0
    }
}

.toolbar__inner {
    min-height: calc(2.25 * var(--FONT-SIZE-NAV))
}

@media only screen and (min-width: 750px) {
    .toolbar__inner {
        display:flex;
        justify-content: space-between;
        align-items: center
    }
}

.toolbar__text {
    position: relative;
    overflow: hidden;
    margin-left: var(--outer-offset);
    margin-right: var(--outer-offset);
    padding-left: var(--outer);
    padding-right: var(--outer);
    line-height: 1.2
}

.toolbar__text:only-child {
    text-align: center
}

@media only screen and (max-width: 749px) {
    .toolbar__text {
        display:flex;
        align-items: center;
        min-height: inherit;
        text-align: center
    }
}

.toolbar__text__frame {
    --ticker-direction: ticker-rtl;
    --padding: var(--inner);
    display: flex;
    width: 100%
}

@media only screen and (max-width: 749px) {
    .toolbar__text__frame {
        justify-content:center
    }
}

.toolbar__text__frame .ticker--animated {
    animation-play-state: running
}

.toolbar__text__frame:hover .ticker--animated {
    animation-play-state: paused
}

.toolbar__text__frame .announcement__text {
    min-height: 0
}

.toolbar__text+.toolbar__menu {
    margin-left: 22px
}

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

.toolbar__menu a {
    --link: var(--text)
}

@media only screen and (max-width: 749px) {
    .toolbar__menu {
        margin:0 var(--outer-offset)
    }
}

.toolbar__menu .navlink--toplevel {
    --link-padding: 0
}

@media only screen and (min-width: 750px) {
    .toolbar__menu .navlink--toplevel {
        padding:5px 0;
        margin-right: 22px
    }
}

@media only screen and (max-width: 749px) {
    .toolbar__menu .navlink--toplevel {
        flex-basis:100%;
        padding: 5px var(--outer);
        transition: background 0.4s ease
    }

    .toolbar__menu .navlink--toplevel:hover {
        background: var(--bg-accent)
    }
}

.toolbar__utilities {
    font-family: var(--FONT-STACK-NAV);
    font-style: var(--FONT-STYLE-NAV);
    font-weight: var(--FONT-WEIGHT-NAV-BOLD);
    letter-spacing: var(--LETTER-SPACING-NAV);
    position: relative;
    margin-left: var(--outer)
}

@media only screen and (min-width: 750px) {
    .toolbar__utilities {
        display:flex;
        gap: 22px;
        position: relative;
        align-items: center;
        float: right
    }

    .toolbar__utilities:only-child {
        margin-left: auto
    }

    .toolbar__utilities::before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        right: 100%;
        width: var(--gap);
        pointer-events: none;
        background: linear-gradient(-90deg,var(--bg) 50%,var(--bg-transparent,#fff0) 100%)
    }
}

.toolbar__utilities .social__links {
    margin-right: -8px
}

.toolbar__utility {
    font-family: var(--FONT-STACK-NAV);
    font-style: var(--FONT-STYLE-NAV);
    font-weight: var(--FONT-WEIGHT-NAV);
    letter-spacing: var(--LETTER-SPACING-NAV);
    display: flex;
    align-items: center
}

.drawer .toolbar__utility {
    font-size: var(--font-body-small);
    padding: 8px 0
}

.gift-card-link {
    --link: var(--text);
    display: inline-block;
    flex: 0 0 auto;
    white-space: nowrap
}

.breadcrumbs {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: center;
    padding: 0 var(--outer);
    margin: 30px 0;
    font-size: var(--font-body-small);
    color: var(--link)
}

@media only screen and (max-width: 749px) {
    .breadcrumbs {
        padding:0 15px
    }
}

.breadcrumbs a {
    display: inline-block;
    vertical-align: middle;
    transition: color 0.3s linear
}

.breadcrumbs--no-padding {
    padding: 0
}

.breadcrumbs__arrow {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    margin: 0 10px;
    background-color: var(--text);
    opacity: 0.4
}

.breadcrumbs__arrow svg {
    width: 5px;
    height: 10px
}

.rte--homepage {
    font-size: var(--font-body-medium);
    margin-bottom: 0
}

.index-rte {
    position: relative
}

@media only screen and (min-width: 990px) {
    .index-rte .columns--2 p,.index-rte .columns--3 p {
        margin-bottom:0
    }
}

@media only screen and (max-width: 989px) {
    .index-rte .columns--2,.index-rte .columns--3 {
        columns:initial
    }
}

.index-rte .hero__subheading {
    margin-top: 0
}

.index-rte .hero__content__wrapper {
    overflow: unset
}

.index-rte .hero__content {
    width: 100%
}

.index-rte .hero__content--compact {
    margin-bottom: 0
}

.index-rte .image-overlay {
    z-index: auto
}

.index-rte .backdrop--radial {
    z-index: 0
}

.index-rte:has(.backdrop--radial) {
    overflow: hidden
}

.image-overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 10;
    background-color: var(--overlay-bg)
}

[class*=align--] {
    --alignment-align-items: flex-start;
    --alignment-justify-content: flex-start;
    --alignment-text-align: left;
    --video-inset-top: var(--outer);
    --video-inset-right: var(--outer);
    --video-inset-bottom: var(--outer);
    --video-inset-left: var(--outer);
    align-items: var(--alignment-align-items);
    justify-content: var(--alignment-justify-content);
    text-align: var(--alignment-text-align)
}

.align--top-left {
    --alignment-align-items: flex-start;
    --alignment-justify-content: flex-start;
    --alignment-text-align: left;
    --video-inset-left: 0px;
    --video-inset-top: 0px
}

.align--top-center {
    --alignment-align-items: flex-start;
    --alignment-justify-content: center;
    --alignment-text-align: center;
    --video-inset-top: 0px
}

.align--top-right {
    --alignment-align-items: flex-start;
    --alignment-justify-content: flex-end;
    --alignment-text-align: right;
    --video-inset-right: 0px;
    --video-inset-top: 0px
}

.align--middle-left {
    --alignment-align-items: center;
    --alignment-justify-content: flex-start;
    --alignment-text-align: left;
    --video-inset-left: 0px
}

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

.align--middle-right {
    --alignment-align-items: center;
    --alignment-justify-content: flex-end;
    --alignment-text-align: right;
    --video-inset-right: 0px
}

.align--bottom-left {
    --alignment-align-items: flex-end;
    --alignment-justify-content: flex-start;
    --alignment-text-align: left;
    --video-inset-left: 0px;
    --video-inset-bottom: 0px
}

.align--bottom-center {
    --alignment-align-items: flex-end;
    --alignment-justify-content: center;
    --alignment-text-align: center;
    --video-inset-bottom: 0px
}

.align--bottom-right {
    --alignment-align-items: flex-end;
    --alignment-justify-content: flex-end;
    --alignment-text-align: right;
    --video-inset-right: 0px;
    --video-inset-bottom: 0px
}

@media only screen and (min-width: 750px) {
    .align--top-left-desktop {
        --alignment-align-items:flex-start;
        --alignment-justify-content: flex-start;
        --alignment-text-align: left;
        --video-inset-left: 0px;
        --video-inset-top: 0px
    }

    .align--top-center-desktop {
        --alignment-align-items: flex-start;
        --alignment-justify-content: center;
        --alignment-text-align: center;
        --video-inset-top: 0px
    }

    .align--top-right-desktop {
        --alignment-align-items: flex-start;
        --alignment-justify-content: flex-end;
        --alignment-text-align: right;
        --video-inset-right: 0px;
        --video-inset-top: 0px
    }

    .align--middle-left-desktop {
        --alignment-align-items: center;
        --alignment-justify-content: flex-start;
        --alignment-text-align: left;
        --video-inset-left: 0px
    }

    .align--middle-center-desktop {
        --alignment-align-items: center;
        --alignment-justify-content: center;
        --alignment-text-align: center
    }

    .align--middle-right-desktop {
        --alignment-align-items: center;
        --alignment-justify-content: flex-end;
        --alignment-text-align: right;
        --video-inset-right: 0px
    }

    .align--bottom-left-desktop {
        --alignment-align-items: flex-end;
        --alignment-justify-content: flex-start;
        --alignment-text-align: left;
        --video-inset-left: 0px;
        --video-inset-bottom: 0px
    }

    .align--bottom-center-desktop {
        --alignment-align-items: flex-end;
        --alignment-justify-content: center;
        --alignment-text-align: center;
        --video-inset-bottom: 0px
    }

    .align--bottom-right-desktop {
        --alignment-align-items: flex-end;
        --alignment-justify-content: flex-end;
        --alignment-text-align: right;
        --video-inset-right: 0px;
        --video-inset-bottom: 0px
    }
}

@media only screen and (max-width: 749px) {
    .align--top-left-mobile {
        --alignment-align-items:flex-start;
        --alignment-justify-content: flex-start;
        --alignment-text-align: left;
        --video-inset-left: 0px;
        --video-inset-top: 0px
    }

    .align--top-center-mobile {
        --alignment-align-items: flex-start;
        --alignment-justify-content: center;
        --alignment-text-align: center;
        --video-inset-top: 0px
    }

    .align--top-right-mobile {
        --alignment-align-items: flex-start;
        --alignment-justify-content: flex-end;
        --alignment-text-align: right;
        --video-inset-right: 0px;
        --video-inset-top: 0px
    }

    .align--middle-left-mobile {
        --alignment-align-items: center;
        --alignment-justify-content: flex-start;
        --alignment-text-align: left;
        --video-inset-left: 0px
    }

    .align--middle-center-mobile {
        --alignment-align-items: center;
        --alignment-justify-content: center;
        --alignment-text-align: center
    }

    .align--middle-right-mobile {
        --alignment-align-items: center;
        --alignment-justify-content: flex-end;
        --alignment-text-align: right;
        --video-inset-right: 0px
    }

    .align--bottom-left-mobile {
        --alignment-align-items: flex-end;
        --alignment-justify-content: flex-start;
        --alignment-text-align: left;
        --video-inset-left: 0px;
        --video-inset-bottom: 0px
    }

    .align--bottom-center-mobile {
        --alignment-align-items: flex-end;
        --alignment-justify-content: center;
        --alignment-text-align: center;
        --video-inset-bottom: 0px
    }

    .align--bottom-right-mobile {
        --alignment-align-items: flex-end;
        --alignment-justify-content: flex-end;
        --alignment-text-align: right;
        --video-inset-right: 0px;
        --video-inset-bottom: 0px
    }
}

.hero__content__outer.frame__item {
    z-index: 20
}

.hero__content__wrapper {
    position: relative;
    display: flex;
    overflow: hidden;
    width: 100%;
    min-height: 100%
}

.hero__content__wrapper.frame__item {
    z-index: 20
}

a~.hero__aside__wrapper,a~.hero__content__wrapper {
    pointer-events: none
}

a~.hero__aside__wrapper ticker-bar,a~.hero__aside__wrapper quick-add-product,a~.hero__aside__wrapper a,a~.hero__content__wrapper ticker-bar,a~.hero__content__wrapper quick-add-product,a~.hero__content__wrapper a {
    pointer-events: auto
}

.hero__content__wrapper.text-center {
    justify-content: center
}

.hero__images,.hero__video {
    position: relative;
    display: flex
}

.hero__split-image {
    flex: 1
}

.hero__split-image .image__hero__frame,.column__block .image__hero__frame {
    height: 100%
}

.hero__bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.hero__aside__wrapper {
    display: flex
}

.hero__aside__wrapper.frame__item {
    z-index: 20;
    margin-left: auto
}

.hero__aside {
    width: 100%;
    padding: var(--outer)
}

@media only screen and (min-width: 990px) {
    .hero__aside__wrapper.frame__item,.index-hero .hero__content {
        max-width:var(--hero-content-width,50%)
    }

    .hero__aside .product-upsell__holder {
        max-width: 500px;
        margin-left: auto
    }
}

@media only screen and (max-width: 989px) {
    .index-hero .hero__aside__wrapper.frame__item {
        grid-row-start:2;
        color: var(--text-dark)
    }

    .index-hero .wrapper--full .hero__aside__wrapper.frame__item .hero__aside {
        padding: 0
    }

    .index-hero .wrapper--full-padded .hero__aside__wrapper.frame__item .hero__aside {
        padding-left: 0;
        padding-right: 0
    }
}

@media only screen and (min-width: 750px) {
    .text-center--desktop .hero__content__wrapper,.text-center--desktop .hero__button {
        justify-content:center
    }
}

@media only screen and (max-width: 749px) {
    .text-center--mobile .hero__content__wrapper,.text-center--mobile .hero__button {
        justify-content:center
    }
}

body:has([data-header-transparent]):has(.main-content>.shopify-section.section-overlay-header:first-of-type):not(:has(.main-content>.shopify-section.section-overlay-header:first-of-type>.prevent-transparent-header)) .header__backfill {
    display: none
}

@media only screen and (max-width: 749px) {
    body:has([data-header-transparent]):has(.main-content>.shopify-section.section-overlay-header:first-of-type:has(.index-product)) .header__backfill {
        display:block
    }
}

body:has([data-header-transparent]) .section-overlay-header:first-of-type .hero__content__wrapper {
    padding-top: var(--header-height)
}

body:has([data-header-transparent]) .section-overlay-header:first-of-type .index-image-text .brick__block--text {
    padding-top: var(--header-height)
}

@media only screen and (max-width: 749px) {
    body:has([data-header-transparent]) .section-overlay-header:first-of-type .index-image-text .brick__block--text {
        padding-top:0
    }
}

.hero__slide {
    width: 100%
}

.hero__content {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: var(--outer) var(--outer) calc(var(--outer) - var(--line));
    background: var(--bg);
    overflow-wrap: anywhere
}

.hero__content .accordion {
    margin: 0 0 var(--line)
}

.hero__content .accordion+.accordion {
    margin-top: calc(var(--line-offset) - 1px)
}

.hero__content>.hero__button:only-child {
    margin-top: 0
}

.hero__content.flickity-enabled {
    width: 100%;
    padding: 0
}

@media only screen and (min-width: 750px) {
    .hero__content.flickity-enabled .hero__slide {
        opacity:0;
        transition: opacity 0.5s ease
    }

    .hero__content.flickity-enabled .hero__slide.is-selected {
        opacity: 1
    }

    .hero__content.flickity-enabled .flickity-page-dots {
        bottom: 0;
        padding: 0 var(--outer)
    }

    .text-left .hero__content.flickity-enabled .flickity-page-dots {
        justify-content: flex-start;
        padding: 0
    }

    .hero__content.flickity-enabled[data-dots=line],.hero__content.flickity-enabled[data-dots=circle] {
        padding-bottom: 20px
    }
}

@media only screen and (max-width: 749px) {
    .hero__content.grid--mobile-slider {
        flex-direction:row
    }

    .hero__content.grid--mobile-slider .hero__slide {
        padding: 0 var(--outer)
    }
}

.hero__content--transparent {
    background: var(--TRANSPARENT);
    box-shadow: none
}

.hero__content--compact {
    padding: 0;
    margin-bottom: var(--line-offset)
}

.hero__title,.hero__subheading,.hero__rte,.hero__description,.hero__button,.hero__collections,.hero__products,.hero__media,.hero__custom-code,.hero__timer {
    margin: 0 0 var(--block-padding-bottom,var(--line))
}

.hero__title,.hero__subheading,.hero__rte,.hero__description {
    color: var(--text)
}

.hero__subheading {
    font-size: var(--font-subheading);
    font-family: var(--FONT-STACK-SUBHEADING);
    font-style: var(--FONT-STYLE-SUBHEADING);
    font-weight: var(--FONT-WEIGHT-SUBHEADING);
    letter-spacing: var(--LETTER-SPACING-SUBHEADING);
    text-transform: var(--FONT-UPPERCASE-SUBHEADING)
}

.hero__rte p:first-child {
    margin-top: 0
}

.hero__rte p:last-child {
    margin-bottom: 0
}

.rte ul,.rte ol,.hero__rte ul,.hero__rte ol,.grid__description ul,.grid__description ol,.countdown-block__text ul,.countdown-block__text ol {
    font-size: inherit
}

.hero__image {
    display: flex;
    height: 100%
}

.hero__media {
    overflow: hidden;
    position: relative
}

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

body.grid-compact .hero__products,body.grid-compact .hero__collections {
    --gap: 0
}

.text-link,.rte a,.hero__rte a,p a {
    --main-color: var(--link);
    --hover-color: var(--link-a70);
    display: inline-block;
    position: relative;
    text-decoration: none;
    cursor: pointer;
    color: var(--link);
    line-height: normal;
    padding: 0 0 2px;
    background-image: linear-gradient(to right,var(--hover-color) 0% 50%,var(--main-color) 50% 100%);
    background-size: 200% 100%;
    background-position: 100% 0;
    background-repeat: no-repeat;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: #fff0;
    transition: background-position 0.3s cubic-bezier(0.39,0.575,0.565,1)
}

.text-link::after,.rte a::after,.hero__rte a::after,p a::after {
    --main-color: var(--link);
    --hover-color: var(--link-a70);
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 1px;
    width: 100%;
    background: linear-gradient(to right,var(--hover-color) 0% 50%,var(--main-color) 50% 100%);
    background-size: 200% 100%;
    background-position: 100% 0;
    transition: background-position 0.3s cubic-bezier(0.39,0.575,0.565,1);
    pointer-events: none
}

@media (hover: hover) {
    .text-link:hover,.text-link:hover::after,.rte a:hover,.rte a:hover::after,.hero__rte a:hover,.hero__rte a:hover::after,p a:hover,p a:hover::after {
        background-position:0 0
    }
}

.text-link {
    --link: currentcolor;
    --link-hover: currentcolor
}

.hero__button-group {
    margin: 0 -8px calc(var(--line) - 8px);
    margin-bottom: var(--block-padding-bottom);
    display: flex;
    flex-flow: row wrap;
    justify-content: var(--alignment-justify-content,center)
}

.text-left .hero__button-group {
    justify-content: flex-start
}

.text-right .hero__button-group {
    justify-content: flex-end
}

.hero__button-group .hero__button {
    margin: 8px
}

.hero__button {
    display: flex;
    align-items: center;
    justify-content: var(--alignment-justify-content,flex-start);
    margin-top: 8px
}

.text-center .hero__button {
    --alignment-justify-content: center
}

.text-right .hero__button {
    --alignment-justify-content: flex-end
}

@media only screen and (max-width: 749px) {
    .text-left--mobile .hero__button {
        --alignment-justify-content:flex-start
    }

    .text-center--mobile .hero__button {
        --alignment-justify-content: center
    }

    .text-right--mobile .hero__button {
        --alignment-justify-content: flex-end
    }
}

.columns--2 {
    columns: 2 180px;
    column-gap: var(--gutter)
}

.columns--3 {
    columns: 3 180px;
    column-gap: var(--gutter)
}

.columns--4 {
    columns: 4 180px;
    column-gap: var(--gutter)
}

.backdrop--radial {
    --backdrop-size: 200%;
    position: relative
}

.backdrop--radial::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    width: var(--backdrop-size);
    height: var(--backdrop-size);
    border-radius: 50%;
    background: radial-gradient(ellipse at center,var(--overlay-bg) 0%,#fff0 70%);
    transform: translate(-50%,-50%)
}

.backdrop--radial:empty::before {
    display: none
}

.grid-container.wrapper .grid__items-holder,.grid-container.wrapper--full-padded .grid__items-holder {
    margin-left: var(--outer-offset);
    margin-right: var(--outer-offset)
}

@media only screen and (min-width: 750px) {
    .grid-container--inline {
        display:flex;
        padding: 0 var(--outer)
    }

    .grid-container--inline .grid-outer {
        padding-left: 0;
        overflow: hidden
    }

    .grid-container--inline .grid-outer:only-child {
        max-width: none
    }

    .grid-container--inline .grid-outer:not(:has(.grid-slider)) {
        padding-right: 0
    }

    .grid-container--inline .grid__items-holder {
        flex: 1 0 auto;
        margin-right: var(--outer-offset);
        max-width: calc(100% - var(--content-width))
    }

    .grid-container--inline .grid__heading-holder {
        margin: 0;
        align-self: center;
        flex: 0 0 var(--content-width);
        margin-right: var(--outer);
        padding: 0
    }

    .grid-container--inline .grid__heading-holder--sticky {
        align-self: flex-start;
        position: sticky;
        top: calc(var(--outer) + var(--header-sticky-height))
    }

    .grid-container--inline .grid__heading-holder--sticky .grid__heading-text:only-child {
        margin-bottom: var(--outer)
    }

    .grid-container--inline .grid__heading-text {
        width: auto
    }

    .grid-container--inline .grid--slider .grid-item {
        width: var(--item-width)
    }
}

@media only screen and (min-width: 990px) {
    .grid-container--inline {
        --content-width:28%;
        --item-width: 38% !important
    }
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .grid-container--inline {
        --content-width:28%;
        --item-width: 72% !important
    }
}

@media only screen and (min-width: 750px) {
    .grid-container.wrapper--full {
        --gap:0
    }

    .grid-container.wrapper--full .grid-outer {
        padding: 0
    }
}

@media only screen and (min-width: 750px) {
    .grid-container--inline.wrapper .grid-outer {
        padding:0
    }

    .grid-container--inline.wrapper .grid__items-holder {
        margin-left: 0;
        margin-right: 0;
        max-width: calc(100% - var(--content-width) - var(--outer))
    }
}

.grid-container--inline.wrapper--full .grid__items-holder {
    margin-left: 0;
    margin-right: 0
}

.grid-container--inline.wrapper--full-padded .grid__items-holder {
    margin-left: var(--outer-offset)
}

@media only screen and (min-width: 750px) {
    .grid-container--inline.wrapper--full-padded .grid__items-holder {
        margin-left:0;
        margin-right: 0
    }
}

.grid__heading {
    color: var(--text);
    margin: 0
}

.grid__heading-holder {
    position: relative;
    display: block;
    overflow-wrap: break-word;
    margin: 0 0 var(--gutter);
    padding: 0 var(--outer)
}

.wrapper .grid__heading-holder,.wrapper--full-padded .grid__heading-holder {
    padding: 0
}

.grid__description:first-child>*:first-child {
    margin-top: 0
}

.grid__description>*:last-child {
    margin-bottom: 0
}

.grid__description a {
    color: inherit
}

.grid__heading-text:not(:last-child) {
    margin-bottom: 1em
}

@media only screen and (min-width: 750px) {
    .grid__heading-holder--inline {
        display:flex;
        justify-content: space-between;
        align-items: center
    }

    .grid__heading-holder--inline .grid__heading-text {
        margin: 0;
        padding: 0;
        width: auto;
        flex: 0 1 60%
    }

    .grid__heading-holder--inline .grid__heading-actions {
        flex: 0 1 auto;
        position: relative;
        max-width: 50%
    }

    .grid__heading-holder--inline .grid__heading-actions:only-child {
        flex: 1;
        max-width: none
    }
}

@media only screen and (min-width: 990px) {
    .grid__heading-text {
        width:60%;
        margin: 0 auto
    }

    .text-left .grid__heading-text {
        margin-left: 0
    }

    .text-right .grid__heading-text {
        margin-right: 0
    }

    .grid__heading-holder--inline .grid__heading-actions .btn,.grid__heading-holder--inline .grid__heading-actions .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .grid__heading-holder--inline .grid__heading-actions .shopify-payment-button__button--unbranded,.grid__heading-holder--inline .grid__heading-actions #challenge .shopify-challenge__button,#challenge .grid__heading-holder--inline .grid__heading-actions .shopify-challenge__button {
        width: auto
    }
}

.index-newsletter .hero__content__wrapper {
    z-index: 11
}

.frame {
    display: grid;
    grid-template-columns: 1fr
}

.frame__item {
    grid-row-start: 1;
    grid-column-start: 1;
    width: 100%
}

.index-hero--scrolling .hero__content__wrapper {
    display: grid;
    grid-template-rows: max-content;
    text-align: center
}

.index-hero--scrolling .hero__content {
    margin-left: auto;
    margin-right: auto
}

.index-hero--scrolling .hero__button,.index-hero--scrolling .hero__button-group {
    justify-content: center
}

.index-hero--scrolling .announcement__bar-outer {
    min-width: 0;
    padding: calc(var(--outer) / 2) 0
}

.index-hero--scrolling .content-align--middle-center.scrolling-align--middle-center {
    align-content: center
}

.index-hero--scrolling .content-align--bottom-center.scrolling-align--bottom-center {
    align-content: flex-end
}

.index-hero--scrolling .content-align--top-center.scrolling-align--bottom-center,.index-hero--scrolling .content-align--bottom-center.scrolling-align--top-center {
    align-content: space-between
}

.index-hero--scrolling .content-align--bottom-center.scrolling-align--middle-center,.index-hero--scrolling .content-align--middle-center.scrolling-align--bottom-center,.index-hero--scrolling .content-align--top-center.scrolling-align--middle-center,.index-hero--scrolling .content-align--middle-center.scrolling-align--top-center {
    grid-template-rows: minmax(0,1fr) auto minmax(0,1fr)
}

.index-hero--scrolling .content-align--top-center.scrolling-align--bottom-center .hero__content,.index-hero--scrolling .content-align--top-center.scrolling-align--middle-center .hero__content {
    grid-row-start: 1
}

.index-hero--scrolling .content-align--bottom-center.scrolling-align--middle-center .announcement__bar-outer,.index-hero--scrolling .content-align--middle-center.scrolling-align--bottom-center .hero__content,.index-hero--scrolling .content-align--middle-center.scrolling-align--top-center .hero__content,.index-hero--scrolling .content-align--top-center.scrolling-align--middle-center .announcement__bar-outer {
    align-self: center
}

.index-hero--scrolling .content-align--bottom-center.scrolling-align--middle-center .announcement__bar-outer,.index-hero--scrolling .content-align--middle-center.scrolling-align--bottom-center .hero__content {
    grid-row-start: 2
}

.index-hero--scrolling .content-align--middle-center.scrolling-align--bottom-center .announcement__bar-outer,.index-hero--scrolling .content-align--bottom-center.scrolling-align--middle-center .hero__content {
    align-self: flex-end;
    grid-row-start: 3
}

.index-hero--scrolling .content-align--middle-center.scrolling-align--middle-center .announcement__bar-outer+.hero__content--transparent {
    padding-top: 0
}

body.has-line-design .section-columns .product-item__image,body.has-line-design .section-columns .grid-item {
    border: 0
}

body.has-line-design.grid-compact .section-columns .grid-item {
    margin-top: 0;
    margin-right: 0
}

body.has-line-design.grid-compact .section-columns .grid--slider .grid-item {
    margin-right: var(--gap)
}

@media only screen and (min-width: 750px) {
    .multicolumn {
        --gap-offset:calc(var(--gap) / -2);
        display: flex;
        flex-flow: row wrap;
        gap: 0;
        margin: 0 var(--gap-offset)
    }

    .multicolumn .grid-item {
        padding: var(--gap) calc(var(--gap) / 2);
        flex: 0 0 var(--desktop-width)
    }

    .multicolumn .product-item--overlay-text .product-information {
        padding-bottom: var(--gap)
    }
}

.text-center .icon__animated {
    margin: 0 auto var(--inner)
}

.text-center .icon--left {
    justify-content: center
}

.icon__animated {
    display: flex;
    align-items: center;
    margin-bottom: var(--inner);
    width: var(--icon-size);
    height: var(--icon-size);
    min-height: var(--icon-line-height)
}

.icon__animated--image {
    height: auto
}

.icon--left {
    display: flex;
    align-items: flex-start
}

.icon--left .icon__animated {
    margin: 0 20px 0 0;
    flex: 0 0 var(--icon-size)
}

.icon--left .column__content {
    flex: 1 1 auto
}

.column__content {
    overflow-wrap: anywhere
}

.column__heading {
    color: var(--text);
    margin-top: 0;
    margin-bottom: 7px
}

.column__text p {
    margin-top: 10px;
    line-height: 1.5
}

.column__heading:last-child,.column__text p:last-child {
    margin-bottom: 0
}

.column__btn {
    margin: var(--inner) 0 0
}

.column__links {
    margin-bottom: -0.5em
}

.column__links__item {
    margin-bottom: 0.5em
}

.column__links__item a {
    transition: color 0.25s ease
}

.column__inner {
    position: relative
}

.column__inner .image-wrapper {
    transition: transform 2s cubic-bezier(0.215,0.61,0.355,1)
}

.column__inner:hover .image-wrapper {
    transform: scale(1.08)
}

.column__inner:not(.frame) {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

.text-left .column__inner:not(.frame) {
    align-items: flex-start
}

.column__inner.frame {
    justify-items: center
}

.column__image,.column__content {
    width: var(--image-width,100%);
    position: relative;
    overflow: hidden;
    margin-bottom: var(--inner)
}

.column__image.frame__item,.column__content.frame__item {
    margin-bottom: 0
}

.column__image--circle {
    border-radius: 50%
}

.column__image--rounded {
    border-radius: 5%
}

.column__image--blob-one {
    --radius-blob: 53% 47% 34% 66% / 63% 46% 54% 37%
}

.column__image--blob-two {
    --radius-blob: 37% 63% 56% 44% / 49% 56% 44% 51%
}

.column__image--blob-three {
    --radius-blob: 63% 37% 37% 63% / 43% 37% 63% 57%
}

.column__image--blob-one,.column__image--blob-two,.column__image--blob-three {
    --radius-blob-hover: 49% 51% 48% 52% / 57% 44% 56% 43%;
    border-radius: var(--radius-blob);
    transition: border-radius 1s ease-in-out
}

.column__inner:hover .column__image--blob-one,.column__inner:hover .column__image--blob-two,.column__inner:hover .column__image--blob-three {
    border-radius: var(--radius-blob-hover)
}

.column__content.frame__item {
    display: flex;
    z-index: 20;
    padding: var(--inner)
}

.text-center .column__content.frame__item:not([class*=align--]) {
    justify-content: center
}

countdown-timer {
    display: block
}

.section-countdown {
    position: relative;
    overflow: hidden;
    width: 100%
}

.section-countdown .brick__section {
    position: relative;
    gap: var(--gap);
    align-content: center;
    align-items: center;
    padding: var(--inner) 0
}

.section-countdown .flex-column {
    justify-content: center
}

.section-countdown .image-overlay {
    z-index: auto
}

.section-countdown .brick__block,.section-countdown .hero__content {
    background: #fff0
}

.section-countdown .hero__content {
    flex: 1
}

.section-countdown .hero__content__wrapper {
    overflow: unset
}

.section-countdown .backdrop--radial {
    z-index: 1
}

@media only screen and (max-width: 749px) {
    .section-countdown .brick__block {
        min-width:100%
    }
}

.countdown__timer {
    margin: 0 calc(var(--gap) * -1)
}

@media only screen and (min-width: 750px) {
    .countdown__timer {
        --gap:12px
    }
}

@media only screen and (max-width: 749px) {
    .countdown__timer {
        --gap:6px
    }
}

.countdown__datetime {
    display: inline-grid;
    grid-template-columns: repeat(4,1fr);
    gap: var(--gap)
}

.show-message .countdown__datetime {
    display: none
}

.countdown__message {
    align-items: center;
    justify-content: center;
    display: none
}

.show-message .countdown__message {
    display: flex
}

.timer {
    display: flex;
    flex-direction: column;
    align-items: center;
    overflow-wrap: break-word;
    text-transform: uppercase
}

@media only screen and (min-width: 750px) {
    .timer {
        padding:0 var(--inner)
    }
}

.timer--boxed {
    background: var(--digits-gradient);
    border-radius: var(--RADIUS-SELECT);
    padding: var(--inner)
}

.timer__unit {
    display: block;
    font-size: var(--text-font-size,var(--font-body-small))
}

.timer__digit {
    font-size: var(--digit-font-size,var(--font-body-x-large))
}

.announcement__bar .timer__digit {
    font-size: inherit
}

.countdown-block {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--gap) / 2);
    text-align: left;
    color: var(--text);
    background: var(--bg);
    padding: var(--countdown-padding)
}

.announcement__bar .countdown-block {
    padding: 5px 0
}

.countdown-block .countdown__timer {
    margin: 0
}

.announcement__bar-holder--slider .countdown-block {
    min-width: calc(100vw - var(--scrollbar-width) - var(--outer) * 2)
}

.announcement__bar-holder--arrows .countdown-block {
    min-width: calc(100vw - var(--scrollbar-width) - var(--outer) * 2 - var(--arrow-space) * 2 - 60px)
}

.countdown-block .timer {
    padding: 0;
    text-transform: none
}

.announcement__bar .countdown-block .timer__unit {
    font-size: inherit
}

.announcement__bar-holder--marquee .countdown-block .timer {
    flex-direction: row;
    gap: calc(var(--gap) / 2);
    align-items: center
}

.announcement__bar-holder--marquee .countdown-block .countdown__datetime {
    grid-template-columns: repeat(4,auto)
}

.countdown-block.flex-column .countdown__datetime {
    display: flex
}

.product__page .countdown-block {
    align-items: flex-start;
    gap: 0
}

.product__page .countdown-block.text-center {
    text-align: center;
    align-items: center
}

.product__page .countdown-block__text p {
    margin-top: 0
}

@media only screen and (max-width: 749px) {
    .modal-section {
        height:auto
    }
}

.modal-wrapper {
    display: flex;
    align-items: stretch;
    height: 100%
}

@media only screen and (max-width: 749px) {
    .modal-wrapper {
        flex-direction:column;
        height: auto
    }
}

.image-height .modal-wrapper {
    height: auto;
    align-items: center
}

.modal-wrapper .input-group {
    border-color: var(--text)
}

.modal-wrapper--reverse {
    flex-direction: row-reverse
}

@media only screen and (max-width: 749px) {
    .modal-wrapper--reverse {
        flex-direction:column
    }
}

.modal__inner {
    max-width: 600px;
    margin: 0 auto;
    padding: 50px
}

.modal__text {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    flex: 1 0 50%;
    height: 100%;
    text-align: center;
    color: var(--text)
}

.modal__text .contact-form {
    margin-top: var(--inner)
}

.modal__image {
    width: 100%;
    position: relative;
    overflow: hidden
}

@media only screen and (min-width: 750px) {
    .modal__image {
        flex:0 1 50%
    }
}

.modal__overlay {
    --underlay-bg: rgba(255,255,255,0.5);
    z-index: 4000
}

.modal__overlay[open] {
    display: flex
}

.modal__body {
    z-index: 100
}

.modal--default {
    overflow-y: auto;
    background: var(--bg);
    box-shadow: 0 2px 10px rgb(0 0 0 / 0.05);
    position: relative;
    max-width: 1000px;
    max-height: 90%;
    width: 50vw;
    margin: auto
}

.modal--default.modal-wrapper--has-image {
    width: 75vw
}

.modal--default button.close {
    --icon-size: 24px;
    position: absolute;
    top: 50%;
    right: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    color: var(--link);
    background: #fff0;
    border-radius: var(--RADIUS);
    font-size: 0;
    text-decoration: none;
    transform: translate3d(0,-50%,0);
    transition: color 0.3s ease;
    --icon-size: 20px;
    top: 30px;
    right: 20px
}

.modal--default button.close .icon {
    display: block;
    fill: currentcolor;
    pointer-events: none;
    will-change: transform;
    transition: transform 0.4s cubic-bezier(0.4,0,0.22,1)
}

@media (hover: hover) {
    .modal--default button.close:hover {
        color:var(--link-hover)
    }

    .modal--default button.close:hover .icon {
        transform: scale(1.25)
    }
}

.modal--default .modal__text {
    height: auto
}

.modal--default .modal-wrapper--no-image {
    justify-content: center
}

.modal--default .modal-wrapper--no-image .modal__text {
    width: 100%
}

.modal--default .modal__subheading {
    margin-top: -30px;
    margin-bottom: 30px
}

.modal--default .newsletter-form {
    margin: 0 auto
}

.modal__overlay--password {
    --underlay-bg: rgba(0, 0, 0, 0.4)
}

.modal--password .modal__inner {
    width: 100%
}

@media only screen and (max-width: 749px) {
    .modal--default {
        margin:auto 0 0
    }

    .modal--newsletter.modal-wrapper--has-image button.close {
        top: 120px
    }

    .modal--newsletter.modal-wrapper--has-image {
        z-index: 1;
        background: none
    }

    .modal--newsletter.modal-wrapper--has-image .modal-section {
        position: relative
    }

    .modal--newsletter.modal-wrapper--has-image .modal-section:before {
        position: absolute;
        top: 100px;
        left: 0;
        bottom: 0;
        right: 0;
        z-index: -1;
        background: var(--bg);
        content: ""
    }

    .modal__overlay--default .modal--default {
        width: 100%;
        max-width: 100%
    }

    .modal__overlay--default .modal__text {
        width: 100%;
        flex-shrink: 0
    }

    .modal__overlay--default .modal__inner {
        padding: 10px 25px 25px
    }

    .modal__overlay--newsletter .modal-wrapper {
        flex-wrap: wrap;
        flex-direction: column-reverse;
        padding-top: 22px
    }

    .modal__overlay--newsletter .modal-wrapper--no-image .modal__text {
        padding-left: 10px
    }

    .modal__overlay--newsletter .modal__subheading {
        margin-top: 0;
        margin-bottom: 10px
    }

    .modal__overlay--newsletter .modal__description {
        font-size: var(--font-body-medium)
    }

    .modal__overlay--newsletter .input-group-field {
        padding: 8px 12px
    }

    .modal__overlay--newsletter .modal__image {
        flex-shrink: 0;
        height: calc(20vh + 20px);
        width: calc(20vh + 20px);
        border-radius: 50%;
        border-width: 8px;
        margin: auto;
        z-index: 0;
        border: 1px solid var(--bg)
    }

    .modal__overlay--password[open] .modal__body {
        animation: translateUp 0.5s 50ms forwards
    }

    .modal__overlay--password[closing] .modal__body {
        animation: translateDown 0.5s 50ms forwards
    }
}

.search-form {
    position: relative;
    display: flex
}

.search-form input[type=search] {
    width: 100%;
    margin: 0;
    padding: 15px;
    font-size: var(--font-body-medium);
    border: 0
}

@supports (-webkit-touch-callout:none) {
    .search-form input[type=search] {
        font-size: max(calc(var(--font-nav-small) * var(--FONT-SIZE-NAV)), 16px)
    }
}

.search-form button[type=reset] {
    flex: 0 0 auto;
    height: 100%;
    padding: 15px;
    display: flex;
    align-items: center;
    color: var(--link);
    font-size: var(--font-body-x-small);
    text-transform: uppercase;
    letter-spacing: 0.12em
}

.input-holder {
    position: relative;
    display: flex;
    flex: 1 1 auto
}

.search-submit {
    --icon-size: 24px;
    margin: 0;
    border-radius: 0 var(--RADIUS) var(--RADIUS) 0
}

.search-box {
    border-radius: var(--RADIUS) 0 0 var(--RADIUS)
}

main-search .input-holder {
    border: 1px solid var(--border);
    border-radius: var(--RADIUS) 0 0 var(--RADIUS)
}

.search-results-item__image {
    display: block;
    padding-top: var(--PRODUCT-GRID-ASPECT-RATIO);
    height: 0;
    position: relative;
    overflow: hidden;
    background-color: var(--text-a5)
}

.search-results-item__image:only-child {
    border-bottom: none
}

.is-focused .search-results-item__image {
    overflow: visible
}

.search-results-item__image.is-visible {
    overflow: visible;
    z-index: 12
}

.search-results-item__image .item-link {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.search-results-item__image .svg-placeholder {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.has-line-design .search-results-item__image {
    border-bottom: 1px solid var(--border)
}

.search-results-item__bg {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    overflow: hidden;
    font-size: 0;
    line-height: 1;
    will-change: transform,opacity
}

.item-link {
    display: block;
    padding: calc(var(--inner) / 2) var(--inner)
}

@media only screen and (max-width: 749px) {
    .item-link {
        padding:12px
    }
}

.index-newsletter {
    position: relative
}

.newsletter__blocks {
    display: grid;
    gap: var(--outer)
}

@media only screen and (min-width: 750px) {
    .newsletter__blocks {
        grid-template-columns:repeat(var(--item-count),minmax(0,1fr))
    }
}

.newsletter__block__inner {
    padding: var(--inner) 0
}

@media only screen and (min-width: 750px) {
    .wrapper--full .newsletter__block--image--left {
        margin-left:var(--outer-offset)
    }

    .wrapper--full .newsletter__block--image--right {
        margin-right: var(--outer-offset)
    }
}

@media only screen and (max-width: 749px) {
    .wrapper--full .newsletter__block--image {
        margin:0 var(--outer-offset)
    }
}

.newsletter-form {
    --border: var(--text-a35);
    max-width: 440px
}

.text-center .newsletter-form {
    margin: 0 auto
}

.newsletter-form .input-row {
    margin-bottom: var(--line)
}

.newsletter-form .input-row:last-of-type {
    margin-bottom: 0
}

.newsletter-form .input-group {
    position: relative;
    display: flex;
    margin: 0;
    border: 0;
    border-bottom: 1px solid var(--border);
    border-radius: 0
}

.newsletter-form .input-group__field {
    flex: 1 1 auto;
    border: 0;
    padding: 1em 1em 1em 0;
    color: var(--text)
}

.newsletter-form .input-group__field::placeholder,.newsletter-form .input-group__field:-webkit-autofill,.newsletter-form .input-group__field:-webkit-autofill:hover,.newsletter-form .input-group__field:-webkit-autofill:focus,.newsletter-form .input-group__field:-webkit-autofill:active {
    -webkit-text-fill-color: var(--text-a80)
}

.newsletter-form .input-group__btn {
    flex: 0 0 auto;
    padding: 0 0 0 12px;
    color: var(--text)
}

.newsletter__message {
    display: none;
    line-height: 1.5;
    margin: var(--inner) 0;
    padding: var(--inner);
    background: var(--COLOR-SUCCESS-BG);
    font-size: var(--font-body-small);
    font-style: italic
}

.has-success .newsletter__message--success {
    display: block
}

.has-success .newsletter__message--success span,.has-success .newsletter__message--success strong {
    padding: 0 5px;
    border: 1px dashed currentcolor;
    font-weight: var(--FONT-WEIGHT-BODY-BOLD)
}

.has-error .newsletter__message--error {
    display: block
}

.has-success .input-row,.has-success .input-group {
    display: none
}

.newsletter__outer {
    display: flex;
    align-items: flex-start;
    position: absolute;
    left: 0;
    top: calc(var(--header-height) + var(--announcement-height));
    width: 100%;
    height: calc(100% - var(--header-height) - var(--announcement-height));
    pointer-events: none!important
}

@media only screen and (max-width: 479px) {
    .newsletter__outer {
        position:fixed;
        top: auto;
        bottom: var(--outer);
        right: var(--outer);
        left: var(--outer);
        width: auto;
        height: auto;
        z-index: 4003
    }
}

.newsletter__inner {
    display: flex;
    position: relative;
    align-items: flex-start;
    width: 100%;
    height: 100%
}

.small-newsletter {
    position: sticky;
    top: 0;
    left: 0;
    bottom: auto;
    z-index: 4000;
    width: 350px;
    height: auto;
    padding: 0 40px 0 16px;
    background: var(--bg);
    font-size: var(--font-body-small);
    color: var(--text);
    pointer-events: auto
}

@media only screen and (max-width: 989px) {
    .small-newsletter {
        width:48%
    }
}

@media only screen and (max-width: 479px) {
    .small-newsletter {
        position:relative;
        width: 100%
    }
}

.small-newsletter .newsletter__message {
    padding: 0;
    margin: 0.5em 0;
    background: #fff0
}

.small-newsletter--top-left {
    margin-right: auto
}

.small-newsletter--top-right {
    margin-left: auto
}

.small-newsletter--bottom-left,.small-newsletter--bottom-right {
    top: auto;
    bottom: 80px;
    transform: translateY(80px);
    transition: transform 0.3s ease
}

.cart-bar-visible .small-newsletter--bottom-left,.cart-bar-visible .small-newsletter--bottom-right {
    transition: transform 0.5s ease;
    transform: translateY(0)
}

.small-newsletter--bottom-left {
    margin: auto auto 0 0
}

.small-newsletter--bottom-right {
    margin: auto 0 0 auto
}

.small-newsletter .input-group {
    position: static;
    border: 0
}

.small-newsletter .input-group__field {
    width: 100%;
    padding: 10px 0;
    font-size: var(--font-body-small)
}

.small-newsletter .input-group__field:-webkit-autofill,.small-newsletter .input-group__field:-webkit-autofill:hover,.small-newsletter .input-group__field:-webkit-autofill:focus,.small-newsletter .input-group__field:-webkit-autofill:active {
    -webkit-transition: background-color 5000s ease-in-out 0s,border-color 5000s ease-in-out 0s;
    transition: background-color 5000s ease-in-out 0s,border-color 5000s ease-in-out 0s;
    -webkit-text-fill-color: var(--text)!important
}

.small-newsletter .btn--arrow {
    position: absolute;
    top: 50%;
    right: 12px;
    width: 20px;
    height: 20px;
    padding: 0;
    margin-top: -10px;
    color: inherit;
    border: none;
    background: none;
    font-size: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s,visibility 0.3s
}

.small-newsletter.has-value .btn--arrow {
    opacity: 1;
    visibility: visible
}

.has-header-sticky .small-newsletter {
    top: var(--header-height)
}

@media only screen and (max-width: 479px) {
    .has-header-sticky .small-newsletter {
        top:0
    }
}

[data-scroll-locked] .small-newsletter:not([open]) {
    visibility: hidden;
    z-index: -1;
    opacity: 0!important;
    pointer-events: none;
    transition: z-index 0.3s,opacity 0.3s,visibility 0s 0.3s
}

.newsletter__heading {
    padding: 10px 0;
    cursor: pointer
}

.newsletter__heading p {
    margin: 0
}

@media only screen and (max-width: 479px) {
    .newsletter__heading p {
        overflow:hidden;
        white-space: nowrap;
        text-overflow: ellipsis
    }
}

.newsletter__close {
    --icon-size: 24px;
    position: absolute;
    top: 50%;
    right: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    color: var(--link);
    background: #fff0;
    border-radius: var(--RADIUS);
    font-size: 0;
    text-decoration: none;
    transform: translate3d(0,-50%,0);
    transition: color 0.3s ease;
    --icon-size: 20px
}

.newsletter__close .icon {
    display: block;
    fill: currentcolor;
    pointer-events: none;
    will-change: transform;
    transition: transform 0.4s cubic-bezier(0.4,0,0.22,1)
}

@media (hover: hover) {
    .newsletter__close:hover {
        color:var(--link-hover)
    }

    .newsletter__close:hover .icon {
        transform: scale(1.25)
    }
}

.has-value .newsletter__close {
    visibility: hidden;
    opacity: 0
}

.index-look .grid--slider {
    --item-width: calc((50vw - var(--scrollbar-width) - var(--outer) * 2) * 0.48)
}

@media only screen and (min-width: 750px) {
    .index-look .look__aside {
        align-self:center
    }

    .index-look .look__content {
        flex: 1;
        display: flex;
        flex-direction: column;
        min-height: 100%;
        justify-content: center
    }

    .index-look .look__slider:not(.grid--slider) {
        display: grid;
        grid-template-columns: minmax(0,1fr);
        gap: var(--gap);
        position: static;
        width: 100%
    }

    .index-look .look__slider--grid:not(.grid--slider) {
        grid-template-columns: repeat(2,minmax(0,1fr))
    }
}

@media only screen and (min-width: 750px) and (min-width:990px) {
    .index-look .look__slider--grid:not(.grid--slider) {
        max-width:50vw;
        padding: 0
    }
}

@media only screen and (min-width: 750px) {
    .index-look .product-item {
        width:100%;
        display: flex;
        flex-direction: column;
        flex: 0 0 auto
    }
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .index-look .look__aside {
        padding-top:35px;
        padding-bottom: 35px
    }

    .index-look .look__title {
        padding-bottom: 10px
    }
}

@media only screen and (min-width: 750px) {
    .look {
        flex:1;
        display: flex;
        align-items: flex-start
    }

    .look.is-reversed {
        flex-direction: row-reverse
    }
}

.look .btn,.look .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .look .shopify-payment-button__button--unbranded,.look #challenge .shopify-challenge__button,#challenge .look .shopify-challenge__button {
    --icons: var(--btn-text)
}

@media only screen and (min-width: 750px) {
    .look__slider:not(.grid--slider) {
        display:flex;
        flex-flow: row nowrap;
        gap: 0;
        overflow-x: auto;
        overflow-y: hidden;
        max-width: calc(25vw + 150px);
        padding-left: 75px;
        padding-right: 75px;
        margin-left: auto;
        margin-right: auto;
        scrollbar-width: none;
        -ms-overflow-style: none
    }

    .look__slider:not(.grid--slider)::-webkit-scrollbar {
        display: none
    }

    .look__slider:not(.grid--slider).flickity-enabled {
        overflow: hidden
    }

    .look__slider:not(.grid--slider)::after {
        content: "flickity";
        display: none
    }

    .look__slider:not(.grid--slider) .look__slide {
        display: block
    }

    .look__slider:not(.grid--slider) .flickity-viewport {
        flex: 1;
        width: 100%
    }

    .look__slider:not(.grid--slider) .flickity-page-dots {
        left: 0
    }

    .look__slider:not(.grid--slider) .flickity-prev-next-button.previous {
        left: 4px
    }

    .look__slider:not(.grid--slider) .flickity-prev-next-button.next {
        right: 4px
    }
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .look__slider:not(.grid--slider) {
        max-width:calc(25vw + 100px);
        padding-left: 50px;
        padding-right: 50px
    }
}

@media only screen and (max-width: 749px) {
    .look__slider {
        display:flex;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-behavior: auto;
        scroll-snap-type: x mandatory;
        scroll-padding: var(--outer);
        -webkit-overflow-scrolling: touch;
        padding: 0 0 var(--outer) var(--outer);
        margin: 0;
        scrollbar-width: none;
        -ms-overflow-style: none
    }

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

    .look__slider::after {
        content: "";
        min-height: 1px;
        display: block;
        position: relative;
        padding-right: var(--outer)
    }

    body.grid-compact.has-line-design .look__slider {
        padding-top: 1px
    }

    .look__slider .product-item {
        width: 100%;
        min-height: 100%
    }
}

@media only screen and (max-width: 749px) {
    .look__content .look__slider {
        margin:0 var(--outer-offset)
    }
}

.look__slide {
    flex: 0 0 auto;
    width: 100%
}

@media only screen and (max-width: 749px) {
    .look__slide {
        width:calc(100% - 50px);
        max-width: 80vh;
        margin-right: var(--gutter);
        scroll-snap-align: start
    }

    .look__slide:last-child {
        margin-right: 0
    }

    .look__slide:only-child {
        max-width: 100%;
        width: calc(100% - var(--gutter))
    }
}

.look__aside {
    flex: 1 1 50%;
    text-align: left;
    padding: 35px 0;
    overflow: hidden
}

@media only screen and (min-width: 750px) {
    .look__aside {
        padding:60px var(--outer)
    }
}

@media only screen and (min-width: 1400px) {
    .look__aside {
        padding:104px var(--outer)
    }
}

@media only screen and (max-width: 749px) {
    .look__aside {
        position:fixed;
        top: 0;
        left: 0;
        z-index: 5600;
        width: 100vw;
        height: 100%;
        pointer-events: none;
        opacity: 0;
        visibility: hidden;
        overflow: hidden;
        transition: opacity 0.5s
    }

    .look__aside.is-open {
        opacity: 1;
        pointer-events: initial
    }

    .look__aside.is-open,.look__aside.is-animating {
        visibility: visible
    }
}

@media only screen and (max-width: 749px) {
    .look__close {
        --icon-size:24px;
        position: absolute;
        top: 50%;
        right: 4px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 5px;
        color: var(--link);
        background: #fff0;
        border-radius: var(--RADIUS);
        font-size: 0;
        text-decoration: none;
        transform: translate3d(0,-50%,0);
        transition: color 0.3s ease;
        right: 8px;
        top: 22px;
        z-index: 2
    }

    .look__close .icon {
        display: block;
        fill: currentcolor;
        pointer-events: none;
        will-change: transform;
        transition: transform 0.4s cubic-bezier(0.4,0,0.22,1)
    }
}

@media only screen and (max-width: 749px) and (hover:hover) {
    .look__close:hover {
        color:var(--link-hover)
    }

    .look__close:hover .icon {
        transform: scale(1.25)
    }
}

.look__content {
    overflow-wrap: anywhere
}

@media only screen and (max-width: 749px) {
    .look__content {
        position:absolute;
        right: 0;
        bottom: 0;
        top: auto;
        z-index: 2;
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        max-width: 100%;
        max-height: 100%;
        width: 100%;
        padding: 0 var(--gutter);
        border-radius: 10px 10px 0 0;
        background: var(--bg);
        color: var(--text-dark);
        transform: translateX(100%);
        transition: transform 0.5s
    }
}

@media only screen and (max-width: 749px) {
    .is-open>.look__content {
        transform:translateX(0)
    }
}

.look__title {
    margin: 0;
    padding-bottom: var(--gutter);
    text-align: center;
    position: relative
}

@media only screen and (max-width: 749px) {
    .look__title {
        text-align:left;
        padding-top: var(--gutter)
    }
}

.look__image {
    --top: 0;
    width: 100%;
    position: relative
}

@media only screen and (min-width: 750px) {
    .look__image {
        position:sticky;
        top: var(--top);
        flex: 0 0 50%;
        margin: 0 auto
    }
}

.has-header-sticky .look__image {
    --top: var(--header-height)
}

.has-header-sticky .look__image--fullheight {
    --header-height-sticky: var(--header-height)
}

@media only screen and (min-width: 750px) {
    .look__image--fullheight {
        height:calc(100vh - var(--header-height-sticky, 0px));
        overflow: hidden
    }
}

@media only screen and (min-width: 750px) {
    .look__image--fullheight .look__image-container {
        position:relative;
        min-width: 100%;
        min-height: 100%;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
        aspect-ratio: var(--aspect-ratio)
    }
}

.look__image--fullheight .look__image-bg {
    --header-height-sticky: 0
}

@media only screen and (min-width: 750px) {
    .look__image--fullheight .look__image-bg {
        position:absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        padding-top: 0
    }
}

.look__actions {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: var(--gutter)
}

.look__dots {
    position: absolute;
    top: 12px;
    left: 12px;
    bottom: 11px;
    right: 11px
}

.look__dot__button {
    --bg: var(--COLOR-BG);
    position: absolute;
    width: 23px;
    height: 23px;
    padding: 0;
    margin-top: -12px;
    margin-left: -12px;
    top: var(--dot-top);
    left: var(--dot-left);
    cursor: pointer;
    background: var(--bg);
    border-radius: var(--radius)
}

.look__dot__button::before,.look__dot__button::after {
    content: "";
    width: 100%;
    height: 100%;
    background-color: inherit;
    border-radius: inherit;
    position: absolute;
    inset: 0;
    pointer-events: none
}

.look__dot__button::before {
    animation: pulseInOutSubtle 2.5s ease infinite
}

.look__dot__button::after {
    opacity: 0.5;
    transition: transform 0.6s ease
}

.look__dot__button .icon-bag {
    stroke: var(--accent);
    position: relative;
    z-index: 1
}

@media (hover: hover) {
    .look__dot__button:hover::before {
        animation-iteration-count:1
    }

    .look__dot__button:hover::after {
        transform: scale(1.5)
    }
}

.collection-block__wrapper {
    display: block;
    width: 100%;
    position: relative;
    overflow: hidden
}

.collection-block {
    display: flex;
    align-items: center;
    min-height: 50vw;
    background: var(--bg-accent)
}

.collection-block .radio__fieldset--pgi {
    --bg: var(--COLOR-BG-ACCENT);
    --bg-arrow: var(--COLOR-BG-ACCENT)
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .collection-block {
        min-height:400px
    }
}

@media only screen and (min-width: 990px) and (max-width:1399px) {
    .collection-block {
        min-height:500px
    }
}

@media only screen and (min-width: 1400px) {
    .collection-block {
        min-height:600px
    }
}

@media only screen and (max-width: 749px) {
    .collection-block {
        flex-direction:column
    }
}

.collection-block__content {
    height: 100%;
    width: 50%;
    text-align: left;
    padding: 104px
}

@media only screen and (max-width: 1399px) {
    .collection-block__content {
        padding:60px
    }
}

@media only screen and (max-width: 749px) {
    .collection-block__content {
        width:100%;
        padding: 40px
    }
}

.collection-block__button {
    margin-top: 10px
}

.collection-block__image {
    align-self: stretch;
    position: relative;
    width: 50%
}

@media only screen and (max-width: 749px) {
    .collection-block__image {
        width:100%;
        height: 50vw;
        margin: 30px auto 0
    }
}

.collection-block__image-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.collection-block__products {
    width: 50%
}

@media only screen and (min-width: 750px) {
    .collection-block__products {
        display:flex
    }
}

.collection-block__products .product-item {
    width: 50%
}

.selector-wrapper select,.selector-wrapper .popout__toggle {
    width: 100%
}

.selector-wrapper label {
    font-size: var(--font-body-x-small)
}

.product__selectors .select__fieldset,.product__selectors .radio__fieldset {
    padding-top: calc(var(--form-margin) / 2);
    padding-bottom: calc(var(--form-margin) / 2)
}

.product__selectors>.selector-wrapper:last-child .radio__fieldset {
    padding-bottom: 0
}

.product__block--lines {
    padding-top: calc(var(--form-margin) / 2);
    padding-bottom: calc(var(--form-margin) / 2);
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border)
}

.product__block--lines+.product__block--lines {
    border-top: 0;
    padding-top: 0
}

.product__block--lines .selector-wrapper .select__fieldset,.product__block--lines .selector-wrapper .radio__fieldset {
    border-bottom: 1px solid var(--border)
}

.product__block--lines .selector-wrapper:first-child .select__fieldset,.product__block--lines .selector-wrapper:first-child .radio__fieldset {
    padding-top: 0
}

.product__block--lines .selector-wrapper:last-child .select__fieldset,.product__block--lines .selector-wrapper:last-child .radio__fieldset {
    padding-bottom: 0;
    border-bottom: 0
}

.select__fieldset,.radio__fieldset {
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0,7.5rem) minmax(0,100%)
}

.select__fieldset .select__label {
    display: block;
    padding-right: 0;
    margin: 5px 0;
    align-self: center;
    font-size: var(--font-body-medium);
    font-weight: var(--FONT-WEIGHT-BODY-BOLD)
}

.select__fieldset .select__label.is-hidden {
    display: none;
    margin: 0;
    padding: 0
}

.radio__legend {
    display: block;
    padding: 0;
    width: 100%;
    font-weight: var(--FONT-WEIGHT-BODY);
    font-size: var(--font-body-medium)
}

.radio__legend__label {
    display: flex;
    flex-wrap: wrap;
    overflow-wrap: break-word;
    align-items: center
}

@media only screen and (min-width: 750px) {
    .radio__legend__label {
        padding-top:0
    }
}

.radio__legend.is-hidden {
    display: none;
    padding: 0;
    margin: 0
}

.radio__fieldset--single {
    display: block;
    padding: calc(var(--form-margin) / 2) 0
}

.radio__fieldset--single .radio__legend__link {
    display: inline;
    color: var(--link);
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    font-size: var(--font-body-medium)
}

.radio__legend__link {
    display: flex;
    align-items: center;
    font-weight: var(--FONT-WEIGHT-BODY);
    transition: color 0.3s ease,background 0.3s ease
}

.radio__legend__option-name {
    flex-basis: auto;
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
    overflow-wrap: anywhere
}

.btn-size-chart,.product__final-sale-question {
    --icon-size: 0.938rem;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 2px;
    text-align: center;
    background: var(--bg-accent);
    border-radius: var(--RADIUS);
    min-width: calc(var(--font-body-small) * 1.375);
    line-height: 1.0715
}

.radio__legend__dot {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    margin: 0 10px 0 0;
    background-color: var(--text-dark);
    opacity: 0.4
}

.radio__fieldset__label {
    display: block
}

.radio__legend__label,.radio__fieldset__label {
    font-weight: var(--FONT-WEIGHT-BODY-BOLD)
}

.form__wrapper--classic .radio__legend__label--text {
    justify-content: space-between
}

.radio__legend__values {
    display: flex;
    flex-basis: 100%
}

.radio__legend__values .radio__legend__value {
    flex-basis: auto
}

.radio__legend__values .radio__legend__color__description::before {
    content: "•";
    margin: 0 5px
}

.radio__legend__value {
    flex-basis: 100%;
    display: block;
    padding-top: 4px
}

.swatch__button label:hover,.radio__button label:hover {
    cursor: pointer
}

.radio__button {
    position: relative;
    display: inline-block;
    min-width: var(--option-image-width,0)
}

.radio__fieldset .radio__button label {
    display: block;
    font-family: var(--BTN-FONT-STACK);
    font-size: var(--BTN-FONT-SIZE);
    font-style: var(--BTN-FONT-STYLE);
    font-weight: var(--BTN-FONT-WEIGHT);
    line-height: var(--line-height-normal);
    letter-spacing: var(--BTN-LETTER-SPACING);
    text-transform: var(--BTN-UPPERCASE);
    position: relative;
    margin: 0;
    padding: 10px;
    min-width: calc(var(--BTN-FONT-SIZE) * var(--line-height-normal) + 22px);
    text-align: center;
    color: inherit;
    background-color: #fff0;
    border: 1px solid var(--text);
    border-radius: min(var(--RADIUS), 20px);
    transition: color 0.5s cubic-bezier(0.215,0.61,0.355,1),background 0.5s cubic-bezier(0.215,0.61,0.355,1),border 0.5s cubic-bezier(0.215,0.61,0.355,1)
}

.radio__fieldset .radio__button label:hover,.radio__fieldset .radio__button label:active,.radio__fieldset .radio__button label:focus {
    background: var(--text);
    color: var(--bg)
}

@media (hover: none) and (pointer:coarse) {
    .radio__fieldset .radio__button label:hover {
        background:#fff0;
        color: inherit
    }

    .radio__fieldset .radio__button label:active {
        background: var(--text);
        color: var(--bg)
    }
}

.radio__fieldset .radio__button input:disabled+label,.radio__fieldset .radio__button input.disabled+label,.radio__fieldset .radio__button input.sold-out+label,.radio__fieldset .radio__button input.unavailable+label {
    background-color: var(--text-a5);
    color: var(--text-a35);
    border-color: var(--text-a35)
}

.radio__fieldset .radio__button input:checked~label {
    background: var(--text);
    color: var(--bg)
}

.radio__fieldset .radio__buttons {
    margin: -4px
}

.radio__fieldset--swatches .radio__buttons {
    margin: 0 -2px
}

.radio__fieldset--swatches native-scrollbar {
    width: 100%
}

.radio__fieldset--swatches .swatch__button,.radio__button {
    padding: 4px;
    margin: 0;
    vertical-align: middle
}

.radio__fieldset--swatches.is-visible {
    visibility: visible;
    opacity: 1;
    pointer-events: auto
}

.radio__fieldset--swatches.is-visible .swatch__button {
    animation: fadeIn 0.5s var(--animation-delay) both
}

.radio__fieldset--swatches.is-visible+.product-item__swatches__count {
    opacity: 0;
    visibility: hidden;
    pointer-events: none
}

.radio__fieldset--variant-option-image .radio__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 10px
}

.radio__fieldset--variant-option-image .radio__button label {
    display: grid;
    grid-template-columns: 60px minmax(0,1fr);
    align-content: center;
    justify-items: center;
    min-height: 100%;
    gap: 10px
}

.radio__fieldset--variant-option-image .option-image,.radio__fieldset--variant-option-image .option-title {
    display: flex;
    align-items: center
}

.radio__fieldset--variant-option-image .option-image {
    height: 60px;
    border-radius: var(--radius);
    overflow: hidden
}

.radio__fieldset--variant-option-image .option-image img.fit-cover {
    object-fit: contain
}

.radio__fieldset--variant-option-image .option-title {
    margin-right: calc(var(--BTN-LETTER-SPACING) * -1)
}

.radio__fieldset--variant-option-image-inline img {
    width: 60px;
    height: auto
}

.radio__fieldset--variant-option-image-stacked .radio__button label {
    grid-template-columns: minmax(0,1fr)
}

.radio__fieldset--pgi {
    --bg: var(--COLOR-BG);
    --bg-arrow: var(--COLOR-BG);
    display: block;
    padding: var(--form-margin) 0;
    visibility: hidden;
    opacity: 0;
    min-width: 0;
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    padding: 0 calc(var(--inner) / 2);
    background-color: var(--bg);
    transition: opacity 0.3s ease,visibility 0.3s
}

.radio__fieldset--pgi .radio__button label {
    padding: 5px;
    font-size: var(--font-body-x-small);
    line-height: 26px
}

.radio__fieldset--pgi .radio__legend__label {
    font-size: var(--font-body-x-small);
    padding-right: 0;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.1em
}

.radio__fieldset--pgi .radio__legend__label p {
    text-align: center;
    width: 100%
}

.radio__fieldset--pgi .swatch__button {
    padding: 5px 0;
    margin: 0 5px;
    cursor: pointer
}

.radio__fieldset--pgi .swatch__button input:checked~label {
    margin: 0
}

.radio__fieldset--pgi .swatch__button input:checked+label::after {
    border-color: var(--border)
}

.radio__fieldset--pgi .radio__fieldset__arrow {
    pointer-events: initial
}

.radio__fieldset__arrow {
    --icon-size: 24px;
    display: flex;
    align-items: center;
    position: relative;
    z-index: 1;
    width: 10px;
    height: 100%;
    min-height: inherit;
    margin: 0;
    padding: 0;
    border-radius: 0;
    box-shadow: none;
    transition: opacity 0.2s ease;
    pointer-events: auto
}

.radio__fieldset__arrow::before {
    content: "";
    position: absolute;
    top: 0;
    width: 12px;
    height: 100%
}

@media only screen and (max-width: 749px) {
    .radio__fieldset__arrow::before {
        width:24px
    }
}

.radio__fieldset__arrow .icon {
    position: relative;
    flex: 1 0 var(--icon-size)
}

.radio__fieldset__arrow--prev {
    left: 0;
    justify-content: flex-start
}

.radio__fieldset__arrow--prev .icon {
    margin-left: -8px
}

@media only screen and (max-width: 749px) {
    .radio__fieldset__arrow--prev .icon {
        margin-left:0
    }
}

.radio__fieldset__arrow--prev::before {
    left: 3px;
    background: linear-gradient(to right,var(--bg-arrow) 50%,transparent 100%)
}

.radio__fieldset__arrow--next {
    right: 0;
    justify-content: flex-end
}

.radio__fieldset__arrow--next .icon {
    margin-right: -8px
}

@media only screen and (max-width: 749px) {
    .radio__fieldset__arrow--next .icon {
        margin-right:0
    }
}

.radio__fieldset__arrow--next::before {
    right: 3px;
    background: linear-gradient(to left,var(--bg-arrow) 50%,transparent 100%)
}

.selector-wrapper__actions {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    padding: 0;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: var(--swatch-size);
    min-height: 36px;
    pointer-events: none
}

.selector-wrapper__scrollbar {
    display: block;
    position: relative;
    margin: -5px;
    padding: 5px;
    width: calc(100% + 10px);
    white-space: nowrap;
    overflow-y: hidden;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.selector-wrapper__scrollbar::-webkit-scrollbar {
    display: none
}

.swatch__button {
    --swatch-default: #CCC;
    --swatch-outline-offset: 3px;
    display: inline-block;
    padding: 5px 0;
    margin: 0 10px 10px 0;
    position: relative;
    z-index: 0;
    pointer-events: initial
}

.swatch__button[style*="rgb(255 255 255)" i] input~label,.swatch__button[style*="#FFFFFF" i] input~label {
    box-shadow: inset 0 0 0 1px rgb(0 0 0 / 0.1)
}

.swatch__button--empty {
    border: 1px dashed var(--text)
}

.swatch__button.sale::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    margin-top: 4px;
    background-color: var(--COLOR-SALE);
    transform: translateX(-50%)
}

.swatch__button input,.radio__button input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    width: 0;
    height: 0;
    margin: 0;
    overflow: hidden;
    pointer-events: none;
    display: block
}

.selector-wrapper fieldset label {
    margin-top: unset
}

.swatch__button .sibling__link,.swatch__button .swatch__link,.swatch__button input~label {
    display: block;
    position: relative;
    margin: 0;
    background: var(--swatch,var(--swatch-default));
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    overflow: hidden
}

.swatch__button .sibling__link::after,.swatch__button input~label::after {
    content: "";
    box-sizing: border-box;
    position: absolute;
    z-index: -1;
    background: var(--swatch,var(--swatch-default)) no-repeat center center/cover;
    overflow: initial;
    transition: opacity 0.3s ease,transform 0.3s ease;
    transform: scale(0.95)
}

.swatch__button .sibling__link::after,.swatch__button input~label::after {
    opacity: 0
}

.sibling__link--current {
    cursor: default;
    pointer-events: none
}

.swatch__button .sibling__link--current,.swatch__button input:checked~label {
    overflow: initial;
    box-shadow: 0 0 0 2px var(--bg)
}

.swatch__button .sibling__link--current .image-wrapper {
    box-shadow: 0 0 0 2px var(--COLOR-BG)
}

.swatch__button .sibling__link--current::after,.swatch__button input:checked~label::after {
    opacity: 1;
    transform: translateZ(0);
    overflow: hidden
}

.swatch__button .sibling__link--sold-out::before,.swatch__button input.sold-out~label::before,.swatch__button input.unavailable~label::before,.swatch__button input:disabled+label::before,.swatch__button input.visually-disabled+label::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    width: 1px;
    background-color: var(--text-dark);
    transform-origin: left top
}

.is-loading .sibling__link,.is-loading .swatch__button {
    pointer-events: none
}

.swatch-white input~label,.swatch-white .sibling__link,.swatch-white .swatch__link,[data-swatch=White] {
    --swatch: #FAFAFA;
    box-shadow: inset 0 0 0 1px var(--border)
}

.swatch-white input~label::after,.swatch-white .sibling__link::after,.swatch-white .swatch__link::after,[data-swatch=White]::after {
    background: #fff0;
    border: 1px solid var(--border)
}

.swatch__button input.sold-out~label[data-swatch=black i]::before,.swatch__button input.unavailable~label[data-swatch=black i]::before,.swatch__button input:disabled~label[data-swatch=black i]::before {
    background-color: #FFF
}

.swatch__button input.sold-out~label[data-swatch=white i]::before,.swatch__button input.unavailable~label[data-swatch=white i]::before,.swatch__button input:disabled~label[data-swatch=white i]::before {
    background-color: var(--text-dark)
}

.swatch__button--circle .sibling__link,.swatch__button--circle .swatch__link,.swatch__button--circle input~label {
    height: var(--swatch-size);
    width: var(--swatch-size);
    border-radius: 50%;
    background: var(--swatch,var(--swatch-default));
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center
}

.swatch__button--circle .sibling__link::after,.swatch__button--circle input~label::after {
    top: calc(var(--swatch-outline-offset) * -1);
    left: calc(var(--swatch-outline-offset) * -1);
    width: calc(var(--swatch-size) + var(--swatch-outline-offset) * 2);
    height: calc(var(--swatch-size) + var(--swatch-outline-offset) * 2);
    border-radius: 50%
}

.swatch__button--circle .sibling__link--sold-out::before,.swatch__button--circle input.sold-out~label::before,.swatch__button--circle input.unavailable~label::before,.swatch__button--circle input:disabled+label::before,.swatch__button--circle input.visually-disabled+label::before {
    height: var(--swatch-size);
    transform: rotate(-45deg) translate(-50%,-50%)
}

.swatch__button--square input~label,.swatch__button--square .sibling__link,.swatch__button--square .swatch__link {
    height: var(--swatch-size);
    width: var(--swatch-size)
}

.swatch__button--square .sibling__link::after,.swatch__button--square input~label::after {
    top: calc(var(--swatch-outline-offset) * -1);
    left: calc(var(--swatch-outline-offset) * -1);
    height: calc(var(--swatch-size) + var(--swatch-outline-offset) * 2);
    width: calc(var(--swatch-size) + var(--swatch-outline-offset) * 2)
}

.swatch__button--square input:checked~label {
    margin: 0
}

.swatch__button--square .sibling__link--current {
    height: var(--swatch-size);
    width: var(--swatch-size);
    margin: 0
}

.swatch__button--square .sibling__link--sold-out::before,.swatch__button--square input.sold-out~label::before,.swatch__button--square input.unavailable~label::before,.swatch__button--square input:disabled+label::before,.swatch__button--square input.visually-disabled+label::before {
    transform: rotate(-45deg) translate(-50%,-50%);
    height: calc(1.375 * var(--swatch-size))
}

.is-focused .swatch__button:focus-within,.is-focused .radio__button:focus-within {
    outline: 5px auto var(--accent)
}

.grid .no-results:first-child {
    grid-column: 1/-1
}

.product-item {
    position: relative;
    scroll-snap-align: start
}

.tabs-collections .product-item .grid__heading-holder {
    overflow: hidden
}

.product-item .badge-box-container {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    position: absolute;
    top: 0;
    max-width: 100%;
    z-index: 3
}

.product-item--card {
    --bg: var(--COLOR-BG-ACCENT);
    --text: var(--COLOR-TEXT);
    background: var(--bg);
    color: var(--text)
}

.product-item--card .radio__fieldset--pgi {
    --bg: var(--COLOR-BG-ACCENT);
    --bg-arrow: var(--COLOR-BG-ACCENT)
}

@media only screen and (min-width: 750px) {
    .product-item--swatches:not(.product-item--overlay-text) .product-item__info {
        padding-bottom:calc((var(--inner) / 2) - 8px)
    }
}

.badge-box {
    --padding-vertical: 0.438rem;
    --text: var(--COLOR-BADGE-TEXT);
    --bg: var(--COLOR-BADGE-BG);
    font-size: var(--FONT-SIZE-BADGE);
    font-family: var(--BTN-FONT-STACK);
    font-style: var(--BTN-FONT-STYLE);
    font-weight: var(--BTN-FONT-WEIGHT);
    text-align: center;
    padding: var(--padding-vertical) 15px;
    width: auto;
    max-width: 100%;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    border-radius: var(--btn-radius);
    color: var(--text);
    background: var(--bg)
}

@media only screen and (max-width: 749px) {
    .badge-box {
        --padding-vertical:6px
    }
}

.badge--small .badge-box {
    font-size: var(--BTN-SIZE-SMALL)
}

.badge--large .badge-box {
    font-size: var(--BTN-SIZE-LARGE)
}

.badge-box-container {
    padding: 5px
}

.badge-box-container.align--top-left,.badge-box-container.align--bottom-left {
    align-items: flex-start;
    right: auto
}

.badge-box-container.align--bottom-left,.badge-box-container.align--bottom-center,.badge-box-container.align--bottom-right {
    top: auto;
    bottom: 0;
    flex-wrap: wrap-reverse
}

.badge-box-container.align--top-right,.badge-box-container.align--bottom-right {
    align-items: flex-end;
    left: auto;
    right: 0
}

.badge-box-container.align--top-center,.badge-box-container.align--bottom-center {
    width: 100%
}

.sale-box {
    --text: var(--COLOR-SALE-TEXT);
    --bg: var(--COLOR-SALE-BG)
}

.sold-box {
    --text: var(--COLOR-SOLD-TEXT);
    --bg: var(--COLOR-SOLD-BG)
}

.new-box {
    --text: var(--COLOR-NEW-BADGE-TEXT);
    --bg: var(--COLOR-NEW-BADGE-BG)
}

.preorder-box {
    --text: var(--COLOR-PREORDER-TEXT);
    --bg: var(--COLOR-PREORDER-BG)
}

@media only screen and (min-width: 750px) {
    .product-item--featured {
        min-height:100%;
        align-self: stretch
    }

    .product-item--featured .grid__heading-holder {
        width: 100%;
        min-height: 100%
    }

    .product-item--full {
        display: flex
    }

    .flickity-enabled .product-item--full,.flickity-enabled .product-item--full .grid__heading-holder {
        min-height: 0;
        height: 100%
    }
}

@media only screen and (max-width: 749px) {
    .product-item--featured .grid__heading-holder {
        min-height:100%
    }
}

@media only screen and (max-width: 479px) {
    .product-item--featured .grid__heading-holder {
        padding-top:var(--PRODUCT-GRID-ASPECT-RATIO)
    }
}

.product-item--featured .grid__heading-holder {
    flex: 1 1 auto;
    margin-bottom: 0;
    color: var(--text)
}

.product-item--featured .grid__content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 11;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: var(--inner);
    overflow-wrap: anywhere
}

.product-item--featured .grid__heading-text {
    flex: 1;
    display: flex;
    align-items: flex-end;
    width: 100%
}

.product-item--featured .grid__heading-actions {
    margin-top: auto
}

.product-item--featured .grid__heading-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10
}

.product-item--aligned {
    height: auto;
    align-self: flex-start
}

.product-item--aligned .grid__heading-holder {
    padding: var(--PRODUCT-GRID-ASPECT-RATIO) 0 0;
    height: 0;
    min-height: 1px
}

.product-item__swatches__holder {
    display: flex;
    min-height: calc(var(--font-body-small) * 1.4 + 16px);
    position: relative;
    margin: 0 calc((var(--inner) / 2) * -1);
    padding: 0;
    font-size: 0;
    z-index: 2
}

@media only screen and (max-width: 749px) {
    .product-item__swatches__holder {
        margin:0 -12px
    }
}

.product-item__swatches__count {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    display: block;
    padding: 8px calc(var(--inner) / 2);
    font-size: var(--font-body-small);
    color: var(--text-light);
    font-style: italic;
    transition: opacity 0.3s ease,visibility 0.3s
}

.product-item__swatches__holder--slider .product-item__swatches__count,.product-item__swatches__holder--text-slider .product-item__swatches__count {
    cursor: pointer
}

.product-item__swatches__holder--grid .selector-wrapper__scrollbar {
    display: flex;
    flex-wrap: wrap
}

.product-item__swatches__holder--limited .selector-wrapper__scrollbar {
    display: flex;
    align-items: center;
    flex-wrap: wrap
}

.product-item__swatches__holder--limited .selector-wrapper__scrollbar .swatch-limited {
    padding-left: 5px
}

@media only screen and (max-width: 749px) {
    .product-item__swatches__holder--limited [data-mobile-columns-small=true],.product-item__swatches__holder--slider [data-mobile-columns-small=true],.product-item__swatches__holder--grid [data-mobile-columns-small=true] {
        display:flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap
    }
}

.product-item--centered .product-item__swatches__holder--grid .selector-wrapper__scrollbar,.product-item--centered .product-item__swatches__holder--limited .selector-wrapper__scrollbar,.product-item--centered .radio__fieldset--pgi {
    justify-content: center
}

.swatch-limited {
    font-size: var(--font-body-small)
}

@media only screen and (max-width: 749px) {
    .product-item__swatches__holder .swatch-limited.desktop {
        display:none
    }

    .product-item__swatches__holder--limited grid-swatch>tooltip-component:nth-of-type(n+4),.product-item__swatches__holder--limited [data-sibling-inner]>tooltip-component:nth-of-type(n+4) {
        display: none
    }

    .product-item__swatches__holder--limited .swatch-limited.mobile {
        display: inline-flex
    }

    .product-item__swatches__holder--slider grid-swatch>tooltip-component:nth-of-type(n+4),.product-item__swatches__holder--slider [data-sibling-inner]>tooltip-component:nth-of-type(n+4) {
        display: none
    }

    .product-item__swatches__holder--slider .swatch-limited.mobile {
        display: inline-flex
    }

    .product-item__swatches__holder--grid grid-swatch>tooltip-component:nth-of-type(n+4),.product-item__swatches__holder--grid [data-sibling-inner]>tooltip-component:nth-of-type(n+4) {
        display: none
    }

    .product-item__swatches__holder--grid .swatch-limited.mobile {
        display: inline-flex
    }

    .product-item__swatches__holder--text-slider .swatch-limited.mobile {
        display: none
    }
}

@media only screen and (min-width: 750px) {
    .product-item__swatches__holder .swatch-limited.desktop {
        display:inline-flex
    }

    .product-item__swatches__holder .swatch-limited.mobile {
        display: none
    }
}

.product-link {
    --link: var(--text-dark);
    --link-hover: var(--text-a80);
    display: block;
    height: 100%
}

.product-item__image {
    display: block;
    padding-top: var(--PRODUCT-GRID-ASPECT-RATIO);
    height: 0;
    position: relative;
    overflow: hidden
}

.product-item__image:not(.image--empty) {
    background: var(--bg)
}

@media only screen and (max-width: 749px) {
    .predictive-search .product-item__image {
        height:100%
    }
}

.product-item__image:only-child {
    border-bottom: none
}

.is-focused .product-item__image {
    overflow: visible
}

.product-item__image.is-visible {
    overflow: visible;
    z-index: 12
}

.product-item__image .product-link {
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.product-item--featured-image .product-item__image {
    height: 100%
}

.has-line-design .product-item--featured-image .product-item__image {
    border-bottom: 0
}

.product-item__image .svg-placeholder {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.product-item--overlay-text .product-item__image {
    border-bottom: 0
}

.has-line-design .product-item__image {
    border-bottom: 1px solid var(--border)
}

@media only screen and (max-width: 749px) {
    .has-line-design .predictive-search .product-item__image {
        border-bottom:0;
        border-right: 1px solid var(--border)
    }
}

.product-item--featured-image {
    color: var(--text)
}

.product-item__image-overlay {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 11;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px
}

.product-item__image-overlay::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: var(--overlay-bg)
}

.product-item__image-content {
    position: relative;
    width: 100%;
    text-align: center;
    overflow-wrap: anywhere
}

.product-item__image-content .btn,.product-item__image-content .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .product-item__image-content .shopify-payment-button__button--unbranded,.product-item__image-content #challenge .shopify-challenge__button,#challenge .product-item__image-content .shopify-challenge__button {
    margin-top: 1em
}

.product-item__image-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.product-item__bg__inner,.product-item__bg__sibling,.product-item__bg {
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    overflow: hidden;
    line-height: 0
}

.product-item__bg,.product-item__bg__under {
    position: absolute;
    top: -1px;
    right: -1px;
    bottom: -1px;
    left: -1px;
    width: auto;
    height: auto
}

.product-item__bg__under {
    z-index: 1;
    background: var(--bg);
    line-height: 0;
    overflow: hidden;
    transition: opacity 0.25s ease-in-out;
    height: calc(100% + 2px)
}

.product-item__bg__under iframe {
    pointer-events: none
}

.product-item__bg__slide {
    width: 100%;
    height: 100%
}

.flickity-enabled>.product-item__bg__slide {
    display: none
}

.product-item__bg__slide.deferred-media {
    position: absolute
}

.product-item__bg.is-fade {
    animation: fake-fade 0.25s ease-in-out;
    animation-fill-mode: forwards
}

@keyframes fake-fade {
    0% {
        opacity: 1
    }

    50% {
        opacity: 0.8
    }

    100% {
        opacity: 1
    }
}

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

    100% {
        opacity: 0
    }
}

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

    100% {
        opacity: 1
    }
}

.product-item__bg__inner,.product-item__bg__sibling {
    opacity: 0;
    visibility: hidden;
    background: var(--bg);
    transition: opacity 0.3s ease,visibility 0.3s
}

.product-item__bg__inner.is-visible,.product-item__bg__sibling.is-visible {
    opacity: 1;
    visibility: unset
}

.product-item__bg__sibling img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    object-fit: cover;
    animation: image-fade-out 0.3s ease;
    animation-fill-mode: forwards;
    background: var(--bg);
    z-index: 1
}

.product-item__bg__sibling img.is-fade {
    animation: image-fade-in 0.3s ease;
    animation-fill-mode: forwards;
    z-index: 2
}

.product-item__bg:has(.product-item__bg__inner.is-visible)>figure {
    opacity: 0;
    transition: opacity 0.3s ease
}

.product-item--centered .product-information {
    text-align: center
}

.product-item--centered .product-item__title {
    margin-bottom: 4px
}

.product-item--centered .product-item__price__holder {
    justify-content: center
}

.product-item--left .radio__fieldset--swatches .swatch__button {
    margin: 0 10px 0 0
}

.product-item--left .radio__fieldset--swatches .swatch__button:last-child {
    margin-right: 0
}

.product-item__price__holder {
    color: var(--text-light);
    overflow: hidden
}

.product-item__title {
    position: relative;
    font-weight: var(--FONT-WEIGHT-BODY);
    color: inherit;
    margin: 0;
    transition: color 0.3s
}

@media only screen and (max-width: 749px) {
    .product-item__title {
        margin:0
    }
}

.product-item__cutline,.product-item__price {
    overflow-wrap: break-word
}

.product-item__cutline {
    display: block;
    margin-bottom: 4px;
    color: var(--text-light)
}

.has-siblings .product-item__cutline {
    flex: 0 1 auto;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 0
}

.product-item__cutline:empty {
    display: none
}

.product-item__price {
    flex: 0 1 auto
}

.product-item__price .unit {
    font-size: var(--font-body-x-small)
}

.product-item.is-active .image--empty {
    transition: opacity 0.25s
}

.product-item.is-active:hover .image--empty {
    opacity: 0
}

.product-information {
    text-align: left;
    line-height: 1.4
}

@media only screen and (max-width: 749px) {
    .product-information {
        line-height:1.2
    }
}

.product-item__info {
    padding: calc(var(--inner) / 2) var(--inner)
}

@media only screen and (max-width: 749px) {
    .product-item__info {
        padding:12px
    }
}

.product-item__info.no-events {
    pointer-events: none
}

@media (hover: none) and (pointer:coarse) {
    .product-item__info.no-events {
        pointer-events:initial
    }
}

.product-information .price {
    font-size: inherit;
    color: var(--text-light)
}

@media only screen and (max-width: 749px) {
    .product-information .price {
        margin-top:5px
    }
}

.product-information .price.sale {
    opacity: 1
}

.product-information .price small {
    font-size: inherit
}

.product-information .unit {
    color: var(--text-light);
    font-size: var(--font-body-x-small)
}

.product-information .item-type {
    color: var(--text-dark)
}

.product-information .sold-out {
    color: var(--text-light)
}

.sale .new-price {
    color: var(--COLOR-SALE)
}

.new-price {
    margin-right: 6px
}

.new-price:last-child {
    margin-right: 0
}

.old-price {
    --text: var(--text-dark);
    text-decoration: line-through
}

.no-results {
    position: static;
    padding: var(--gutter) 30px;
    text-align: center;
    width: 100%
}

.product-item--overlay-text .radio__fieldset__arrow--prev::before,.product-item--overlay-text .radio__fieldset__arrow--next::before {
    content: none
}

.product-item--overlay-text .product-information {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding-bottom: calc(var(--inner) / 2);
    overflow: hidden;
    pointer-events: none
}

@media only screen and (max-width: 989px) {
    .product-item--overlay-text .product-information {
        padding-left:42px;
        padding-right: 42px
    }
}

@media only screen and (max-width: 749px) {
    .product-item--overlay-text .product-information {
        padding-left:calc(var(--inner) / 2);
        padding-right: calc(var(--inner) / 2)
    }
}

.product-item--overlay-text .product-item__info {
    padding: 0 var(--inner);
    height: auto;
    pointer-events: all
}

.has-line-design .product-item--overlay-text .product-item__image {
    border-bottom: none
}

.product-item--overlay-text .product-item__info .product-link {
    height: auto
}

@media only screen and (max-width: 749px) {
    .product-item--overlay-text .product-item__info .product-link {
        position:relative;
        z-index: 2
    }
}

.product-item--overlay-text .product-item__swatches__holder,.product-item--overlay-text .product-item__swatches__count,.product-item--overlay-text .radio__fieldset--swatches {
    pointer-events: all
}

.product-item--overlay-text .product-item__info .radio__fieldset--swatches {
    background: none
}

.product-item--overlay-text .product-item__info .selector-wrapper__actions::before,.product-item--overlay-text .product-item__info .selector-wrapper__actions::after {
    content: none
}

.supports-touch .product-item--overlay-text .product-information {
    padding-left: 42px;
    padding-right: 42px
}

@media only screen and (max-width: 749px) {
    .supports-touch .product-item--overlay-text .product-information {
        padding-left:calc(var(--inner) / 2);
        padding-right: calc(var(--inner) / 2)
    }
}

.product-item--has-quickbuy.product-item--overlay-text .product-item__info {
    pointer-events: auto;
    transition: opacity 0.25s ease-in-out,visibility 0.25s
}

.product-item--has-quickbuy.product-item--overlay-text .product-item__swatches__holder,.product-item--has-quickbuy.product-item--overlay-text .product-item__swatches__count,.product-item--has-quickbuy.product-item--overlay-text .radio__fieldset--swatches {
    pointer-events: none
}

@media only screen and (min-width: 750px) {
    .product-item--has-quickbuy.product-item--overlay-text:hover .product-item__info {
        opacity:0;
        visibility: hidden
    }
}

.no-touch .double__image hover-images,.no-touch .product-item--overlay-text hover-images {
    opacity: 0
}

.no-touch .double__image:hover hover-images,.no-touch .product-item--overlay-text:hover hover-images {
    opacity: 1
}

.no-touch .double__image.is-visible hover-images {
    opacity: 1
}

.no-touch .double__image.is-visible:hover hover-images {
    opacity: 0
}

.no-touch body.is-focused .double__image .product-link--image:focus hover-images {
    opacity: 1
}

.no-touch body.is-focused .double__image.is-visible hover-images {
    opacity: 0
}

.no-touch body.is-focused .double__image.is-visible .product-link--image:focus hover-images {
    opacity: 1
}

hover-images {
    --slides-count: 10;
    --slider-index: 0
}

.supports-touch hover-images .product-item__bg__slider {
    display: flex;
    flex-flow: row nowrap;
    width: 100%;
    height: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -ms-overflow-style: none;
    -webkit-user-select: none;
    user-select: none;
    -webkit-user-drag: none
}

.supports-touch hover-images .product-item__bg__slider::-webkit-scrollbar {
    display: none
}

.supports-touch hover-images .product-item__bg {
    opacity: 0;
    visibility: hidden
}

.supports-touch hover-images .product-item__bg__slide {
    min-width: 100%;
    scroll-snap-align: start
}

.supports-touch hover-images .product-item__bg__slide.deferred-media {
    position: relative
}

.supports-touch hover-images::after {
    content: "";
    position: absolute;
    z-index: 1;
    left: 0;
    bottom: 1px;
    width: 100%;
    height: 2px;
    background: var(--text);
    transform: scaleX(calc(1 / var(--slides-count, 1))) translateX(calc(var(--slider-index, 1) * 100%));
    transform-origin: left center;
    border-radius: var(--RADIUS)
}

@media only screen and (min-width: 750px) {
    .supports-touch hover-images::after {
        bottom:auto;
        top: 1px
    }
}

.no-touch hover-images .flickity-viewport {
    height: 100%
}

.no-touch hover-images .product-item__bg__slider {
    height: 100%
}

.no-touch hover-images .product-item__bg__slider::after {
    content: "flickity";
    display: none
}

.no-touch hover-images .product-item__bg__slider:not(.flickity-enabled) .product-item__bg__slide:not([data-hover-slide]) {
    display: none
}

.no-touch hover-images .flickity-prev-next-button {
    --inner: 5px;
    background: none;
    box-shadow: none
}

.no-touch hover-images .flickity-prev-next-button::after {
    content: none
}

.no-touch hover-images .flickity-prev-next-button.previous {
    left: var(--inner)
}

.no-touch hover-images .flickity-prev-next-button.next {
    right: var(--inner)
}

.product-item__recently-viewed {
    font-size: 0.75em;
    color: var(--text-light);
    text-transform: uppercase
}

product-info,product-sticky {
    display: block
}

@media only screen and (min-width: 750px) {
    .product__page {
        display:grid;
        grid-template-columns: repeat(2,minmax(0,1fr))
    }

    .product__wrapper--small .product__page {
        grid-template-columns: 37.5% 50%;
        gap: var(--gap);
        justify-content: flex-end
    }

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

.product__page .form__wrapper.is-sticky {
    position: sticky;
    top: var(--sticky-top,0);
    z-index: 10
}

@media only screen and (max-width: 749px) {
    .product__page .form__wrapper.is-sticky {
        position:static;
        top: 0
    }
}

.product__wrapper {
    margin: 0 var(--outer)
}

.product__wrapper .select-popout__toggle::before {
    border-color: var(--text)
}

.product__wrapper:has(.wrapper),.product__wrapper:has(.wrapper--full-padded) {
    margin: 0
}

.product__wrapper__inner {
    max-width: 1400px;
    margin: 0 auto
}

.product__wrapper--stretch .product__wrapper__inner {
    max-width: none
}

@media only screen and (min-width: 750px) {
    .product__wrapper--stretch .product__thumbs {
        display:none
    }
}

.product__images {
    --gap: 15px;
    display: block
}

@media only screen and (min-width: 750px) {
    .product__content {
        padding-left:var(--outer)
    }
}

body:has([data-header-transparent]):has(.main-content>.shopify-section.section-overlay-header:first-of-type) .product__content {
    padding-top: var(--header-height,0)
}

body:has([data-header-transparent]):has(.main-content>.shopify-section.section-overlay-header:first-of-type):has(.index-product) .product__content {
    padding-top: 0
}

@media only screen and (min-width: 990px) {
    body:has([data-header-transparent]):has(.main-content>.shopify-section.section-overlay-header:first-of-type) .shopify-section.section-overlay-header:first-of-type .product__images {
        margin-top:calc(var(--PT) * -1)
    }
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    body:has([data-header-transparent]):has(.main-content>.shopify-section.section-overlay-header:first-of-type).shopify-section.section-overlay-header:first-of-type .product__images {
        margin-top:calc(var(--PT) * -0.8)
    }
}

@media only screen and (max-width: 749px) {
    body:has([data-header-transparent]):has(.main-content>.shopify-section.section-overlay-header:first-of-type) .product__images {
        margin-top:calc(var(--PT) * -0.6)
    }

    body:has([data-header-transparent]):has(.main-content>.shopify-section.section-overlay-header:first-of-type):has(.index-product) .product__images {
        margin-top: 0
    }
}

@media only screen and (min-width: 750px) {
    .product__wrapper--stretch .product__images {
        margin-left:var(--outer-offset)
    }
}

@media only screen and (min-width: 990px) {
    .product__wrapper--grid-1 .product__slides,.product__wrapper--grid-2 .product__slides {
        columns:2;
        column-gap: var(--gap)
    }
}

@media only screen and (min-width: 750px) {
    .product__wrapper--grid-1 .product__slide,.product__wrapper--grid-2 .product__slide,.product__wrapper--stacked .product__slide {
        padding-bottom:var(--gap);
        break-inside: avoid;
        position: relative
    }

    .product__wrapper--grid-1 .product__slide:last-child,.product__wrapper--grid-2 .product__slide:last-child,.product__wrapper--stacked .product__slide:last-child {
        padding-bottom: 0
    }
}

@media only screen and (min-width: 750px) {
    .product__wrapper--grid-1 .product__thumbs,.product__wrapper--grid-2 .product__thumbs,.product__wrapper--stacked .product__thumbs {
        display:none
    }
}

.product__wrapper--grid-1 .product__slide:first-child,.product__wrapper--grid-2 .product__slide:only-child {
    column-span: all
}

.product__slides {
    display: block;
    position: relative;
    font-size: 0;
    flex: 1 1 100%;
    transition: height 0.3s ease
}

@media only screen and (max-width: 749px) {
    .product__slides {
        margin-bottom:10px
    }
}

@media only screen and (min-width: 750px) {
    [data-fader-desktop] .product__slides {
        height:var(--height,auto)
    }

    [data-fader-desktop] .product__slides:active {
        cursor: grabbing
    }
}

@media only screen and (max-width: 749px) {
    [data-fader-mobile] .product__slides {
        height:var(--height,auto)
    }
}

.product__slides .slider__arrows {
    left: 0;
    right: 0
}

.product__slides .slider__button--prev {
    left: var(--inner)
}

.product__slides .slider__button--next {
    right: var(--inner)
}

@media only screen and (min-width: 750px) {
    .product__images--thumbs .product__slides {
        position:relative;
        display: grid;
        grid-template-columns: 1fr;
        align-items: start;
        overflow: hidden
    }

    .product__images--thumbs .product__slide {
        grid-row-start: 1;
        grid-column-start: 1;
        transition: opacity 0.3s ease,visibility 0s
    }

    .product__images--thumbs .media--hidden {
        position: absolute;
        top: 0;
        left: 100%;
        width: 100%;
        opacity: 0;
        visibility: hidden;
        transition-delay: 0s,0.3s
    }

    .product__images--thumbs .media--hidden figure {
        content-visibility: hidden
    }

    .product__images--thumbs .media--hidden figure img {
        display: none
    }

    .product__images--thumbs .media--hiding {
        position: relative;
        left: 0;
        opacity: 0;
        visibility: hidden;
        transition-delay: 0s,0.3s
    }

    .product__images--thumbs .media--hiding figure {
        content-visibility: visible
    }

    .product__images--thumbs .media--hiding figure img {
        display: block
    }
}

@media only screen and (max-width: 749px) {
    .product__images--mobile-thumbs .product__slides {
        position:relative;
        display: grid;
        grid-template-columns: 1fr;
        align-items: start;
        overflow: hidden
    }

    .product__images--mobile-thumbs .product__slide {
        grid-row-start: 1;
        grid-column-start: 1;
        transition: opacity 0.3s ease,visibility 0s
    }

    .product__images--mobile-thumbs .media--hidden {
        position: absolute;
        top: 0;
        left: 100%;
        width: 100%;
        opacity: 0;
        visibility: hidden;
        transition-delay: 0s,0.3s
    }

    .product__images--mobile-thumbs .media--hidden figure {
        content-visibility: hidden
    }

    .product__images--mobile-thumbs .media--hidden figure img {
        display: none
    }

    .product__images--mobile-thumbs .media--hiding {
        position: relative;
        left: 0;
        opacity: 0;
        visibility: hidden;
        transition-delay: 0s,0.3s
    }

    .product__images--mobile-thumbs .media--hiding figure {
        content-visibility: visible
    }

    .product__images--mobile-thumbs .media--hiding figure img {
        display: block
    }
}

.product__slide {
    flex: 0 0 100%;
    scroll-snap-align: start;
    cursor: grab
}

.product__slide:only-child {
    cursor: default
}

.product__thumbs {
    display: block;
    flex: 1 1 100%;
    margin: 10px 0
}

@media only screen and (max-width: 749px) {
    .product__thumbs {
        min-height:85px
    }
}

.product__thumbs__holder {
    position: relative;
    list-style: none;
    display: flex;
    flex-flow: row nowrap;
    text-align: left;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none
}

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

@media only screen and (max-width: 749px) {
    .product__thumbs__holder {
        margin-left:var(--outer-offset);
        margin-right: var(--outer-offset);
        padding-left: var(--outer);
        scroll-padding: var(--outer);
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory
    }

    .product__thumbs__holder::after {
        content: "";
        display: block;
        position: relative;
        min-height: 1px;
        padding-right: var(--outer)
    }
}

@media only screen and (max-width: 749px) {
    .product__thumbs__holder .flickity-viewport {
        overflow:visible
    }
}

@media only screen and (min-width: 750px) {
    .product__wrapper--thumbnails-left .product__images {
        display:flex
    }

    .product__wrapper--thumbnails-left .product__thumbs__holder {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        padding-left: 10px;
        width: 100%;
        flex-flow: column;
        overflow-y: auto;
        overflow-x: hidden
    }

    .product__wrapper--thumbnails-left .product__thumbs {
        position: sticky;
        top: var(--header-sticky-height,0);
        overflow: hidden;
        order: -1;
        margin: 0 20px 0 0;
        flex: 0 0 85px;
        height: 100%;
        width: 85px
    }

    .product__wrapper--thumbnails-left .product__thumb {
        margin: 0 0 20px;
        padding: 0;
        font-size: 0
    }

    .product__wrapper--thumbnails-left .product__thumb:last-child {
        margin-bottom: 0
    }

    .product__wrapper--thumbnails-left .product__thumb::after {
        position: absolute;
        top: 50%;
        left: -10px;
        width: 2px;
        height: 30px;
        max-height: 90%;
        margin: 0;
        background: var(--border-dark);
        opacity: 0;
        pointer-events: none;
        transform: translateY(-50%);
        transition: opacity 0.2s
    }

    .product__wrapper--thumbnails-left .product__slides {
        flex: 1 1 auto
    }
}

@media only screen and (max-width: 749px) {
    .product__wrapper--thumbnails-left .product__thumbs__holder {
        position:relative;
        white-space: nowrap
    }

    .product__wrapper--thumbnails-left .product__thumbs {
        position: static;
        float: none
    }
}

.product__thumb {
    position: relative;
    display: inline-block;
    margin: 0 10px 0 0;
    padding: 0 0 10px;
    cursor: pointer
}

.product__thumb:only-child .product__thumb__link {
    cursor: default
}

.product__thumb::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    height: 2px;
    background-color: var(--border-dark);
    opacity: 0;
    transition: opacity 0.2s
}

@media only screen and (max-width: 749px) {
    .product__thumb {
        padding-bottom:10px;
        margin: 0 10px 0 0;
        scroll-snap-align: start
    }

    .product__thumb:last-child {
        margin-right: 0
    }
}

.product__thumb.is-active::after {
    opacity: 1
}

.product__thumb__link {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    width: 75px;
    height: 75px;
    font-size: 0;
    line-height: 0;
    text-align: center;
    background: var(--bg)
}

.product__thumb__link__image {
    display: inline-block;
    max-width: 100%;
    max-height: 100%;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.product__thumbs__holder .icon {
    position: absolute;
    top: 2px;
    right: 2px;
    margin: 0;
    height: 20px;
    width: 20px;
    color: #fff0;
    fill: var(--bg);
    vertical-align: baseline
}

.product__thumbs__holder .icon path {
    fill: inherit;
    stroke: inherit
}

.product__thumbs__holder .icon path.icon-media-model-outline,.product__thumbs__holder .icon path.icon-media-video-outline {
    stroke: var(--border-hairline)
}

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

.product__breadcrumbs {
    --link: var(--text);
    --link-hover: var(--text-light);
    margin: 0 0 0.5em
}

@media only screen and (min-width: 990px) {
    .form__width {
        max-width:550px;
        margin: 0 auto
    }
}

.product__block:empty {
    display: none
}

.product__complementary {
    margin-bottom: 0
}

.complementary-products {
    display: grid;
    gap: 16px;
    margin-bottom: var(--block-padding-bottom,16px)
}

.complementary-products:empty {
    margin-bottom: 0
}

.complementary-products__title {
    margin-top: 0
}

.product__title__wrapper {
    position: relative;
    padding-right: 70px;
    padding-top: 0
}

.product__title {
    margin-top: 0.5em;
    margin-bottom: 0
}

.product__title a {
    --link: var(--text)
}

@media only screen and (min-width: 750px) {
    .product__title {
        margin-top:0
    }
}

.product__subheading p:only-child {
    margin: 0
}

.product__price__wrap {
    display: flex;
    flex-direction: column;
    justify-content: flex-start
}

.product__price {
    display: flex;
    align-items: center;
    margin: 0;
    line-height: var(--line-height-normal);
    padding: 0.25rem 0
}

.product__price:not([class*=body-]) {
    font-size: var(--font-body-medium)
}

.product__price--has-units {
    margin-bottom: calc(var(--font-body-small) * var(--line-height-normal))
}

.product__price--unit {
    color: var(--text-light);
    font-size: var(--font-body-small);
    position: absolute
}

.product__price--strike {
    color: var(--text-light)
}

.product__price--sale {
    margin-right: 10px;
    color: var(--COLOR-SALE)
}

.product__price--off {
    --padding-vertical: 0.438rem;
    flex-shrink: 0;
    min-width: 0;
    background: var(--COLOR-SALE-BG);
    color: var(--COLOR-SALE-TEXT);
    padding: var(--padding-vertical) 15px;
    margin-left: 1rem;
    border-radius: var(--btn-radius);
    text-align: center;
    text-transform: uppercase;
    font-size: var(--font-body-x-small);
    font-family: var(--BTN-FONT-STACK);
    font-style: var(--BTN-FONT-STYLE);
    font-weight: var(--BTN-FONT-WEIGHT)
}

.product__price--off em {
    opacity: 0.5;
    padding: 0 6px
}

@media only screen and (max-width: 749px) {
    .product__price--off {
        --padding-vertical:6px
    }
}

.product__sale {
    align-self: flex-start
}

.product__sale,.product__final-sale-wrap {
    display: flex;
    align-items: center;
    color: var(--COLOR-SALE)
}

.product__final-sale-wrap {
    padding: 0.25em 0;
    font-size: var(--font-body-x-small);
    min-height: 30px
}

.product__final-sale {
    margin-left: 1rem
}

.product__final-sale-question {
    margin-left: 0.5rem
}

.product__final-sale-question:hover {
    cursor: help
}

.price__container {
    display: flex;
    flex-direction: column
}

.price__regular {
    display: block
}

.price__sale,.price .price__badge-sale,.price .price__badge-sold-out,.price--on-sale .price__regular {
    display: none
}

.price--sold-out .price__badge-sold-out,.price--on-sale .price__badge-sale,.volume-pricing--sale-badge .price__badge-sale {
    display: inline-block
}

.volume-pricing--sale-badge .price__badge-sale {
    margin-left: 0.5rem
}

.price--on-sale .price__sale {
    display: initial;
    flex-direction: row;
    flex-wrap: wrap
}

.price--center {
    display: initial;
    justify-content: center
}

.price--on-sale .price-item--regular {
    text-decoration: line-through;
    color: var(--text-a80)
}

.price-item--sale {
    margin-right: 10px
}

script,#recently-viewed-product-template,[id*=recently-viewed-product-template] {
    display: none!important
}

.recent__container {
    background: var(--bg)
}

.recent__content a {
    opacity: 1;
    width: auto;
    height: auto;
    display: block
}

.product__form__errors {
    opacity: 0;
    max-height: 0;
    visibility: hidden;
    overflow: hidden;
    transition: opacity 0.5s ease-in-out,transform 0.3s ease-in-out 0.2s,max-height 0.5s cubic-bezier(0,0.75,0.25,1),visibility 0.5s;
    text-align: center;
    transform: translate3d(0,-20px,0)
}

.product__form__errors.is-visible {
    max-height: 500px;
    opacity: 1;
    visibility: visible;
    transform: translate3d(0,0,0);
    transition: opacity 0.5s ease,transform 0.5s ease,max-height 0.5s cubic-bezier(0,0,0.75,0),visibility 0.5s
}

@media only screen and (max-width: 479px) {
    .product__form__errors {
        max-width:calc(400px - 10px)
    }
}

.product__form__errors .errors {
    margin: 10px 0;
    text-align: left;
    padding: 10px 30px;
    line-height: var(--line-height-normal)
}

.errors {
    position: relative;
    max-width: 100%;
    margin: 0;
    padding: 24px 30px;
    font-size: var(--font-body-small)
}

@media only screen and (max-width: 749px) {
    .errors {
        padding:15px 30px 15px 15px
    }
}

.errors__close {
    --icon-size: 24px;
    position: absolute;
    top: 50%;
    right: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    color: var(--link);
    background: #fff0;
    border-radius: var(--RADIUS);
    font-size: 0;
    text-decoration: none;
    transform: translate3d(0,-50%,0);
    transition: color 0.3s ease;
    --icon-size: 20px
}

.errors__close .icon {
    display: block;
    fill: currentcolor;
    pointer-events: none;
    will-change: transform;
    transition: transform 0.4s cubic-bezier(0.4,0,0.22,1)
}

@media (hover: hover) {
    .errors__close:hover {
        color:var(--link-hover)
    }

    .errors__close:hover .icon {
        transform: scale(1.25)
    }
}

.product__add__success {
    display: flex;
    align-items: stretch;
    background: var(--bg);
    border-left: 1px solid var(--border);
    border-bottom: 1px solid var(--border)
}

@media only screen and (max-width: 749px) {
    .product__add__success {
        border-left:none
    }
}

.product__add__success__image {
    width: 50%
}

@media only screen and (max-width: 749px) {
    .product__add__success__image {
        display:none
    }
}

.product__add__success__image-bg {
    height: 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat
}

.product__add__success__content {
    width: 50%;
    padding: 50px
}

@media only screen and (max-width: 749px) {
    .product__add__success__content {
        width:100%;
        padding: 15px 20px
    }
}

.product__add__success--hide {
    display: none
}

.is-focused model-viewer:focus::after,.is-focused video:focus::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
    box-shadow: inset 0 0 2px 2px var(--border);
    box-sizing: border-box;
    pointer-events: none
}

product-modal {
    display: flex
}

.product-modal__outer {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    max-width: 600px;
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    padding: var(--outer);
    pointer-events: none
}

dialog[open] .product-modal__outer {
    animation: heroFadeIn 0.5s ease forwards
}

dialog[closing] .product-modal__outer {
    animation: heroFadeOut 0.5s ease forwards
}

.product-modal__content {
    overflow-x: hidden;
    overflow-y: auto;
    position: relative;
    background: var(--bg);
    padding: calc(var(--inner) * 1.5) var(--inner);
    pointer-events: auto;
    max-height: 100%
}

.product-modal__content .product-tabs {
    margin-top: 5px
}

.product-modal__content .product-tabs ul.tabs>li {
    padding: 0
}

.product-modal__content .tab-content {
    padding: 0
}

.product-modal__content .product-tabs__head {
    padding: 16px 13px;
    margin: 0 -13px -13px
}

.product-modal__close {
    --icon-size: 24px;
    position: absolute;
    top: 50%;
    right: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    color: var(--link);
    background: #fff0;
    border-radius: var(--RADIUS);
    font-size: 0;
    text-decoration: none;
    transform: translate3d(0,-50%,0);
    transition: color 0.3s ease;
    top: 20px;
    right: 10px
}

.product-modal__close .icon {
    display: block;
    fill: currentcolor;
    pointer-events: none;
    will-change: transform;
    transition: transform 0.4s cubic-bezier(0.4,0,0.22,1)
}

@media (hover: hover) {
    .product-modal__close:hover {
        color:var(--link-hover)
    }

    .product-modal__close:hover .icon {
        transform: scale(1.25)
    }
}

.block__icon__container {
    display: flex;
    align-items: center
}

.block__icon__container--full {
    flex: 0 0 100%;
    max-width: 100%
}

.block__icon__container--half {
    flex: 0 0 50%;
    max-width: 50%
}

.block__icon__container--third {
    flex: 0 0 33%;
    max-width: 33%
}

@media only screen and (max-width: 479px) {
    .block__icon__container--third {
        flex:0 0 50%;
        max-width: 50%
    }
}

.block__icon__container--quarter {
    flex: 0 0 25%;
    max-width: 25%
}

@media only screen and (max-width: 479px) {
    .block__icon__container--quarter {
        flex:0 0 50%;
        max-width: 50%
    }
}

.block__icon__row {
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start
}

.block__icon {
    align-self: flex-start;
    flex: 0 0 var(--icon-size,20px);
    margin: 0 10px 0 0
}

.block__icon__text {
    flex: 0 1 100%;
    overflow-wrap: anywhere
}

.block__icon__text p {
    margin: 0
}

@media only screen and (max-width: 749px) {
    .product__images--mobile-slider .product__thumbs {
        display:none
    }

    .product__images--mobile-slider .product__slides {
        display: flex;
        flex-flow: row nowrap;
        justify-content: flex-start;
        gap: 0;
        margin-left: var(--gutter-offset);
        margin-right: var(--gutter-offset);
        padding-left: var(--gap);
        overflow-x: scroll;
        overflow-y: hidden;
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory;
        scroll-padding: var(--gap);
        scrollbar-width: none;
        -ms-overflow-style: none;
        align-items: flex-start
    }

    .product__images--mobile-slider .product__slides::-webkit-scrollbar {
        display: none
    }

    .product__images--mobile-slider .product__slides::after {
        content: "";
        display: block;
        position: relative;
        padding-right: var(--gap)
    }

    .product__images--mobile-slider .product__slide {
        flex: 0 0 auto;
        width: calc(100% - 50px);
        margin: 0 var(--gap) 0 0;
        scroll-snap-align: start
    }

    .product__images--mobile-slider .product__slide:only-child {
        width: calc(100% - var(--gap))
    }

    .product__images--mobile-slider .product__slide:last-child {
        margin-right: 0
    }

    .product__images--mobile-slider .media--hidden,.product__images--mobile-slider .media--hiding {
        position: unset;
        left: unset;
        opacity: unset;
        visibility: unset
    }

    .product__images--mobile-slider .media--hidden figure,.product__images--mobile-slider .media--hiding figure {
        content-visibility: unset
    }

    .product__images--mobile-slider .media--hidden figure img,.product__images--mobile-slider .media--hiding figure img {
        display: block
    }
}

.product__text--inline {
    display: grid;
    grid-template-columns: minmax(0,7.5rem) minmax(0,100%);
    gap: 10px
}

.product__text--inline .product__heading {
    margin: 0
}

.product__badges {
    display: flex;
    gap: 10px
}

.product__sku {
    font-size: var(--font-body-small);
    text-transform: uppercase
}

.product__popup__content {
    padding: var(--inner)
}

.product__photo {
    position: relative;
    overflow: hidden;
    height: 0;
    padding-top: calc(1 / var(--aspect-ratio, 1) * 100%);
    background: var(--bg)
}

.product__photo .image-wrapper,.product__photo .placeholder-svg {
    position: absolute;
    top: 0
}

.product__photo--blank {
    background: var(--bg-accent);
    padding-top: 100%
}

.product__photo img {
    pointer-events: none
}

zoom-images [data-zoom-image].is-dragging {
    pointer-events: none
}

zoom-images [data-zoom-image] {
    cursor: zoom-in;
    cursor: var(--ICON-ZOOM-IN),zoom-in
}

body.is-focused .product__photo:focus:after,body.is-focused .product__photo.focus-visible:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 2px solid var(--border);
    pointer-events: none;
    box-sizing: border-box;
    z-index: 2
}

.product__media iframe {
    display: block;
    width: 100%;
    height: 100%
}

.video__contain,.model__contain {
    margin: 0 auto;
    min-height: 1px;
    width: 100%;
    height: 0;
    position: relative
}

.shopify-model-viewer-ui,model-viewer,.video__contain>video,.video__contain>iframe {
    width: 100%;
    height: 100%;
    position: absolute!important;
    top: 0;
    left: 0;
    max-width: 100%;
    min-width: 100%;
    min-height: 100%
}

.btn--ar {
    width: 100%;
    position: relative;
    margin-top: 4px;
    padding: 10px 15px
}

.btn--ar[data-shopify-xr-hidden] {
    position: absolute;
    overflow: hidden;
    visibility: hidden;
    max-width: 0;
    max-height: 0;
    padding: 0;
    border: none;
    margin: 0;
    opacity: 0
}

@media only screen and (min-width: 750px) {
    .btn--ar[data-shopify-xr-hidden] {
        display:none
    }
}

.btn--ar:hover .product-single__view-in-space-text,.btn--ar:focus .product-single__view-in-space-text {
    border-bottom-color: var(--text-dark)
}

.btn--ar .icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    color: #fff0
}

.btn--ar .icon path {
    fill: inherit;
    stroke: inherit
}

.btn--ar .icon path.icon-media-model-outline {
    stroke: none
}

.btn--ar .icon path.icon-media-model-element {
    fill: var(--text-dark);
    opacity: 1
}

.product-single__view-in-space-text {
    display: inline-block;
    vertical-align: middle
}

.thumb__link--video,.thumb__link--model {
    position: relative
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area {
    background: var(--bg);
    border-color: var(--border-hairline)
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button {
    color: var(--text-a50)
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:hover {
    color: var(--text-a50)
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:active,.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control.focus-visible:focus {
    color: var(--text-a50);
    background: var(--border-hairline)
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:not(:last-child):after {
    border-color: var(--border-hairline)
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster {
    background: var(--bg);
    border-color: var(--border-hairline)
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:hover,.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:focus {
    color: var(--text-a50)
}

.deferred-media {
    display: block;
    position: relative
}

.deferred-media img,.deferred-media video,.deferred-media iframe,.deferred-media model-viewer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.deferred-media img {
    object-fit: contain
}

.deferred-media video {
    object-fit: cover
}

.deferred-media:not([loaded]) template {
    z-index: -1
}

.deferred-media[loaded]>.deferred-media__poster {
    display: none
}

.deferred-media__poster {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: default;
    padding: 0;
    letter-spacing: normal;
    line-height: initial;
    background: #fff0;
    border: 0;
    color: inherit;
    transition: none
}

.no-touch .deferred-media__poster:hover {
    opacity: initial
}

.deferred-media__poster-button {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -30px 0 0 -30px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    padding: 8px;
    background: var(--bg);
    border: 1px solid var(--text-a5);
    z-index: 1;
    cursor: pointer
}

.deferred-media__poster-button .icon-media-video-outline,.deferred-media__poster-button .icon-media-model-outline {
    stroke: none
}

.deferred-media__poster-button .icon {
    width: 100%;
    height: 100%
}

:root {
    --form-top: 10px;
    --form-left: 12px;
    --form-margin: 32px;
    --btn-height: calc(var(--btn-top) * 2 + var(--BTN-FONT-SIZE) * var(--line-height-normal) + 2px)
}

.quantity,.select-popout__toggle,.select-popout__list,.product__subs__option,.radio__button {
    font-size: var(--BTN-FONT-SIZE-BODY)
}

.is-sticky .select-popout__list {
    max-height: 175px
}

.variant__labels--hide .radio__legend__option-name,.variant__labels--hide .select__label {
    position: absolute!important;
    overflow: hidden;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    clip: rect(0 0 0 0);
    word-wrap: normal!important
}

.variant__labels--hide .radio__legend {
    display: none
}

.variant__labels--hide .radio__legend--size {
    display: block
}

.form__wrapper--classic .variant__labels--hide .select__fieldset,.form__wrapper--classic .variant__labels--hide .radio__fieldset {
    row-gap: 0
}

.variant__labels--hide .radio__legend__link {
    margin-left: 0
}

.variant__labels--hide .radio__buttons,.variant__labels--hide .select-popout {
    grid-column: 1/-1
}

.shop-pay-terms {
    --payment-terms-background-color: var(--bg);
    margin: 10px 0 0
}

.shop-pay-terms+.radio__legend__link {
    margin-bottom: 15px
}

.shop-pay-terms:empty,.product__upsell:empty,.product__bundle:empty,.product__siblings:empty {
    display: none
}

#shopify-payment-terms-modal .modal-wrapper {
    display: unset
}

.selector-wrapper {
    flex: 1 0 50%
}

.selector-wrapper label {
    font-size: var(--font-body-x-small)
}

@media only screen and (max-width: 479px) {
    .selector-wrapper {
        flex-basis:100%
    }
}

.selector-wrapper--fullwidth,.selector-wrapper--color {
    flex-basis: 100%
}

.selector-wrapper--size {
    flex-grow: 0
}

.selector-wrapper--size .radio__legend__link {
    margin-left: 4px
}

.selector-wrapper--size .radio__legend__link.text-link {
    margin-bottom: -5px
}

.variant__labels--hide .selector-wrapper--size .radio__legend__link {
    margin-left: 0
}

.price-per-item__container {
    height: 100%
}

.quantity {
    position: relative;
    height: 100%
}

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

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

.quantity__input,.properties__input {
    display: block;
    width: 100%;
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: var(--line-height-normal);
    color: var(--text-dark)
}

.properties__input {
    padding-top: var(--form-top);
    padding-bottom: var(--form-top)
}

.quantity__input {
    height: 100%;
    padding: var(--form-top) 30px;
    text-align: center
}

.quantity__plus {
    right: 0;
    justify-content: flex-end;
    padding-right: 15px
}

.quantity__minus {
    left: 0;
    justify-content: flex-start;
    padding-left: 15px
}

.quantity__plus,.quantity__minus {
    position: absolute;
    top: 0;
    height: 100%;
    width: 40%;
    display: flex;
    align-items: center
}

.quantity__plus *,.quantity__minus * {
    pointer-events: none
}

.quantity__plus .icon,.quantity__minus .icon {
    color: var(--text-dark)
}

.quantity__plus:active,.quantity__minus:active {
    transform: translateY(1px)
}

.properties__checkbox {
    grid-column: 1/span 2
}

.product__submit .btn span.btn__text,.product__submit .shopify-payment-button .shopify-payment-button__button--unbranded span.btn__text,.shopify-payment-button .product__submit .shopify-payment-button__button--unbranded span.btn__text,.product__submit #challenge .shopify-challenge__button span.btn__text,#challenge .product__submit .shopify-challenge__button span.btn__text {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center
}

.product__submit .btn__price::before {
    content: "•";
    margin: 0 5px
}

.product__submit__add {
    position: relative;
    width: 100%
}

.product__submit__add .svg-loader {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 18px;
    height: 18px;
    transform: translate(-50%,-50%);
    transition: opacity 0.3s
}

.product__submit__add[disabled] {
    pointer-events: none
}

.product__submit__add circle~circle {
    stroke: currentcolor
}

.product__submit__add span {
    transition: opacity 0.3s
}

.product__submit__add .icon-nav-arrow-up {
    --icon-size: 20px;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: calc(var(--icon-size) / -2)
}

.product__submit__buttons {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px
}

@media only screen and (min-width: 480px) {
    .product__submit__buttons--inline {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}

.product__submit__item::after {
    content: none
}

.product__submit__item .btn,.product__submit__item .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .product__submit__item .shopify-payment-button__button--unbranded,.product__submit__item #challenge .shopify-challenge__button,#challenge .product__submit__item .shopify-challenge__button {
    display: flex;
    width: 100%
}

.product__submit__item--inline {
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0,7.5rem) minmax(0,100%)
}

.product__submit__item--inline .quantity__input {
    --border: var(--BTN-PRIMARY-BORDER)
}

.product__submit__item--inline .select-popout {
    height: 100%
}

.product__submit__item--inline .select-popout__toggle {
    height: 100%;
    padding-top: 5px;
    padding-bottom: 5px
}

.product__block--divider:empty {
    display: block
}

.product__block--divider+.product__block:empty+.product__block--divider {
    display: none
}

shopify-accelerated-checkout,shopify-accelerated-checkout-cart {
    --checkout-button-border-height: 1px;
    --shopify-accelerated-checkout-button-block-size: calc(var(--BTN-FONT-SIZE) * var(--line-height-normal) + 2 * var(--btn-top) + 2 * var(--checkout-button-border-height));
    --shopify-accelerated-checkout-button-border-radius: var(--btn-radius);
    --shopify-accelerated-checkout-row-gap: calc(var(--inner) / 2)
}

.btn--solid.btn--primary .shopify-payment-button__button--unbranded,.btn--solid .btn--primary.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--primary .btn--solid.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--solid .btn--primary .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--primary .btn--solid .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded {
    --btn-border: var(--BTN-PRIMARY-BG);
    --btn-bg: var(--BTN-PRIMARY-BG);
    --btn-text: var(--BTN-PRIMARY-TEXT);
    --btn-border-hover: var(--BTN-PRIMARY-BG-BRIGHTER);
    --btn-bg-hover: var(--BTN-PRIMARY-BG-BRIGHTER);
    --btn-text-hover: var(--BTN-PRIMARY-TEXT)
}

.btn--solid.btn--secondary .shopify-payment-button__button--unbranded,.btn--solid .btn--secondary.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--secondary .btn--solid.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--solid .btn--secondary .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--secondary .btn--solid .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded {
    --btn-border: var(--BTN-SECONDARY-BG);
    --btn-bg: var(--BTN-SECONDARY-BG);
    --btn-text: var(--BTN-SECONDARY-TEXT);
    --btn-border-hover: var(--BTN-SECONDARY-BG-BRIGHTER);
    --btn-bg-hover: var(--BTN-SECONDARY-BG-BRIGHTER);
    --btn-text-hover: var(--BTN-SECONDARY-TEXT)
}

.btn--solid.btn--white .shopify-payment-button__button--unbranded,.btn--solid .btn--white.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--white .btn--solid.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--solid .btn--white .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--white .btn--solid .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded {
    --btn-border: #FFF;
    --btn-bg: #FFF;
    --btn-text: #000;
    --btn-border-hover: var(--COLOR-TEXT-BTN-BG-WHITE-BRIGHTER);
    --btn-bg-hover: var(--COLOR-TEXT-BTN-BG-WHITE-BRIGHTER);
    --btn-text-hover: #000
}

.btn--solid.btn--black .shopify-payment-button__button--unbranded,.btn--solid .btn--black.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--black .btn--solid.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--solid .btn--black .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--black .btn--solid .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded {
    --btn-border: #000;
    --btn-bg: #000;
    --btn-text: #FFF;
    --btn-border-hover: var(--COLOR-TEXT-BTN-BG-BLACK-BRIGHTER);
    --btn-bg-hover: var(--COLOR-TEXT-BTN-BG-BLACK-BRIGHTER);
    --btn-text-hover: #FFF
}

.btn--outline.btn--primary .shopify-payment-button__button--unbranded,.btn--outline .btn--primary.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--primary .btn--outline.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--outline .btn--primary .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--primary .btn--outline .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded {
    --btn-border: var(--BTN-PRIMARY-BORDER);
    --btn-bg: transparent;
    --btn-text: var(--BTN-PRIMARY-BORDER);
    --btn-border-hover: var(--BTN-PRIMARY-BORDER);
    --btn-bg-hover: transparent;
    --btn-text-hover: var(--BTN-PRIMARY-BORDER)
}

.btn--outline.btn--secondary .shopify-payment-button__button--unbranded,.btn--outline .btn--secondary.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--secondary .btn--outline.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--outline .btn--secondary .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--secondary .btn--outline .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded {
    --btn-border: var(--BTN-SECONDARY-BORDER);
    --btn-bg: transparent;
    --btn-text: var(--BTN-SECONDARY-BORDER);
    --btn-border-hover: var(--BTN-SECONDARY-BORDER);
    --btn-bg-hover: transparent;
    --btn-text-hover: var(--BTN-SECONDARY-BORDER)
}

.btn--outline.btn--white .shopify-payment-button__button--unbranded,.btn--outline .btn--white.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--white .btn--outline.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--outline .btn--white .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--white .btn--outline .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded {
    --btn-border: #FFF;
    --btn-bg: transparent;
    --btn-text: #FFF;
    --btn-border-hover: #FFF;
    --btn-bg-hover: transparent;
    --btn-text-hover: #FFF
}

.btn--outline.btn--black .shopify-payment-button__button--unbranded,.btn--outline .btn--black.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--black .btn--outline.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--outline .btn--black .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,.btn--black .btn--outline .shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded {
    --btn-border: #000;
    --btn-bg: transparent;
    --btn-text: #000;
    --btn-border-hover: #000;
    --btn-bg-hover: transparent;
    --btn-text-hover: #000
}

.shopify-payment-button .shopify-payment-button__button--unbranded {
    position: relative;
    width: 100%;
    color: var(--btn-text);
    background: var(--btn-bg);
    border-color: var(--btn-border)
}

.shopify-payment-button .shopify-payment-button__button--unbranded:hover:not([disabled]) {
    color: var(--btn-text-hover);
    background: var(--btn-bg-hover);
    border-color: var(--btn-border-hover)
}

.shopify-payment-button .shopify-payment-button__more-options {
    --link: var(--text);
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    font-size: var(--font-body-small)
}

.shopify-payment-button .shopify-payment-button__more-options:active {
    text-decoration: underline;
    transform: translateY(1px)
}

.shopify-payment-button .shopify-payment-button__more-options:hover,.shopify-payment-button .shopify-payment-button__more-options:focus {
    background-color: #fff0;
    box-shadow: none
}

shopify-paypal-button {
    position: relative
}

.form__wrapper--classic .select__fieldset,.form__wrapper--classic .radio__fieldset {
    display: block
}

.form__wrapper--classic .radio__legend {
    margin-bottom: 10px
}

.variant--soldout .shopify-payment-button,.variant--soldout .product__price,.variant--unavailable .shopify-payment-button,.variant--unavailable .product__price {
    opacity: 0.3
}

.variant--soldout .shopify-payment-button label,.variant--soldout .shopify-payment-button input,.variant--soldout .shopify-payment-button button,.variant--soldout .product__price label,.variant--soldout .product__price input,.variant--soldout .product__price button,.variant--unavailable .shopify-payment-button label,.variant--unavailable .shopify-payment-button input,.variant--unavailable .shopify-payment-button button,.variant--unavailable .product__price label,.variant--unavailable .product__price input,.variant--unavailable .product__price button {
    cursor: default
}

.variant--soldout .product__submit__add:not(.product__submit__add--default):active,.variant--unavailable .product__submit__add:not(.product__submit__add--default):active {
    transform: translateY(0)
}

.variant--soldout .product__submit__add:not(.product__submit__add--default),.variant--soldout .product__submit__add:not(.product__submit__add--default):hover,.variant--unavailable .product__submit__add:not(.product__submit__add--default),.variant--unavailable .product__submit__add:not(.product__submit__add--default):hover {
    border-color: #fff0;
    background-color: var(--text-a5);
    color: var(--text-a50);
    cursor: not-allowed
}

.variant--soldout .product__submit__add:not(.product__submit__add--default)>*,.variant--soldout .product__submit__add:not(.product__submit__add--default):hover>*,.variant--unavailable .product__submit__add:not(.product__submit__add--default)>*,.variant--unavailable .product__submit__add:not(.product__submit__add--default):hover>* {
    pointer-events: none
}

@media only screen and (max-width: 749px) {
    .variant--soldout .product__submit__add:not(.product__submit__add--default),.variant--soldout .product__submit__add:not(.product__submit__add--default):hover,.variant--unavailable .product__submit__add:not(.product__submit__add--default),.variant--unavailable .product__submit__add:not(.product__submit__add--default):hover {
        transform:none;
        pointer-events: none
    }
}

.variant--soldout .shopify-payment-button,.variant--unavailable .shopify-payment-button {
    position: relative;
    pointer-events: none
}

.variant--soldout .shopify-payment-button::after,.variant--unavailable .shopify-payment-button::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #fff0;
    z-index: 2
}

.variant--unavailable .product__price {
    opacity: 0
}

.product-soldout-notification {
    display: none
}

.product-soldout-notification.has-success {
    display: block
}

.show-product-notification.variant--soldout button[name=add][disabled],.show-product-notification.variant--soldout button[data-add-to-cart][disabled],.show-product-notification.variant--soldout button[data-cart-bar-add-to-cart][disabled],.show-product-notification.variant--soldout [data-cart-bar-scroll]+.product__cart-bar-notification-button {
    display: none
}

.show-product-notification.variant--soldout .product-soldout-notification {
    display: block
}

.show-product-notification.all-variants--soldout .product__submit__add--default {
    display: none
}

.show-product-notification.all-variants--soldout .product__cart-bar-notification-button {
    display: block
}

.has-success .product__notification .product__notification__form {
    display: none
}

.has-success .product__notification .product__notification__message {
    display: block
}

.product__cart-bar-notification-button {
    display: none
}

.show-product-notification.variant--soldout .product__cart-bar-notification-button {
    display: block
}

.product-soldout-notification.has-success button[data-popup-open] {
    display: none
}

.variant--soldout .product-soldout-notification.has-success button {
    display: block
}

@media only screen and (max-width: 749px) {
    .product-modal__notification {
        height:auto
    }
}

.variant__countdown {
    font-size: var(--font-body-small);
    display: grid;
    grid-template-columns: 1fr
}

.variant__countdown .icon {
    margin-right: 10px;
    flex: 0 0 var(--icon-size,20px);
    align-self: flex-start
}

.variant__countdown>span {
    grid-row-start: 1;
    grid-column-start: 1;
    min-height: 100%
}

.variant__countdown--in,.variant__countdown--low,.variant__countdown--out,.variant__countdown--unavailable {
    display: flex;
    align-items: center
}

.variant__countdown--in svg,.variant__countdown--low svg,.variant__countdown--out svg,.variant__countdown--unavailable svg {
    --icons: var(--icon-color)
}

.product__notification {
    display: block
}

.product__notification .contact-form {
    margin-top: 16px
}

.product__notification label {
    display: block;
    margin-bottom: 15px
}

.product__notification .input-group {
    display: flex;
    max-width: 100%;
    flex-direction: column;
    gap: var(--inner);
    border: 0;
    margin-bottom: 0
}

.product__notification .input-group__item {
    max-width: 100%;
    border: 1px solid var(--border);
    border-radius: var(--RADIUS)
}

.product__notification .input-group__field {
    width: 100%
}

.product__notification .input-group__item--btn {
    flex: 1;
    max-width: 100%;
    width: 100%
}

.product__notification button[type=submit] {
    width: 100%
}

.product__notification__message {
    display: none;
    margin: var(--gutter) 0;
    text-align: center
}

.supports-touch .product__notification input {
    font-size: max(16px, var(--font-body-medium))
}

pickup-availability {
    display: block
}

.pickup__preview {
    display: flex;
    align-items: flex-start;
    margin: 0
}

.pickup__preview button.pickup__button:focus,.pickup__preview button.pickup__button:active {
    transform: none
}

.pickup__preview p {
    margin: 0 0 6px
}

.pickup__list__item .icon,.pickup__preview .icon {
    --icon-size: 20px;
    margin: -1px 6px 0 -4px;
    height: calc(0.875rem * 1.5)
}

.pickup__preview .icon path,.pickup__list__item .icon path {
    fill: none
}

.pickup__preview .icon-check,.pickup__list__item .icon-check {
    color: var(--COLOR-SUCCESS)
}

.pickup__preview .icon-cancel,.pickup__list__item .icon-cancel {
    color: var(--COLOR-ERROR)
}

.pickup__address {
    font-size: var(--font-body-small);
    font-style: normal;
    margin: 8px 0 0
}

.pickup__product__wrap {
    padding: var(--inner);
    border-bottom: 1px solid var(--border)
}

.pickup__product__title {
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    font-style: var(--FONT-STYLE-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none;
    font-size: var(--font-body-large);
    margin: 0
}

.pickup__variant {
    font-size: var(--font-body-x-small);
    margin: 12px 0 0
}

.pickup__variant .text-light {
    color: var(--text-light)
}

.pickup__variant .divide {
    color: var(--text-light);
    opacity: 0.5;
    padding: 0 1px
}

.pickup__variant .badge {
    display: inline-block;
    margin: 0 8px 8px 0
}

.pickup__list {
    padding: var(--inner);
    margin: 0;
    list-style: none
}

.pickup__list__item {
    --border: var(--bg-accent);
    margin-bottom: 32px
}

.pickup__list__item p {
    margin: 2px 0
}

.pickup__list__item p.small {
    margin-top: 8px
}

.pickup__list__item+.pickup__list__item {
    margin-top: 32px;
    padding-top: 32px;
    border-top: 1px solid var(--border)
}

.reviews {
    position: relative;
    background: var(--bg)
}

@media only screen and (max-width: 749px) {
    .reviews {
        overflow:hidden
    }
}

.reviews--section {
    overflow: hidden
}

.reviews--section .reviews__grid[data-slider] .flickity-viewport {
    overflow: visible
}

.reviews--section .review__quote--open-negative {
    top: calc(var(--inner) / -2)
}

.reviews--section .review__quote--close-negative {
    bottom: calc(var(--inner) / -2)
}

@media only screen and (min-width: 750px) {
    .reviews--have-images .reviews__grid {
        position:relative;
        padding-left: 0;
        padding-right: 0;
        scroll-padding: 0
    }

    .reviews--have-images .reviews__grid-item {
        margin: 0;
        width: calc(100% / var(--columns));
        scroll-snap-align: start
    }
}

.reviews--have-images .review__content {
    margin-left: var(--inner);
    margin-right: var(--inner)
}

body.grid-compact .reviews--have-images {
    --outer: 0;
    --outer-offset: 0;
    --gutter: 0;
    --gap: 0
}

body.has-line-design.grid-compact .reviews__grid {
    padding-top: var(--padding-top);
    padding-bottom: var(--padding-bottom);
    padding-right: var(--outer)
}

@media only screen and (min-width: 750px) {
    .reviews__grid.flickity-enabled {
        overflow:visible
    }
}

@media only screen and (max-width: 749px) {
    .reviews__grid {
        padding-left:var(--outer);
        margin-left: var(--outer-offset);
        margin-right: var(--outer-offset);
        gap: 0;
        max-width: none;
        display: flex;
        flex-flow: row nowrap;
        justify-content: flex-start;
        align-items: stretch;
        overflow-x: scroll;
        overflow-y: hidden;
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory;
        scroll-padding: var(--outer);
        scrollbar-width: none;
        -ms-overflow-style: none
    }

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

    .reviews__grid::after {
        content: "";
        display: block;
        position: relative;
        min-height: 1px;
        padding-right: var(--outer)
    }
}

@media only screen and (min-width: 750px) {
    .reviews__grid[data-slider]:not(.flickity-enabled) {
        display:flex;
        overflow-x: auto
    }
}

@media only screen and (min-width: 750px) {
    .reviews__grid[data-slider]::after {
        content:"flickity";
        display: none
    }
}

.reviews__grid-item {
    --columns: var(--COLUMNS);
    flex: 0 0 auto;
    display: flex;
    width: calc(100% / var(--columns) - var(--gap) * (var(--columns) - 1) / var(--columns));
    margin-right: var(--gap)
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .reviews__grid-item {
        --columns:var(--COLUMNS-MEDIUM)
    }
}

@media only screen and (max-width: 749px) {
    .reviews__grid-item {
        width:calc(100% - 50px);
        scroll-snap-align: start
    }
}

.reviews__grid-item:last-child {
    margin-right: 0
}

@media only screen and (max-width: 749px) {
    .reviews__grid-item:only-child {
        width:100%
    }
}

.review {
    display: flex;
    align-items: stretch;
    width: 100%;
    background-color: var(--card-bg)
}

@media only screen and (max-width: 749px) {
    .review {
        position:relative;
        flex-direction: column
    }
}

a.review {
    text-decoration: none;
    color: inherit;
    transition: color 0.4s
}

@media (hover: hover) {
    a.review:hover {
        color:var(--link-hover)
    }

    a.review:hover .review__image img,a.review:hover .review__image svg {
        transform: scale(1.06)
    }
}

.review--block {
    padding: 40px 0;
    height: 100%
}

.review--block .review__content {
    margin: 0
}

.review--block .review__content blockquote {
    margin-bottom: 3em
}

@media only screen and (max-width: 749px) {
    .review--block .review__content blockquote {
        margin-bottom:2em
    }
}

.review--block.review--has-quotes {
    padding-top: 25px
}

.review--block.review--has-quotes blockquote:only-child {
    padding-bottom: 25px
}

.review--block.review--has-quotes blockquote>p {
    padding-top: 2.4em
}

.review__image {
    position: relative;
    overflow: hidden
}

@media only screen and (min-width: 750px) {
    .review__image {
        flex:0 0 50%;
        max-width: 50%
    }
}

.review__image img,.review__image svg {
    transition: transform 1s ease
}

.review__image svg {
    position: absolute;
    top: 0;
    left: 0
}

.review__image .image-wrapper {
    min-height: 100%
}

.review__content {
    --inner: 30px;
    position: relative;
    padding: var(--inner) 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow-wrap: anywhere
}

@media only screen and (min-width: 750px) {
    .review__content {
        --inner:40px
    }
}

.review__content>:last-child {
    padding-bottom: 0;
    margin-bottom: 0
}

.review__content blockquote {
    font-family: var(--FONT-STACK-HEADING);
    font-style: var(--FONT-STYLE-HEADING);
    font-weight: var(--FONT-WEIGHT-HEADING);
    letter-spacing: var(--LETTER-SPACING-HEADING);
    text-transform: var(--FONT-UPPERCASE-HEADING);
    border: 0;
    margin: 0 0 2em;
    padding: 0;
    line-height: 1.24;
    text-transform: none
}

@media only screen and (max-width: 749px) {
    .review__content blockquote {
        margin-bottom:1.5em
    }
}

.review__content blockquote:only-child {
    margin: auto 0;
    justify-self: center
}

.review__content blockquote p {
    font-size: inherit;
    line-height: inherit
}

.review__content blockquote>p {
    margin-top: 0
}

.review__content blockquote p:last-of-type {
    margin-bottom: 0
}

.review__content blockquote svg {
    display: block;
    width: 41px;
    height: 31px;
    margin-bottom: 64px
}

@media only screen and (max-width: 1399px) {
    .review__content blockquote svg {
        margin-bottom:42px
    }
}

@media only screen and (max-width: 749px) {
    .review__content blockquote svg {
        margin-bottom:20px;
        margin-left: auto;
        margin-right: auto
    }
}

@media only screen and (min-width: 750px) {
    .review--has-image .review__content {
        flex-basis:50%
    }
}

.review--has-card-bg {
    padding: var(--inner)
}

.review__quote {
    position: absolute;
    z-index: 1;
    width: var(--inner);
    height: var(--inner);
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: var(--inner);
    overflow: visible
}

.review__quote--single {
    left: 0;
    width: auto;
    height: auto;
    display: inline-block
}

@media only screen and (max-width: 749px) {
    .review__quote--single {
        margin-bottom:30px
    }
}

.text-center .review__quote--single {
    left: 50%;
    transform: translateX(-50%)
}

.review__quote--open {
    left: 0;
    top: 0
}

.review__quote--close {
    right: 0;
    bottom: 0
}

.review__quote--close .review__quote-inner {
    justify-content: flex-end
}

.review__quote-inner {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    line-height: inherit
}

.review__author {
    position: relative;
    display: flex;
    margin: auto 0 var(--inner);
    min-height: 34px
}

.review__content>.review__author:only-child {
    justify-self: center;
    margin: auto 0
}

.review__author__content {
    flex: 0 1 auto
}

.review__author__name {
    font-size: var(--font-body-small)
}

.review__author__subheading {
    margin-top: 3px;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.2em
}

.review__author__subheading:not([class*=heading-]) {
    font-size: var(--font-body-x-small)
}

.review__author__subheading:first-child {
    margin-top: 0
}

.review__author__bio-image {
    --image-size: 34px;
    flex: 0 0 var(--image-size);
    width: var(--image-size);
    height: var(--image-size);
    margin-right: 8px;
    border-radius: 50%;
    object-fit: cover;
    overflow: hidden
}

.text-center .review__author__bio-image {
    margin: 0 auto 4px
}

.text-center .review__author {
    flex-direction: column;
    justify-content: center
}

.review__tweet-url {
    font-size: var(--font-body-x-small);
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 30px
}

@media only screen and (max-width: 1399px) {
    .review__tweet-url {
        margin-bottom:15px
    }
}

.review__foot {
    margin-top: auto
}

.review__foot:only-child {
    justify-self: center;
    margin: auto 0
}

.review__foot>:last-child {
    padding-bottom: 0;
    margin-bottom: 0
}

.product__subs__group {
    display: block;
    border: 1px solid var(--border)
}

.product__subs__group+.product__subs__group {
    border-top: none
}

.product__subs__plans {
    margin-left: 1.5rem
}

.product__subs__plans .product__subs__option {
    padding-top: 0
}

.product__subs__option {
    --bg: var(--COLOR-BG);
    display: flex;
    width: 100%;
    padding: var(--form-top) var(--form-left);
    align-items: center;
    cursor: pointer
}

.product__subs__option input[type=radio] {
    color: var(--text-dark);
    width: 1rem;
    height: 1rem;
    flex-shrink: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
    padding: 0;
    border: 0;
    margin: 0 0.5rem 0 0;
    cursor: pointer
}

.product__subs__option input[type=radio]::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 1px solid var(--text-dark);
    box-sizing: border-box
}

.product__subs__option input[type=radio]:checked::before {
    background-image: radial-gradient(var(--accent) 50%,var(--bg) 51%)
}

.product__subs__description {
    color: var(--text-light);
    font-size: var(--font-body-small);
    background: var(--border-hairline);
    margin: 0;
    padding: 10px 20px;
    font-style: italic
}

.product__price--each {
    color: var(--text-light);
    font-size: var(--font-body-small)
}

.product__subs__wrap {
    margin: var(--inner) 0
}

[data-subscription-watch-price] {
    display: none
}

.free-shipping {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: center;
    padding-top: var(--inner);
    padding-bottom: var(--inner);
    border-bottom: 1px solid var(--border);
    margin: 0;
    line-height: 1.3;
    transition: max-height 0.3s,padding 0.3s,border 0.3s,opacity 0.3s,visibility 0.3s
}

.free-shipping.is-hidden {
    overflow: hidden;
    visibility: hidden;
    max-height: 0;
    padding: 0 15px;
    border: none;
    opacity: 0
}

.free-shipping__success-message {
    display: none
}

.is-success .free-shipping__success-message {
    display: inline
}

.is-success .free-shipping__success-message~.free-shipping__default-message {
    display: none
}

.free-shipping__graph {
    --stroke-dashoffset: 87.96459430051421;
    position: relative;
    display: flex;
    margin-right: 8px;
    transform: scale(-1,1)
}

.free-shipping__graph circle {
    transform-origin: 50% 50%;
    stroke-width: 2;
    stroke: var(--text-a35);
    fill: none
}

.free-shipping__graph-progress {
    position: absolute;
    top: 0;
    left: 0;
    max-width: 100%;
    max-height: 100%;
    stroke: var(--text-a80);
    stroke-dashoffset: var(--stroke-dashoffset);
    transform: rotate(-90deg);
    transform-origin: 50% 50%;
    transition: stroke-dashoffset 1s ease-in-out
}

.free-shipping__progress-bar {
    --progress-bg: transparent;
    --progress-value-bg: var(--FREE-SHIPPING-GRADIENT);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: block;
    width: 100%;
    height: 8px;
    background: var(--bg-accent);
    border-radius: 4px;
    margin-top: 5px;
    overflow: hidden
}

.free-shipping__progress-bar::-webkit-progress-bar {
    width: 100%;
    background: var(--progress-bg);
    border-radius: 6px
}

.free-shipping__progress-bar::-webkit-progress-value {
    background: var(--progress-value-bg);
    border-radius: 4px;
    -webkit-transition: width 1s ease-in-out,transform 1s ease-in-out 0.5s;
    transition: width 1s ease-in-out,transform 1s ease-in-out 0.5s;
    transform-origin: center left
}

.free-shipping__progress-bar::-webkit-progress-value {
    transform: scaleX(0)
}

.is-animated .free-shipping__progress-bar::-webkit-progress-value {
    transform: scaleX(1)
}

@-moz-document url-prefix() {
    .free-shipping__progress-bar::-moz-progress-bar {
        background: var(--progress-value-bg);
        border-radius: 4px;
        -moz-transition: width 1s ease-in-out,transform 1s ease-in-out 0.5s;
        transition: width 1s ease-in-out,transform 1s ease-in-out 0.5s;
        transform-origin: center left
    }

    .free-shipping__progress-bar::-moz-progress-bar {
        transform: scaleX(0)
    }

    .is-animated .free-shipping__progress-bar::-moz-progress-bar {
        transform: scaleX(1)
    }
}

.confetti {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 18px;
    height: 18px
}

.confetti__dot {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    transform: rotate(90deg)
}

.confetti__dot--2 {
    color: var(--accent)
}

.confetti__dot--3 {
    color: var(--COLOR-SALE)
}

.confetti__dot--4 {
    color: var(--border)
}

.confetti__dot--5 {
    color: var(--link)
}

.confetti__dot--6 {
    color: var(--bg-accent)
}

.confetti__dot--4,.confetti__dot--5,.confetti__dot--6 {
    transform: rotate(205deg)
}

.confetti__dot::before,.confetti__dot::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    pointer-events: none;
    background: currentcolor;
    transform: scale(0)
}

.is-success .confetti__dot {
    transition: top 0.4s
}

.is-success .confetti__dot::before,.is-success .confetti__dot::after {
    transform: scale(1);
    opacity: 0;
    transition: top 1s,left 1s,transform 1s,opacity 0.6s 0.4s
}

.is-success .confetti__dot--1::before {
    top: -35px;
    left: 65px
}

.is-success .confetti__dot--4::after,.is-success .confetti__dot--1::after {
    top: 5px;
    left: 45px
}

.is-success .confetti__dot--2::before {
    top: 35px;
    left: 15px
}

.is-success .confetti__dot--5::after,.is-success .confetti__dot--2::after {
    top: 5px;
    left: -35px
}

.is-success .confetti__dot--3::before {
    top: -25px;
    left: 5px
}

.is-success .confetti__dot--6::after,.is-success .confetti__dot--3::after {
    top: 45px;
    left: -45px
}

.is-success .confetti__dot--4::before {
    top: -35px;
    left: 90px
}

.is-success .confetti__dot--5::before {
    top: -70px;
    left: 15px
}

.is-success .confetti__dot--6::before {
    top: -50px;
    left: 55px
}

.cart-bar {
    --bg: var(--COLOR-BG);
    display: block;
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 2001;
    width: 100%;
    height: 80px;
    overflow: hidden;
    background: var(--bg);
    box-shadow: 0 0 10px rgb(0 0 0 / 0.2);
    opacity: 0;
    visibility: hidden;
    transform: translateY(100%);
    transition: opacity 0.3s ease,transform 0.3s ease,visibility 0s linear 0.3s
}

.cart-bar[data-position=top] {
    top: 0;
    bottom: auto;
    transform: translateY(-100%)
}

.cart-bar.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition: opacity 0.5s ease,transform 0.5s ease,visibility 0s linear 0s
}

@media only screen and (max-width: 749px) {
    .cart-bar {
        display:flex;
        align-items: center;
        min-height: 120px;
        height: auto
    }

    .cart-bar::after {
        min-height: inherit;
        font-size: 0;
        content: ""
    }
}

.cart-bar:has(*:focus) {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition: opacity 0.5s ease,transform 0.5s ease,visibility 0s linear 0s
}

.cart-bar__form__wrapper {
    display: flex;
    align-items: center;
    height: 100%;
    padding: 0 var(--outer)
}

@media only screen and (max-width: 749px) {
    .cart-bar__form__wrapper {
        flex:0 1 100%;
        flex-direction: column;
        align-items: stretch;
        padding: 10px var(--outer)
    }
}

.cart-bar__form,.cart-bar__info {
    display: flex;
    align-items: center
}

.cart-bar__form {
    max-width: 50%;
    margin-left: auto
}

@media only screen and (max-width: 749px) {
    .cart-bar__form {
        display:block;
        max-width: none;
        margin: 0
    }
}

.cart-bar__form .product__selectors {
    margin: 0;
    display: flex;
    align-items: stretch;
    flex-wrap: nowrap;
    height: 50px;
    padding: 0
}

.cart-bar__form select,.cart-bar__form .popout__toggle {
    height: 100%;
    border: 0;
    margin: 0
}

.cart-bar__form .selector-wrapper {
    height: 100%;
    min-width: 120px;
    padding-right: 5px;
    border-left: 1px solid var(--border)
}

.cart-bar__form .product__submit {
    min-width: 0;
    margin: 0
}

.cart-bar__form .product__submit__buttons {
    display: inline-block;
    width: auto;
    margin: 0
}

.cart-bar__form .product__submit__add {
    position: relative;
    overflow: hidden;
    min-height: 50px;
    min-width: 260px;
    padding-left: 35px;
    padding-right: 35px;
    margin: 0;
    line-height: 0;
    text-overflow: ellipsis;
    white-space: nowrap
}

.cart-bar__form .product__submit__add span.btn__text {
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: normal
}

@media only screen and (max-width: 989px) {
    .cart-bar__form .product__submit__add {
        min-width:200px
    }
}

@media only screen and (max-width: 749px) {
    .cart-bar__form .product__submit__add {
        width:100%;
        min-height: var(--btn-height,42px);
        white-space: normal
    }
}

.cart-bar__form button {
    visibility: visible
}

.cart-bar__info {
    justify-content: flex-start;
    position: relative;
    min-width: 0;
    padding-right: 10px
}

@media only screen and (max-width: 749px) {
    .cart-bar__info {
        display:block;
        flex-wrap: wrap;
        justify-content: center;
        padding-right: 0;
        text-align: center
    }

    .cart-bar__info:not(:last-child) {
        margin-bottom: 15px
    }
}

.cart-bar__image {
    width: 50px;
    height: 50px;
    padding: 5px;
    margin: 0 10px 0 0
}

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

.cart-bar__product__title {
    line-height: 25px;
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: var(--font-body-large)
}

@media only screen and (max-width: 749px) {
    .cart-bar__product__title {
        display:inline;
        padding: 0 3px;
        white-space: normal
    }
}

.cart-bar__product__price {
    position: relative;
    display: flex;
    align-items: center;
    line-height: 25px;
    padding: 0 0 0 10px;
    margin: 0;
    font-size: var(--font-body-medium)
}

@media only screen and (max-width: 749px) {
    .cart-bar__product__price {
        display:inline;
        padding: 0 3px
    }
}

.variant--unavailable .cart-bar__product__price {
    display: none
}

.cart-bar__product__price::before {
    padding-right: 10px;
    content: "•"
}

@media only screen and (max-width: 749px) {
    .cart-bar__product__price::before {
        padding-right:6px
    }
}

@media only screen and (max-width: 749px) {
    .cart-bar__product__price .product__price--sale {
        padding-right:6px;
        margin-right: 0
    }
}

.cart-bar__submit {
    margin-right: 0
}

.cart {
    --inner: 15px;
    width: auto;
    padding-left: 20px;
    padding-right: 20px;
    position: relative;
    margin: 0 auto;
    overflow: visible;
    display: block;
    text-align: left;
    max-width: 1250px
}

.cart .cart__item__content__left {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    height: 100%
}

.cart .cart__item__content__right {
    display: none
}

.cart--no-overflow {
    z-index: 1
}

.cart--no-overflow .cart__form,.cart--no-overflow .cart__content {
    overflow: visible
}

.cart__empty {
    display: grid;
    grid-template-columns: minmax(0,1fr);
    justify-items: center;
    gap: var(--inner);
    text-align: center;
    width: 100%;
    max-width: var(--DRAWER-WIDTH);
    margin: 0 auto;
    opacity: 0;
    height: 0;
    visibility: hidden
}

.cart__empty p {
    margin: 0
}

.cart__empty .cart__message {
    justify-content: center
}

.cart__empty .cart__message,.cart__empty .cart__empty__buttons,.cart__empty .cart__empty__product {
    width: 100%
}

.cart__empty,.cart__form {
    transition: opacity 0.3s ease,visibility 0.3s;
    overflow: hidden
}

.is-empty .cart__empty {
    visibility: unset;
    opacity: unset;
    height: auto
}

.is-empty .cart__form {
    visibility: hidden;
    opacity: 0;
    height: 0
}

.cart__empty__buttons {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: var(--inner);
    margin: var(--inner) 0
}

.cart__empty__item .btn,.cart__empty__item #challenge .shopify-challenge__button,#challenge .cart__empty__item .shopify-challenge__button,.cart__empty__item .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .cart__empty__item .shopify-payment-button__button--unbranded {
    display: block
}

.cart__empty__product:empty {
    display: none
}

.cart__inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-start
}

@media only screen and (max-width: 749px) {
    .cart__inner {
        display:block
    }
}

.cart__content {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
    overflow: hidden
}

@media only screen and (min-width: 750px) {
    .cart__content {
        flex:1 1 auto;
        margin-right: var(--outer)
    }
}

@media only screen and (max-width: 749px) {
    .cart__content {
        width:100%;
        margin-bottom: 25px;
        position: relative;
        z-index: 1
    }
}

.cart__title {
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    font-style: var(--FONT-STYLE-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none;
    display: flex;
    line-height: 1.36
}

.cart__items {
    width: 100%;
    border-top: 1px solid var(--border);
    margin-top: var(--inner)
}

.cart__items .cart__item {
    padding: var(--inner) 0;
    border-bottom: 1px solid var(--border);
    align-items: stretch
}

.cart__items .cart__item:last-child {
    border-bottom: 1px solid var(--border)
}

@media only screen and (max-width: 749px) {
    .cart__items .cart__item {
        align-items:center
    }
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .cart__items .cart__item__content {
        padding-left:var(--inner)
    }
}

@media only screen and (max-width: 749px) {
    .cart__items .cart__item__content {
        display:block
    }
}

.cart__items .cart__item__content-inner {
    width: 40%
}

@media only screen and (max-width: 749px) {
    .cart__items .cart__item__content-inner {
        width:100%
    }
}

.cart__items .cart__price {
    width: calc(60% - 95px);
    padding: 0 10px;
    text-align: center
}

.cart__items .cart__price ins,.cart__items .cart__price del,.cart__items .cart__price small {
    display: inline-block
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .cart__items .cart__price ins,.cart__items .cart__price del,.cart__items .cart__price small {
        display:block;
        margin: 0
    }
}

@media only screen and (max-width: 749px) {
    .cart__items .cart__price {
        width:100%;
        padding: 0;
        text-align: left
    }
}

.cart__items .cart__quantity-counter {
    position: relative
}

@media only screen and (min-width: 750px) {
    .cart__items .cart__item__remove {
        position:absolute;
        top: 100%;
        margin: 10px auto 0
    }
}

.cart__items .cart__quantity {
    width: 80px
}

.cart__items .cart__discount {
    margin: 10px 0 0 120px
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .cart__items .cart__discount {
        margin-left:105px
    }
}

.cart__aside {
    position: sticky;
    top: 10px;
    flex: 0 0 300px
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .cart__aside {
        flex-basis:280px
    }
}

@media only screen and (max-width: 749px) {
    .cart__aside {
        width:100%;
        padding-top: 0
    }
}

.cart__field {
    color: var(--text)
}

.cart__widget {
    position: relative;
    display: block;
    margin-bottom: -1px;
    font-size: var(--font-body-x-small);
    line-height: 1.16;
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    transition: color 0.3s ease
}

.cart__widget__title {
    position: relative;
    padding: calc(var(--inner) - 2px) calc(var(--inner) + 30px) calc(var(--inner) - 2px) 0;
    margin: 0;
    display: block;
    font-size: var(--font-body-x-small);
    line-height: 1.16;
    font-weight: var(--FONT-WEIGHT-BODY-BOLD)
}

.cart__widget__title .icon {
    --icon-size: 16px;
    right: var(--inner)
}

.cart__widget label {
    font-size: var(--font-body-x-small);
    line-height: 1.36;
    color: inherit;
    font-weight: var(--FONT-WEIGHT-BODY-BOLD)
}

.cart__widget .cart__field {
    display: block;
    width: 100%;
    font-size: var(--font-body-x-small);
    line-height: 1.4
}

@supports (-webkit-touch-callout:none) {
    .cart__widget .cart__field {
        font-size: max(var(--font-body-x-small), 16px)
    }
}

.cart__widget .cart__field--textarea {
    height: 90px;
    resize: none
}

.cart__widget select.cart__field,.cart__widget .cart__field.popout__toggle {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-position: right center;
    background-image: var(--ICON-SELECT);
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-color: #fff0;
    background-size: 16px auto;
    padding-right: 28px;
    text-indent: 0.01px;
    text-overflow: unset;
    cursor: pointer
}

.cart__widget--products p.cart__widget__title {
    border-bottom: 1px solid var(--border);
    margin-bottom: var(--inner)
}

.cart__widget--products:has(.cart__widget__products:empty) {
    display: none
}

.cart__widget__products {
    position: relative;
    display: grid;
    gap: 16px
}

.cart__widget__products .btn__outer {
    position: relative;
    right: auto;
    bottom: auto;
    display: inline-grid
}

.cart__widget__products .product-upsell__btn:not(.btn) {
    justify-self: flex-start
}

.cart__widget--discount .cart__field {
    margin-top: 0
}

.cart__widget__content__inner {
    padding: calc(var(--inner) + 5px) 0
}

.cart__foot__inner {
    padding: calc(var(--inner) - 2px) 0;
    border-top: 1px solid var(--border)
}

.cart__note {
    display: block;
    font-size: max(0.6875rem, var(--font-body-x-small));
    line-height: 1.36;
    margin-top: calc(var(--inner) / 2)
}

.cart__total {
    position: relative;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
    font-size: var(--font-body-x-small);
    line-height: 1.33;
    margin: var(--inner) 0;
    font-weight: var(--FONT-WEIGHT-BODY-BOLD)
}

.cart__total.is-hidden {
    margin: 0
}

.cart__price__loader {
    position: absolute;
    top: 0;
    right: 0;
    max-width: 50%;
    margin: 0.875rem 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease,visibility 0.5s
}

.cart__total__label {
    text-transform: uppercase;
    letter-spacing: 0.14em;
    padding-right: 10px
}

.cart__total__price {
    font-size: var(--font-body-x-large);
    transition: opacity 0.5s ease-in-out
}

.is-loading .cart__total__price--animated {
    opacity: 0;
    transition-duration: 0.25s
}

.is-loading .cart__price__loader {
    opacity: 1;
    visibility: visible
}

.is-loading input:disabled,.is-loading button:disabled,.is-loading [disabled] {
    opacity: 0.7;
    pointer-events: none
}

.cart__checkout {
    margin: var(--inner) 0
}

.cart__checkout .icon {
    flex: 0 0 auto;
    margin-right: 5px;
    fill: none;
    stroke: currentcolor
}

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

.cart__buttons {
    width: 100%
}

.cart__buttons--disabled {
    position: relative
}

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

input.cart__acceptance__input {
    width: 13px;
    height: 13px;
    margin: calc(var(--font-body-small) - 5px) 7px 5px 0
}

.cart__acceptance__label {
    cursor: pointer;
    flex: 1;
    font-size: var(--font-body-small)
}

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

.cart__terms {
    width: 100%;
    margin: 0;
    color: var(--COLOR-ERROR);
    visibility: hidden;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: opacity 0.5s ease,margin 0.5s ease,max-height 0.5s cubic-bezier(0,1,0.5,1),visibility 0.5s
}

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

.additional-checkout-buttons {
    display: flex;
    justify-content: center;
    padding-top: calc(var(--inner) / 2);
    border-top: 1px solid var(--border)
}

.additional-checkout-buttons ul {
    justify-content: center
}

.additional-checkout-buttons li {
    list-style: none outside none;
    border-radius: var(--RADIUS)
}

.additional-checkout-buttons .dynamic-checkout__content {
    width: 100%
}

.additional-checkout-buttons .dynamic-checkout__content:empty {
    display: none
}

.additional-checkout-buttons:has(.dynamic-checkout__content:empty) {
    display: none
}

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

@media only screen and (max-width: 479px) {
    .cart__quantity {
        width:120px
    }
}

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

.cart__quantity button {
    position: absolute;
    top: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 100%;
    font-size: 0;
    line-height: 1;
    transform: translateY(-50%);
    transition: opacity 0.3s;
    padding: 0
}

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

.cart__quantity button:hover {
    opacity: 0.75
}

.cart__quantity .icon {
    --icon-size: 16px
}

.cart__quantity .cart__quantity-field {
    padding: 5px 22px;
    border-color: var(--border);
    margin: 0;
    background-color: #fff0;
    font-size: max(0.6875rem, var(--font-body-x-small));
    line-height: 1.36;
    color: inherit;
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    text-align: center
}

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

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

.cart__quantity .cart__quantity-minus {
    left: 0
}

.cart__quantity .cart__quantity-plus {
    right: 0
}

.cart__quantity-wrapper {
    position: relative;
    width: 80px
}

.cart__quantity-wrapper .select-popout__toggle,.cart__quantity-wrapper .select-popout__option {
    font-size: max(0.6875rem, var(--font-body-x-small))
}

.cart__discount {
    --text: var(--accent);
    --icons: var(--accent);
    width: 100%;
    padding: 5px var(--inner);
    border-radius: 3px;
    margin-top: calc(var(--inner) - 2px);
    background-color: var(--accent-fade);
    font-size: var(--font-body-small);
    color: var(--text)
}

.cart__discount .icon,.cart__total__discount .icon {
    --icon-size: 0.875rem;
    fill: none;
    margin-right: 5px
}

.cart__total__discount {
    font-size: var(--font-body-x-small);
    color: var(--accent)
}

.cart__total__discount .cart__total {
    margin: 0
}

.remove-discount {
    cursor: pointer
}

.cart__price {
    margin-bottom: 8px;
    font-size: var(--font-body-x-small);
    line-height: 1.33
}

.cart__price ins {
    background: none;
    margin-right: 10px;
    color: var(--COLOR-SALE)
}

.cart__price del {
    color: var(--text-light)
}

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

.cart__item__price {
    font-size: var(--font-body-small);
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    overflow-wrap: anywhere
}

.shipping-calculator ul {
    list-style: none;
    margin-left: 0;
    font-size: inherit
}

.shipping-calculator li {
    display: flex;
    justify-content: space-between;
    gap: 10px
}

.shipping-calculator__province[data-aria-hidden=true] {
    display: none
}

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

@media (hover: hover) {
    .cart__errors a:hover {
        opacity:0.75
    }
}

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

.cart__errors__close {
    --icon-size: 24px;
    position: absolute;
    top: 50%;
    right: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    color: var(--link);
    background: #fff0;
    border-radius: var(--RADIUS);
    font-size: 0;
    text-decoration: none;
    transform: translate3d(0,-50%,0);
    transition: color 0.3s ease;
    --icon-size: 16px;
    top: var(--inner);
    right: calc(var(--inner) / 2)
}

.cart__errors__close .icon {
    display: block;
    fill: currentcolor;
    pointer-events: none;
    will-change: transform;
    transition: transform 0.4s cubic-bezier(0.4,0,0.22,1)
}

@media (hover: hover) {
    .cart__errors__close:hover {
        color:var(--link-hover)
    }

    .cart__errors__close:hover .icon {
        transform: scale(1.25)
    }
}

.cart__errors__inner {
    position: relative;
    padding: calc(var(--inner) / 2) var(--inner);
    border: 1px solid var(--COLOR-ERROR-BORDER);
    background-color: var(--COLOR-ERROR-BG);
    color: var(--COLOR-ERROR);
    border-radius: var(--RADIUS-SELECT);
    margin: 15px auto
}

.cart__errors__heading {
    margin: 0;
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    font-style: var(--FONT-STYLE-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none;
    font-size: var(--font-body-small)
}

.cart__errors__content {
    flex: 1 0 auto;
    margin: 0.5em 0 0;
    font-size: var(--font-body-x-small)
}

.cart__widget--discount .cart__errors__content {
    margin-bottom: 7px
}

.is-loading:not(.is-removed)>.loader {
    visibility: visible;
    opacity: 1
}

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

.cart__message {
    display: flex;
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: center;
    color: var(--text);
    margin: 0;
    line-height: 1.3;
    overflow-wrap: anywhere
}

.cart__message--custom {
    flex-flow: row wrap;
    padding: var(--inner);
    background: var(--bg-accent);
    margin: 15px 0 0
}

.cart__message--custom p {
    margin: 0
}

.cart__message--custom.text-center {
    justify-content: center
}

.product-upsell__holder--cart .product-upsell,.product-upsell__holder--cart .product-upsell__errors.is-visible {
    margin-bottom: 0
}

.product-upsell__holder--cart .product-upsell__content {
    padding-right: 30px
}

.product-upsell__holder--cart .product-upsell__image__link,.product-upsell__holder--cart .product-upsell__image__thumb {
    height: 100%
}

.product-upsell__holder--cart .product-upsell__image__thumb {
    background: var(--COLOR-BG)
}

.product-upsell__skip {
    --icon-size: 24px;
    position: absolute;
    top: 50%;
    right: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    color: var(--link);
    background: #fff0;
    border-radius: var(--RADIUS);
    font-size: 0;
    text-decoration: none;
    transform: translate3d(0,-50%,0);
    transition: color 0.3s ease;
    --icon-size: 18px;
    top: 5px;
    right: 5px;
    width: 24px;
    height: 24px;
    padding: 0;
    transform: none
}

.product-upsell__skip .icon {
    display: block;
    fill: currentcolor;
    pointer-events: none;
    will-change: transform;
    transition: transform 0.4s cubic-bezier(0.4,0,0.22,1)
}

@media (hover: hover) {
    .product-upsell__skip:hover {
        color:var(--link-hover)
    }

    .product-upsell__skip:hover .icon {
        transform: scale(1.25)
    }
}

.cart__items-count::before {
    content: "  ("
}

.cart__items-count::after {
    content: ")"
}

.cart__form .block__icon__container {
    padding: var(--inner) 0
}

.cart__payment-icons {
    --gap: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap);
    list-style: none;
    margin: 0;
    padding: var(--inner) 0
}

.cart__payment-icons li {
    display: flex;
    margin: 0
}

.page,body .shopify-policy__container {
    position: relative;
    text-align: left;
    margin: 60px auto;
    max-width: 670px;
    padding: 0 30px;
    background: var(--bg)
}

.page .giftcard__wrap img {
    margin: auto
}

.page-fullwidth {
    max-width: 100%
}

.page img,.page iframe,.shopify-policy__container img,.shopify-policy__container iframe {
    max-width: 100%
}

.page:not(.search-page) img,.shopify-policy__container img {
    height: auto
}

.page-404 {
    padding: var(--outer)
}

.page-404 .page__heading {
    margin-top: 0
}

.page-404 .search-outer {
    margin-bottom: 0
}

.page__title,.shopify-policy__title h1 {
    font-size: var(--font-heading-medium);
    text-align: center;
    margin: 0 0 var(--gutter)
}

.gift-card-footer {
    text-align: center
}

#QrCode {
    padding: 10px 0 20px
}

#QrCode img {
    display: inline-block!important
}

.search-page {
    display: block;
    color: var(--text-dark);
    margin: 0 auto;
    padding: var(--padding-top) 0 var(--padding-bottom);
    max-width: 100%
}

.search-page .icon-search {
    --icons: var(--btn-text)
}

.search-outer {
    max-width: 700px;
    padding: 0 var(--outer);
    margin: 0 auto var(--outer)
}

.search__caption {
    text-align: center;
    padding: 15px var(--outer);
    margin: 0 0 -1px;
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    text-transform: none
}

.shopify-challenge__errors ul.shopify-challenge__error {
    text-align: center;
    margin: 0
}

body .shopify-email-marketing-confirmation__container {
    text-align: center
}

body .shopify-email-marketing-confirmation__container h1 {
    font-size: var(--font-heading-large);
    margin-bottom: 60px
}

body .shopify-email-marketing-confirmation__container p {
    font-size: var(--font-body-large)
}

body .shopify-email-marketing-confirmation__container a {
    display: block;
    font-size: var(--font-body-small);
    text-decoration: underline;
    margin-top: 50px
}

.contact__form__heading {
    padding: 0;
    margin-top: 0;
    margin-bottom: var(--inner);
    text-align: center
}

.custom-form__required-text {
    font-size: var(--font-body-x-small);
    font-style: italic;
    color: var(--text-a80)
}

.contact-form .custom-form__block {
    margin-bottom: 20px
}

popout-select {
    display: block
}

.popout {
    --icons: var(--text);
    --link: var(--text);
    --link-hover: var(--text);
    position: relative
}

.popout__toggle {
    touch-action: manipulation;
    font-size: var(--font-body-x-small);
    margin: 10px 0;
    white-space: nowrap;
    padding: 14px 16px;
    background-image: none
}

.popout__toggle__text {
    vertical-align: middle;
    display: inline-flex;
    align-items: center
}

.popout__toggle .icon-filter {
    --icon-size: 14px;
    margin: -5px 7px -5px 0;
    transition: transform 0.3s cubic-bezier(0.215,0.61,0.355,1)
}

.popout__toggle .icon-nav-arrow-down {
    --icon-size: 16px;
    transition: transform 0.3s ease;
    margin-left: 4px
}

.popout__toggle[aria-expanded=true] .icon-nav-arrow-down {
    transform: rotateX(180deg)
}

@media only screen and (min-width: 750px) {
    .popout__toggleable-text {
        display:grid;
        grid-template-columns: 1fr;
        justify-items: start
    }

    .popout__expanded-show,.popout__expanded-hide {
        transition: opacity 0.25s ease-in-out,visibility 0.25s;
        grid-row-start: 1;
        grid-column-start: 1;
        min-height: 100%
    }

    .popout__toggle[aria-expanded=true] .popout__expanded-show,.popout__toggle[aria-expanded=false] .popout__expanded-hide {
        opacity: 0;
        visibility: hidden
    }

    .popout__toggle[aria-expanded=false] .popout__expanded-show,.popout__toggle[aria-expanded=true] .popout__expanded-hide {
        opacity: 1;
        visibility: visible
    }
}

@media only screen and (max-width: 749px) {
    .popout__toggle--filters[aria-expanded=true] .popout__expanded-hide,.popout__toggle--filters[aria-expanded=false] .popout__expanded-hide {
        display:none
    }
}

@media only screen and (max-width: 749px) {
    .popout__toggle--filters .icon-nav-arrow-down {
        display:none
    }
}

.popout-list {
    --border: var(--border-hairline);
    background-color: var(--COLOR-BG);
    position: absolute;
    top: 100%;
    bottom: auto;
    right: auto;
    left: 0;
    opacity: 0;
    visibility: hidden;
    margin: 0;
    padding: 0;
    width: auto;
    max-width: 0;
    min-height: 0;
    max-height: 0;
    border: 1px solid var(--border);
    z-index: 100;
    overflow-y: auto;
    overflow-x: hidden;
    list-style-type: none;
    pointer-events: none
}

.page-header .popout-list {
    right: 0;
    left: auto
}

.popout-list--visible {
    max-width: var(--max-width,90vw);
    max-height: min(var(--max-height, 300px), 300px);
    min-height: 30px;
    padding: 10px 0;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: opacity 0.4s ease,visibility 0.4s
}

.popout-list--top {
    bottom: 100%;
    top: auto
}

.popout-list__item {
    padding: 0;
    margin: 0;
    text-align: left
}

.popout-list__item a {
    --link: var(--text);
    --link-hover: var(--text)
}

.popout-list__option {
    --bg: transparent;
    padding: 8px 15px;
    width: 100%;
    max-width: var(--max-width);
    min-width: 220px;
    display: flex;
    align-items: center;
    font-size: var(--font-body-small);
    background: var(--bg);
    transition: color 0.25s ease,background 0.25s ease
}

.popout-list__option:hover {
    --bg: var(--border-hairline)
}

.popout-list__option--reset {
    display: none;
    margin-bottom: 10px;
    opacity: 0.7
}

.popout-list__option--visible {
    display: block
}

.popout-list__item.is-active .popout-list__option span {
    border-bottom: 1px solid var(--text-light,var(--text))
}

.popout-footer {
    display: flex;
    margin: -10px 0
}

.popout-footer .popout-list__option:hover {
    --bg: var(--COLOR-FOOTER-BG-HAIRLINE)
}

.popout-footer .popout {
    margin-right: 10px
}

.popout-footer .popout__toggle {
    border-color: var(--border)
}

.popout-footer .popout-list {
    border: 1px solid var(--border)
}

.popout-header {
    display: flex;
    align-items: center;
    height: 100%;
    width: 100%;
    margin: 0 -11px;
    font-size: calc(var(--font-nav-small) * var(--FONT-SIZE-NAV));
    letter-spacing: inherit
}

.popout-header .popout-list {
    --bg: var(--COLOR-SUBMENU-BG);
    --text: var(--COLOR-SUBMENU-LINK);
    --text-light: var(--COLOR-SUBMENU-TEXT-LIGHT);
    background: var(--bg);
    border: 1px solid var(--border);
    z-index: 1000
}

.popout-header .popout-list__item.is-active .popout-list__option span {
    border-bottom-color: var(--text-light)
}

.popout-header .popout__toggle {
    display: flex;
    align-items: center;
    min-height: inherit;
    height: 100%;
    padding: 5px 11px;
    border: none;
    border-radius: 0;
    margin: 0;
    color: var(--text);
    font-size: inherit;
    font-family: inherit;
    font-style: inherit;
    font-weight: inherit;
    text-transform: inherit;
    letter-spacing: inherit
}

.popout-header .popout__toggle .icon {
    margin-left: 0
}

.popout-header .popout-list__option {
    padding-left: 11px;
    padding-right: 11px
}

.popout__flag {
    display: block;
    width: 20px;
    height: 15px;
    margin-right: 8px;
    aspect-ratio: 4/3;
    object-fit: cover
}

.popout-list__item .popout__flag {
    align-self: flex-start
}

.account-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    border-bottom: 1px solid var(--border);
    padding-bottom: 0.9375;
    margin-bottom: 1.875
}

.account-header button,.account-header .btn,.account-header #challenge .shopify-challenge__button,#challenge .account-header .shopify-challenge__button,.account-header .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .account-header .shopify-payment-button__button--unbranded {
    margin-bottom: 10px
}

.account {
    display: block;
    margin: 40px auto
}

.address-delete {
    margin-left: 20px
}

.account form {
    padding: 20px 0
}

.account input[type=hidden]+.form-message,.account .form-message:first-child {
    margin-top: -20px
}

.account .form-message {
    padding-bottom: 20px
}

.account .form-field {
    max-width: none
}

.account .forgot-password {
    display: flex;
    width: 100%;
    padding: 20px 0;
    justify-content: space-between;
    align-items: center
}

.errors ul {
    text-align: left;
    color: #B00
}

.action-bottom .note {
    margin: 0 10px
}

.note>a {
    margin-left: 5px
}

.account table {
    width: 100%
}

.account table th {
    background: var(--bg-accent);
    border: 1px solid var(--bg-accent);
    -webkit-backface-visibility: visible;
    backface-visibility: visible
}

@media only screen and (min-width: 750px) {
    .account-sidebar {
        position:sticky;
        top: var(--header-sticky-height,0)
    }
}

.account-sidebar ul {
    list-style: none;
    margin: 0
}

.account-sidebar li {
    margin: 8px 0
}

.account-sidebar li.is-current a {
    color: var(--link-hover)
}

.account-main h2.theme,.account h4.theme {
    text-align: left
}

.account table.customer-address-table,.account table.customer-address-table th,.account table.customer-address-table td {
    border: 0;
    padding: 15px 0 0
}

.account table.customer-address-table input[type=text] {
    width: 100%
}

.address-tables {
    padding-top: 10px
}

.address-actions {
    font-size: var(--font-body-small)
}

.account .edit-address table,.account .edit-address form {
    margin: 0;
    padding: 0
}

.account .edit-address table td {
    padding: 0 0 15px
}

.account .edit-address select,.account .edit-address .popout__toggle {
    max-width: 150px
}

.account .edit-address label {
    padding: 0 15px 0 0
}

.order-address {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: var(--gap)
}

@media only screen and (max-width: 479px) {
    .order-address {
        grid-template-columns:auto
    }
}

.order-info {
    width: 100%;
    grid-column: 1/-1
}

.order-info span.status {
    font-style: italic
}

@media only screen and (max-width: 749px) {
    .account-sidebar,.account-main {
        width:100%;
        margin: 0 0 20px
    }

    .account-sidebar__title {
        padding: 10px 15px
    }

    .address-table {
        width: 100%
    }

    .account-sidebar {
        margin: 0 0 20px;
        padding: 0;
        text-align: left;
        min-height: 0;
        position: relative;
        background: var(--bg-accent)
    }

    .account-sidebar ul {
        background: var(--bg-accent)
    }

    .account-sidebar li {
        margin: 0;
        display: block;
        border-top: 1px solid var(--border)
    }

    .account-sidebar a {
        display: block;
        padding: 15px
    }
}

@media only screen and (max-width: 479px) {
    .account .edit-address table td {
        display:block;
        padding: 0 0 10px
    }

    .account table .payment-status,.account table .total {
        display: none
    }

    .order-address .col {
        margin: 0 0 15px
    }

    .order-details-m,.order-details-m td {
        border: 0;
        vertical-align: top
    }

    .order-details-m>img,.order-details-m td>img {
        max-width: 90px
    }

    .order-details-m p {
        margin: 0
    }
}

.order__item__subscription {
    margin-top: 10px;
    margin-bottom: 0;
    font-size: var(--font-body-small)
}

.order__item__savings {
    margin-top: 10px
}

.order__item--original {
    color: var(--text-a50);
    text-decoration: line-through
}

.order-image {
    width: 90px
}

.blog__title {
    margin: 0 0 var(--gutter);
    text-align: center;
    overflow-wrap: break-word
}

.blog__title .icon {
    position: relative;
    top: -2px;
    width: 0.73em;
    height: 0.73em
}

.blog__title a {
    color: inherit
}

.blog__title+.blog__nav {
    padding-top: 0
}

.blog__nav {
    padding-top: var(--gutter);
    padding-bottom: var(--gutter);
    margin: 0;
    text-align: center
}

.blog__nav .icon {
    width: 1em;
    height: 1em;
    margin-left: 5px
}

.blog-listing .flickity-prev-next-button.previous {
    left: var(--outer-offset)
}

.blog-listing .flickity-prev-next-button.next {
    right: var(--outer-offset)
}

.blog-listing .article {
    padding: 0
}

.blog-listing .article__tags {
    font-family: var(--FONT-STACK-BODY);
    font-style: var(--FONT-STYLE-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none;
    padding: 15px 25px;
    font-size: var(--font-body-small);
    text-transform: uppercase
}

@media only screen and (max-width: 749px) {
    .blog-listing {
        margin:0 20px
    }

    .blog-listing:not(.flickity-enabled) {
        margin: 0
    }
}

body.has-line-design .blog-listing .article__image {
    border-bottom: 1px solid var(--border)
}

.blog-listing-arrow {
    position: absolute;
    top: 50%;
    margin-top: -10px
}

.blog-listing-arrow--left {
    left: -10px
}

.blog-listing-arrow--right {
    right: -10px
}

.article-grid-item {
    margin-bottom: 30px
}

.article__text-wrapper {
    padding: var(--inner) 0
}

.wrapper--full .article__text-wrapper,body.grid-compact .article__text-wrapper,body.has-line-design .article__text-wrapper {
    padding-left: var(--inner);
    padding-right: var(--inner)
}

.article__title {
    margin-top: 0;
    margin-bottom: 8px
}

.article__title a {
    --link: var(--text);
    --link-hover: var(--text-light);
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    display: box;
    transition: color 0.3s ease;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3
}

.article__meta {
    display: flex;
    flex-flow: row wrap;
    margin-bottom: 16px;
    font-size: var(--font-body-x-small);
    line-height: 1.4;
    font-weight: var(--FONT-WEIGHT-BODY);
    color: var(--text-light)
}

.article__meta .separator {
    margin: 0 5px;
    opacity: 0.75
}

.article__image__outer {
    position: relative;
    overflow: hidden
}

.article__image {
    position: relative;
    display: block;
    overflow: hidden;
    max-width: 100%;
    margin-bottom: 16px
}

.article__image-link {
    display: flex;
    position: relative
}

.featured-posts .article__image {
    padding-top: 56.25%
}

.featured-posts .article__image img {
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%)
}

.article__excerpt {
    font-size: var(--font-body-small);
    margin-top: 16px;
    margin-bottom: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    display: box;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3
}

.article__link {
    font-size: var(--font-body-small);
    margin-top: 16px;
    margin-bottom: 0
}

.article__link a {
    --btn-text: var(--text);
    --btn-text-hover: var(--text-light);
    margin-bottom: 0
}

.article__tags {
    width: 100%;
    padding: 0 15px 5px 25px;
    margin-bottom: -20px;
    overflow-wrap: break-word
}

.article__tag {
    --bg: var(--COLOR-BG);
    --link: var(--text);
    --link-hover: var(--text-light);
    line-height: 1;
    display: inline-block;
    background: var(--bg);
    padding: 6px 8px;
    margin: 0 10px 10px 0
}

.blog-section {
    position: relative;
    text-align: left
}

.blog-section .grid-outer {
    padding: 0
}

.blog-section .article__image {
    overflow: hidden;
    position: relative;
    margin-bottom: 0
}

.blog-section .article__image .article__tags {
    position: absolute;
    z-index: 20;
    left: 0;
    bottom: 0;
    margin-bottom: 0
}

.blog-section .flash {
    text-align: center
}

.blog-section .comments {
    margin: 10px 0 20px;
    padding-top: 20px;
    position: relative
}

.blog-section .comments .gravatar {
    float: left;
    margin-right: 15px;
    width: 50px
}

.blog-section .comments .label {
    float: right
}

.blog-section .comments .comment {
    padding-bottom: 10px;
    margin-top: 10px;
    border-bottom: 1px solid var(--border)
}

.blog-section .comment-body {
    overflow: hidden
}

.blog-section .paginate {
    text-align: center
}

.article__image-holder {
    overflow: hidden;
    display: block
}

.comments-form {
    margin-top: 20px;
    position: relative
}

.comments-form .btn,.comments-form #challenge .shopify-challenge__button,#challenge .comments-form .shopify-challenge__button,.comments-form .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .comments-form .shopify-payment-button__button--unbranded {
    margin: 10px 0
}

.flash {
    margin-bottom: 1em
}

.paginate .num {
    margin: 0 5px
}

.blog__button {
    margin-top: 20px
}

.article-single {
    --bg: var(--COLOR-BG);
    --text: var(--text-dark);
    --double-inner: calc(var(--inner) * 2);
    --btn-text: var(--text);
    --link-a70: var(--text-light);
    position: relative;
    background: var(--bg)
}

@media only screen and (max-width: 749px) {
    .article-single .hr {
        margin:10px 0
    }
}

.article--single {
    position: relative;
    padding-top: var(--inner);
    margin-bottom: 30px
}

.article--single .article__tags {
    margin: 24px 0;
    padding: 0;
    overflow-wrap: break-word
}

.article__hero {
    padding: var(--double-inner) 0;
    overflow-wrap: anywhere
}

body:has([data-header-transparent]) .main-content>.shopify-section:first-of-type .article__hero {
    padding-top: calc(var(--double-inner) + var(--header-height))
}

.article__hero .article__title {
    margin: 0
}

.article__hero .article__meta {
    font-size: var(--font-body-small);
    display: inline-flex;
    flex-wrap: wrap;
    margin: 0;
    opacity: 1
}

.article__hero .article__image:not(:first-child) {
    margin-top: var(--double-inner)
}

.article__hero .article__image .image__fill img {
    object-fit: contain
}

@media only screen and (max-width: 749px) {
    .article__hero .article__title {
        margin:0
    }

    .article__hero .article__meta {
        padding: 0;
        margin: 0;
        font-size: var(--font-body-small)
    }
}

.article__wrapper {
    padding-top: var(--inner)
}

.article__content {
    font-size: var(--font-body-large);
    overflow-wrap: anywhere
}

.article__content p {
    font-size: inherit;
    line-height: inherit;
    margin: 0 0 24px
}

.article__content blockquote {
    font-style: italic;
    margin: 52px 0;
    padding: 0 0 0 28px;
    border-left: 2px solid var(--border)
}

.article__content blockquote p {
    margin: 0
}

.article__content img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 24px 0
}

@media only screen and (min-width: 750px) {
    .article__content {
        min-height:130px
    }
}

@media only screen and (max-width: 749px) {
    .article__content blockquote {
        margin:26px 0;
        padding: 0 0 0 18px;
        border-width: 1px
    }
}

.article__meta-holder {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.article__meta>*:not(:last-child)::after,.editorial__meta>*:not(:last-child)::after {
    content: "•";
    padding: 0 7px
}

.article__author-bio {
    margin: 24px 0;
    display: flex
}

.article__author__image {
    flex-shrink: 0;
    margin-right: 20px;
    margin-top: 7px;
    position: relative;
    width: 80px;
    height: 80px;
    border-radius: 80px;
    display: inline-block;
    overflow: hidden
}

@media only screen and (max-width: 749px) {
    .article__author__image {
        width:60px;
        height: 60px;
        margin-right: 15px;
        border-radius: 40px
    }
}

.article__author__text {
    align-self: center
}

.article__content__wrapper {
    position: relative
}

@media only screen and (max-width: 749px) {
    .comments-container {
        margin:22px 0 0
    }
}

.comments h3 {
    margin: 0;
    line-height: 1.2
}

@media only screen and (max-width: 749px) {
    .comments h3 {
        line-height:1.5
    }
}

.comment-body {
    margin: 32px 0;
    padding-bottom: 9px;
    font-size: var(--font-body-small)
}

.comment-body p {
    font-size: inherit;
    line-height: inherit
}

@media only screen and (max-width: 749px) {
    .comment-body {
        margin:20px 0
    }
}

.comment-meta {
    margin: 15px 0;
    font-weight: var(--FONT-WEIGHT-BODY)
}

@media only screen and (max-width: 749px) {
    .comment-meta {
        margin:6px 0;
        color: var(--text-light)
    }
}

.comments-form {
    margin-top: 13px
}

.comments-form h3 {
    margin: 0;
    line-height: 1.2
}

@media only screen and (max-width: 749px) {
    .comments-form h3 {
        line-height:1.5
    }
}

.comment-form {
    max-width: 600px;
    margin: 0;
    padding: 4px 0 0
}

.comment-form .form-field {
    max-width: 100%
}

.comment-form p {
    font-size: var(--font-body-x-small)
}

.comment-form p.error {
    margin-bottom: 1.75em
}

.comment-form .form-row {
    display: flex;
    justify-content: space-between
}

.comment-form .form-row .form-field {
    width: calc(50% - 5px)
}

.comment-form .form-row .form-field .label--float {
    top: -0.3em
}

.comment-form .btn,.comment-form #challenge .shopify-challenge__button,#challenge .comment-form .shopify-challenge__button,.comment-form .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .comment-form .shopify-payment-button__button--unbranded {
    font-size: var(--font-body-small);
    line-height: normal
}

@media only screen and (max-width: 749px) {
    .comment-form {
        padding-top:11px
    }

    .comment-form .form-field {
        margin-bottom: 8px
    }

    .comment-form .form-field textarea {
        height: 158px
    }

    .comment-form .form-row .form-field {
        width: calc(50% - 4px)
    }

    .comment-form .btn,.comment-form #challenge .shopify-challenge__button,#challenge .comment-form .shopify-challenge__button,.comment-form .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .comment-form .shopify-payment-button__button--unbranded {
        font-size: var(--font-body-small)
    }
}

.sidebar {
    position: relative;
    overflow-wrap: anywhere
}

@media only screen and (min-width: 750px) {
    .sidebar {
        position:sticky;
        top: var(--header-sticky-height);
        max-width: 100%;
        padding: var(--inner) 0 0 20px
    }
}

.widget {
    padding-bottom: 30px
}

.widget:empty {
    padding-bottom: 0
}

@media only screen and (max-width: 749px) {
    .widget:last-child {
        padding-bottom:3px
    }
}

.widget__products {
    margin-top: 30px
}

.widget__title {
    line-height: 1.4;
    font-weight: var(--FONT-WEIGHT-BODY);
    padding-bottom: 8px;
    margin: 0 0 15px;
    border-bottom: 1px solid var(--border)
}

.widget__links {
    margin: 0;
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    font-size: var(--font-body-small);
    line-height: 17px;
    list-style: none outside none
}

.widget__link {
    display: block;
    color: var(--link);
    transition: color 0.3s ease;
    padding: 6px 0;
    overflow-wrap: break-word;
    line-height: inherit;
    font-weight: inherit
}

.widget__link:hover {
    color: var(--link-hover)
}

.widget__accordion-title {
    padding: 6px 0
}

.widget__links .submenu {
    font-weight: var(--FONT-WEIGHT-BODY);
    padding: 4px 0 4px 15px;
    border-left: 2px solid var(--border)
}

.widget__links .submenu li {
    margin: 0
}

.widget__links--secondary .widget__link {
    display: inline-block;
    position: relative
}

.widget__links--secondary .widget__link::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    height: 1px;
    background: currentcolor;
    opacity: 0;
    transform: scaleX(0);
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s ease-in,transform 0.25s ease-in,visibility 0.25s
}

.widget__links--secondary .widget__link.is-selected::after {
    opacity: 1;
    visibility: visible;
    transform: scaleX(1)
}

.widget__links--active .widget__link {
    color: var(--accent)
}

.widget--image .widget__image {
    margin-top: 20px;
    position: relative;
    overflow: hidden
}

.widget--image .widget__image img {
    display: block;
    width: 100%;
    height: auto
}

.widget__recent {
    margin-top: 30px
}

.widget__column {
    --link: var(--text);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    position: relative;
    min-height: 120px;
    margin-bottom: 30px;
    transition: box-shadow 0.3s ease-out;
    border: 1px solid var(--border)
}

.widget__column:last-child {
    margin-bottom: 0
}

.widget__column .meta--light {
    margin-top: 8px;
    font-size: var(--font-body-small)
}

.widget__column:hover {
    box-shadow: 0 0 5px rgb(0 0 0 / 0.15)
}

.widget__column__image {
    flex: 0 0 105px;
    align-self: stretch;
    overflow: hidden
}

.widget__column__contents {
    flex: 1;
    min-width: 0;
    padding: 10px 10px 10px 5%;
    word-break: break-word
}

.widget__column__title {
    margin: 0 0 9px;
    color: var(--text-dark)
}

.anchor-logo__link {
    display: block
}

.anchor-logo__link .svg-placeholder {
    display: block;
    height: 25vh
}

@media only screen and (min-width: 750px) {
    .editorial__slider[data-slider]:not(.flickity-enabled) {
        display:flex;
        overflow-x: auto
    }
}

@media only screen and (min-width: 750px) {
    .editorial__slider[data-slider]::after {
        content:"flickity";
        display: none
    }
}

@media only screen and (max-width: 749px) {
    .editorial__slider {
        display:flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-left: var(--outer);
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -ms-overflow-style: none
    }

    .wrapper--full .editorial__slider {
        padding-left: 0
    }

    .wrapper--full-padded .editorial__slider {
        scroll-padding: var(--outer);
        margin: 0 calc(var(--outer) * -1)
    }

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

@media only screen and (min-width: 1400px) {
    .editorial__slider {
        --window-width-offset:calc(var(--window-width-half) * 0.76)
    }
}

@media only screen and (min-width: 990px) and (max-width:1399px) {
    .editorial__slider {
        --window-width-offset:calc(var(--window-width-half) * 0.84)
    }
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .editorial__slider {
        --window-width-offset:calc(var(--window-width-half) * 0.9)
    }
}

.wrapper--full .editorial__slider {
    --window-width-half: calc((100vw - var(--scrollbar-width)) / 2);
    --button-position: calc((var(--window-width-half) - var(--window-width-offset)) / 2 + var(--outer))
}

.wrapper--full-padded .editorial__slider {
    --window-width-half: calc((100vw - var(--outer) * 2 - var(--scrollbar-width)) / 2);
    --button-position: calc((var(--window-width-half) - var(--window-width-offset)) / 2)
}

.editorial__slider .flickity-button.previous {
    left: var(--button-position)
}

.editorial__slider .flickity-button.next {
    left: calc(var(--button-position) + 50px)
}

.editorial__slider .flickity-button {
    top: auto;
    bottom: 35px;
    margin-top: 0
}

@media only screen and (max-width: 1399px) {
    .editorial__slider .flickity-button {
        bottom:20px
    }
}

.editorial__slide {
    width: 100%;
    flex: 0 0 100%
}

@media only screen and (max-width: 749px) {
    .editorial__slide {
        flex-basis:calc(100% - 50px);
        scroll-snap-align: start;
        margin: 0 var(--gap) 0 0
    }

    .wrapper--full .editorial__slide {
        margin: 0
    }

    .editorial__slide:only-child {
        flex-basis: calc(100% - var(--gap))
    }
}

.editorial {
    background: var(--bg);
    overflow-wrap: break-word
}

@media only screen and (min-width: 750px) {
    .editorial {
        display:flex;
        flex-direction: row-reverse
    }
}

.editorial__aside {
    display: flex;
    justify-content: center
}

@media only screen and (min-width: 750px) {
    .editorial__aside {
        flex:1 1 50%
    }
}

@media only screen and (max-width: 749px) {
    .editorial__aside {
        display:block
    }
}

.editorial__aside-inner {
    display: flex;
    flex: 0;
    flex-direction: column;
    justify-content: center;
    padding: var(--outer)
}

.wrapper--full-padded .editorial__aside-inner {
    padding-left: 0
}

@media only screen and (min-width: 1400px) {
    .editorial__aside-inner {
        flex-basis:76%
    }
}

@media only screen and (min-width: 990px) and (max-width:1399px) {
    .editorial__aside-inner {
        flex-basis:84%
    }
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .editorial__aside-inner {
        flex-basis:90%
    }
}

@media only screen and (max-width: 749px) {
    .editorial__slider[data-slider].flickity-enabled .editorial__aside {
        padding-bottom:70px
    }
}

@media only screen and (min-width: 750px) {
    .editorial__aside-inner[data-subheading]::after {
        content:attr(data-subheading);
        padding-top: 0.5em;
        margin-top: auto;
        opacity: 0;
        pointer-events: none;
        text-transform: uppercase;
        font-size: var(--font-body-x-small);
        font-family: var(--FONT-STACK-BODY);
        font-weight: var(--FONT-WEIGHT-BODY);
        letter-spacing: var(--LETTER-SPACING-BODY)
    }
}

.editorial__content {
    margin: auto 0
}

.editorial__subheading {
    padding-left: 5px;
    padding-bottom: 0.5em;
    margin: 0 0 auto
}

.editorial__subheading+.editorial__content .editorial__title:first-child {
    margin-top: 0
}

.editorial__meta {
    font-family: var(--FONT-STACK-BODY);
    font-style: var(--FONT-STYLE-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none;
    font-size: var(--font-body-small);
    display: flex;
    flex-wrap: wrap;
    padding: 7px 0
}

.editorial__image {
    display: flex
}

@media only screen and (min-width: 750px) {
    .editorial__image {
        flex:0 0 50%
    }
}

.editorial__link {
    margin-top: 1em
}

.template-collection .container {
    background-color: var(--TRANSPARENT)
}

.collection__products {
    position: relative;
    display: flex;
    align-items: flex-start;
    background: var(--bg)
}

body.has-line-design.grid-compact .collection__products .grid,.collection__products .grid {
    padding-top: 0
}

.collection__products .grid-outer {
    padding: var(--gutter) var(--outer)
}

.collection__nav {
    --border-width: 0px;
    position: sticky;
    top: 0 !important;
    z-index: 12;
    display: flex;
    flex-grow: 1;
    background: var(--bg);
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border)
}

.has-header-sticky .collection__nav {
    top: calc(var(--header-height) - var(--border-width))
}

.has-header-sticky.has-line-design .collection__nav {
    --border-width: 1px
}

.collection__nav--filter {
    justify-content: flex-start
}

.collection__nav--sort {
    justify-content: flex-end
}

.collection__nav--filter.collection__nav--sort {
    justify-content: space-between
}

.collection-image-with-title {
    overflow: hidden
}

.collection__image {
    position: relative
}

.collection__image-inline {
    display: grid;
    grid-template-columns: minmax(0,65fr) minmax(0,35fr);
    align-items: stretch;
    position: relative
}

.collection__image-inline .hero__content__wrapper {
    height: 100%
}

.collection__image-inline .hero__content {
    height: 100%;
    width: 100%;
    max-width: none;
    justify-content: center
}

.collection__image-inline .hero__content:not(.hero__content--transparent) {
    margin: 0
}

@media only screen and (max-width: 989px) {
    .collection__image-inline {
        grid-template-columns:minmax(0,1fr)
    }

    .collection__image-inline .collection__title-wrapper {
        min-height: auto
    }
}

.collection__title-wrapper {
    background: var(--bg)
}

.collection__title--no-image {
    padding: var(--gutter) var(--outer);
    background: var(--bg)
}

.collection__filters__btn {
    margin-top: var(--outer)
}

.collections-hover {
    position: relative
}

@media only screen and (max-width: 749px) {
    .collections-hover {
        min-height:0
    }
}

.collections-hover--empty {
    display: block;
    min-height: 0;
    color: var(--text-dark)
}

@media only screen and (max-width: 749px) {
    .collections-hover__images,.collections-hover__inner {
        min-height:initial
    }
}

.collections-hover__images {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    z-index: 1;
    overflow: hidden
}

@media only screen and (min-width: 750px) {
    .collections-hover__images {
        display:grid;
        height: 100%
    }
}

.collections-hover__image {
    flex: 0 1 100%;
    display: flex;
    position: relative;
    background: var(--bg)
}

@media only screen and (min-width: 750px) {
    .collections-hover__image {
        grid-row-start:1;
        grid-column-start: 1;
        overflow: hidden;
        min-height: 100%;
        width: 100%;
        height: 100%;
        overflow: hidden;
        opacity: 0;
        transform: scale(1.1);
        transition: opacity 0.8s cubic-bezier(0.215,0.61,0.355,1),transform 0.8s cubic-bezier(0.215,0.61,0.355,1)
    }

    .collections-hover__image.is-visible {
        opacity: 1;
        transform: scale(1)
    }
}

.collections-hover__image .svg-placeholder,.collections-hover__image .image-wrapper {
    flex: 1;
    min-height: 100%
}

@media only screen and (max-width: 749px) {
    .collections-hover__image:not(.image-height--mobile) .image-wrapper {
        height:100%;
        padding: 0
    }
}

@media only screen and (min-width: 750px) {
    .collections-hover:not(.image-height) .collections-hover__image .image-wrapper {
        height:100%;
        padding: 0
    }
}

@media only screen and (max-width: 749px) {
    .collections-hover__image:not(.image-height--mobile) .svg-placeholder {
        position:absolute;
        top: 0;
        left: 0
    }
}

@media only screen and (min-width: 750px) {
    .collections-hover:not(.image-height) .collections-hover__image .svg-placeholder {
        position:absolute;
        top: 0;
        left: 0
    }
}

.collections-hover__inner {
    position: relative;
    z-index: 2;
    max-width: calc(100vw - var(--scrollbar-width))
}

.collections-hover__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: sticky;
    top: var(--header-sticky-height,0);
    overflow: hidden;
    min-height: min(var(--full-screen), 100%);
    text-align: center
}

[data-overlay-header] .collections-hover__content {
    padding-top: var(--header-height);
    padding-bottom: var(--header-height)
}

.collections-hover__actions,.collections-hover__actions-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    overflow-wrap: anywhere
}

@media only screen and (max-width: 749px) {
    .collections-hover__actions,.collections-hover__actions-inner {
        flex-direction:column
    }
}

.collection-hover__button {
    --link: var(--text-a50);
    --link-hover: var(--text);
    font-family: var(--FONT-STACK-HEADING);
    font-style: var(--FONT-STYLE-HEADING);
    font-weight: var(--FONT-WEIGHT-HEADING);
    letter-spacing: var(--LETTER-SPACING-HEADING);
    text-transform: var(--FONT-UPPERCASE-HEADING);
    display: inline-block;
    align-self: center;
    padding: 0;
    margin: var(--gutter)
}

.collection-hover__button span {
    --main-color: var(--link);
    --hover-color: var(--link-hover);
    display: inline-block;
    padding-bottom: 2px;
    background-image: linear-gradient(to right,var(--hover-color) 0% 50%,var(--main-color) 50% 100%);
    background-size: 200% 100%;
    background-position: 100% 0;
    background-repeat: no-repeat;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: #fff0;
    transition: background-position 0.3s cubic-bezier(0.39,0.575,0.565,1)
}

.collection-hover__button .sup {
    transition: color 0.5s cubic-bezier(0.215,0.61,0.355,1)
}

.collection-hover__button.is-selected .sup {
    color: var(--text)
}

.collection-hover__button.is-selected span {
    background-position: 0 0
}

@media (hover: hover) {
    .collection-hover__button span:hover {
        background-position:0 0
    }
}

.collection__products {
    --duration: 0.6s
}

.collection__sidebar {
    --icons: var(--text);
    padding: var(--inner);
    font-size: var(--font-body-small);
    overflow-y: auto;
    max-height: 100%;
    min-width: var(--sidebar-width);
    -webkit-mask-image: linear-gradient(to top,transparent,black),linear-gradient(to left,transparent var(--scrollbar-width),black var(--scrollbar-width));
    mask-image: linear-gradient(to top,transparent,black),linear-gradient(to left,transparent var(--scrollbar-width),black var(--scrollbar-width));
    -webkit-mask-size: 100% 20000px;
    mask-size: 100% 20000px;
    -webkit-mask-position: left bottom;
    mask-position: left bottom;
    transition: -webkit-mask-position 0.3s;
    transition: mask-position 0.3s;
    transition: mask-position 0.3s,-webkit-mask-position 0.3s
}

.collection__sidebar:hover {
    -webkit-mask-position: left top;
    mask-position: left top
}

.collection__sidebar .no-results {
    padding: var(--gutter)/2 0
}

.collection__sidebar--has-buttons .collection__sidebar__slider::after {
    content: none
}

.collection__sidebar__slider {
    display: flex;
    flex-direction: column;
    z-index: 1;
    background: var(--bg);
    border-width: 0 1px 1px 0;
    border-style: solid;
    border-color: var(--border);
    visibility: hidden;
    overflow: hidden
}

@media only screen and (min-width: 750px) {
    .collection__sidebar__slider {
        position:sticky;
        top: var(--collection-nav-height);
        height: calc(var(--full-screen) - var(--collection-nav-height));
        width: 0;
        min-width: 0;
        margin-right: -2px;
        transition-property: min-width,margin,transform,visibility;
        transition-duration: var(--duration);
        transition-timing-function: cubic-bezier(0.215,0.61,0.355,1)
    }
}

@media only screen and (max-width: 749px) {
    .collection__sidebar__slider {
        position:fixed;
        z-index: 6100;
        top: 0;
        height: 100%;
        transform: translateX(-100%);
        transition: transform var(--duration) cubic-bezier(0.215,0.61,0.355,1),visibility var(--duration)
    }
}

@media only screen and (max-width: 749px) {
    .collection__sidebar__slider.drawer--animated {
        --base-animation-delay:0ms
    }
}

@media only screen and (min-width: 750px) {
    .has-header-sticky .collection__sidebar__slider {
        --border-width:0;
        top: calc(var(--collection-nav-height) + var(--header-height) - var(--border-width));
        height: calc(var(--full-screen) - var(--collection-nav-height) + var(--border-width))
    }
}

@media only screen and (min-width: 750px) {
    .has-header-sticky.has-line-design .collection__sidebar__slider {
        --border-width:1px
    }
}

.collection__sidebar__slider::after,.collection__sidebar__slide-out::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: var(--scrollbar-width);
    height: 40px;
    background: linear-gradient(to bottom,rgb(var(--COLOR-BG-RGB) 0%) 0%,var(--COLOR-BG) 100%);
    pointer-events: none
}

@media only screen and (min-width: 750px) {
    .collection__sidebar__slider .collection__sidebar {
        padding:var(--inner) var(--gutter) var(--inner) var(--outer);
        transform: translateX(-100%);
        transition: transform var(--duration) cubic-bezier(0.215,0.61,0.355,1),mask-position var(--duration),-webkit-mask-position var(--duration)
    }
}

.collection__sidebar__slider.expanded,.collection__sidebar__slide-out.expanded {
    visibility: visible
}

@media only screen and (min-width: 750px) {
    .collection__sidebar__slider.expanded .collection__sidebar {
        transform:translateX(0)
    }
}

.collection__sidebar__slide-out.expanded {
    transform: translateX(0)
}

@media only screen and (min-width: 750px) {
    .collection__sidebar__slider.expanded {
        transform:translateZ(0);
        min-width: var(--sidebar-width);
        margin-right: calc((var(--outer) - var(--gutter)) * -1)
    }
}

@media only screen and (max-width: 749px) {
    .collection__sidebar__slider.expanded {
        transform:translateZ(0)
    }
}

@media only screen and (min-width: 750px) {
    body.has-line-design.grid-compact .collection__sidebar__slider {
        margin-right:-1px
    }
}

@media only screen and (max-width: 749px) {
    .no-mobile-animation {
        opacity:0!important;
        visibility: hidden!important;
        pointer-events: none
    }

    .no-mobile-animation~.underlay {
        display: none
    }
}

.grid--sidebar {
    width: 75%
}

@media only screen and (max-width: 749px) {
    .grid--sidebar {
        width:100%
    }
}

@media only screen and (min-width: 750px) {
    .collection__filters {
        --padding:calc(var(--inner) * 2);
        --width: var(--sidebar-width);
        width: calc(var(--width) - var(--padding))
    }
}

@media only screen and (min-width: 750px) {
    .collection__sidebar__slider .collection__filters {
        --padding:calc(var(--gutter) + var(--outer))
    }
}

@media only screen and (min-width: 750px) {
    .collection__sidebar__slide-out .collection__filters {
        --width:var(--DRAWER-WIDTH)
    }
}

.filter-group:not(.filter-group--hidden)~.collection__filters .filter-group,.filter-group:not(.filter-group--hidden)~.filter-group {
    margin-top: 25px
}

.collection__sidebar__actions {
    padding-top: 17px
}

.collection__sidebar__actions.is-hidden {
    display: none!important
}

.collection__sidebar__link {
    --icon-size: 24px;
    position: relative;
    display: flex;
    align-items: center;
    padding-left: 23px;
    min-height: 12px
}

.collection__sidebar__link .icon {
    position: absolute;
    top: 50%;
    left: -4px;
    fill: none;
    transform: translateY(-50%)
}

.filter-group__heading {
    position: relative;
    border-bottom: 1px solid var(--border);
    padding: 0 15px 5px 0;
    margin-bottom: 0;
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    cursor: pointer
}

.filter-group__heading .icon {
    --icon-size: 18px;
    top: 8px;
    right: -4px
}

.collection-nav {
    list-style-type: none;
    overflow: hidden;
    padding: 0 0 1px;
    margin: 0
}

.collection-nav--image-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: calc(var(--inner) / 2)
}

.collection-nav--image-grid img {
    border-radius: min(var(--RADIUS), 10px)
}

.collection-nav--image-grid label {
    flex-direction: column;
    padding: 0;
    gap: calc(var(--inner) / 2)
}

.collection-nav--image-grid label::after {
    display: none
}

.collection-nav--image-grid .sidebar__item label {
    height: 100%;
    padding: calc(var(--inner) / 2);
    border: 1px solid var(--text-a35);
    border-radius: min(var(--RADIUS), 20px)
}

.collection-nav--image-grid .sidebar__item--active label {
    border-color: var(--accent)
}

.sidebar__item {
    position: relative;
    font-size: var(--font-body-small);
    padding: 0;
    margin: 12px 0 0;
    overflow-wrap: break-word
}

.sidebar__item label,.sidebar__item a {
    --link: var(--text);
    --link-hover: var(--text-hover)
}

.sidebar__item label {
    cursor: pointer
}

.sidebar__item input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
    opacity: 0
}

.sidebar__item .swatch__button {
    flex: 0 0 var(--swatch-size);
    height: var(--swatch-size);
    width: var(--swatch-size);
    padding: 0;
    margin: 0 8px 0 0;
    background: var(--swatch,var(--swatch-default));
    background-size: cover;
    background-repeat: no-repeat
}

.swatch-white label,.sidebar__item .swatch__button[data-swatch=white i] {
    --swatch: #FAFAFA;
    box-shadow: inset 0 0 0 1px var(--border)
}

.swatch-white input:checked~label::after {
    --swatch: var(--border)
}

.sidebar__item .swatch__button--circle {
    border-radius: 50px
}

.link--remove a,.link--remove label,.link--add a,.link--add label,.link--disable a,.link--disable label {
    padding-left: calc(1em + 10px);
    position: relative;
    display: flex;
    align-items: center
}

.sidebar__item a::after,.sidebar__item label::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 1em;
    height: 1em;
    border: 1px solid var(--text-light);
    background: var(--COLOR-BG)
}

.shopify-swatch {
    display: flex
}

.sidebar__item.link--remove a::after,.sidebar__item input:checked~label::after {
    background: var(--accent);
    box-shadow: inset 0 0 0 2px var(--COLOR-BG)
}

.link--disable {
    text-decoration: line-through;
    color: var(--text-light)
}

.link--disable a::after,.link--disable label::after {
    opacity: 0.35;
    border: 1px solid var(--text-light);
    background-color: var(--text-light)
}

.link--disable .swatch__button {
    pointer-events: none
}

.link--disable .swatch__button [data-swatch]::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1px;
    height: 32px;
    background-color: var(--text-dark);
    transform: rotate(-45deg) translate(-50%,-50%);
    transform-origin: left top
}

.collection__nav.collection__nav--both {
    justify-content: space-between
}

.popout--group .popout,.popout--sort .popout {
    height: 100%
}

.popout--group .popout-list,.popout--sort .popout-list {
    z-index: 1000;
    max-height: 90vh;
    top: 100%;
    bottom: initial;
    right: 0;
    left: auto;
    max-width: 100vw!important
}

.popout--group .popout__toggle,.popout--sort .popout__toggle {
    padding: 20px 15px;
    height: 100%;
    border-top: none;
    border-left: 1px solid var(--border);
    border-radius: 0;
    color: var(--text);
    border-bottom: none;
    border-right: none;
    margin: 0;
    font-family: var(--BTN-FONT-STACK);
    font-size: var(--BTN-FONT-SIZE);
    font-style: var(--BTN-FONT-STYLE);
    font-weight: var(--BTN-FONT-WEIGHT);
    letter-spacing: var(--BTN-LETTER-SPACING);
    text-transform: var(--BTN-UPPERCASE)
}

@media only screen and (min-width: 990px) {
    .popout--group .popout__toggle,.popout--sort .popout__toggle {
        padding:23px 18px
    }
}

.popout--sort .popout__toggle__text:nth-child(2),.popout--sort .popout.is-active .popout__toggle__text:nth-child(1) {
    display: none
}

.popout--sort .popout.is-active .popout__toggle__text:nth-child(2) {
    display: inline
}

.popout--sort .popout__toggle {
    padding-left: var(--outer);
    padding-right: var(--outer)
}

.popout--sort .popout-list {
    width: 0;
    min-width: 0;
    margin-top: 1px;
    overflow-x: hidden;
    overflow-y: auto;
    transition: opacity 0.2s ease,width 0.2s ease,padding 0s 0.2s,visibility 0.2s
}

.popout--sort .popout-list--visible {
    width: 200px;
    transition: opacity 0.4s ease,width 0.4s ease,visibility 0.4s
}

.popout--sort .popout-list__item {
    white-space: normal;
    min-width: calc(170px - var(--scrollbar-width))
}

.popout--sort .popout__select__outer {
    display: flex;
    align-items: center
}

.popout--sort .btn,.popout--sort #challenge .shopify-challenge__button,#challenge .popout--sort .shopify-challenge__button,.popout--sort .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .popout--sort .shopify-payment-button__button--unbranded {
    margin-right: 10px
}

.popout--group .popout-list {
    right: initial
}

.popout--group .popout__toggle {
    display: flex;
    align-items: center;
    padding-left: var(--outer);
    padding-right: var(--outer);
    border-right: 1px solid var(--border);
    border-left: none
}

.popout--group .popout__toggle::after {
    display: none
}

.collection__sidebar__slide-out {
    position: fixed;
    top: 0;
    right: 100%;
    z-index: 6100;
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
    max-width: var(--DRAWER-WIDTH);
    border-left: 1px solid var(--border);
    background: var(--bg);
    opacity: 0;
    transition: opacity var(--duration) ease,transform var(--duration) ease,visibility var(--duration);
    overflow: hidden;
    visibility: hidden
}

.collection__sidebar__slide-out.expanding,.collection__sidebar__slide-out.expanded {
    visibility: visible;
    opacity: 1
}

.collection__sidebar__slide-out.expanded {
    transform: translateX(100%)
}

.collection__sidebar__head {
    position: relative;
    width: 100%;
    padding: 24px calc(var(--inner) + 24px) 24px var(--inner);
    border-bottom: 1px solid var(--border)
}

.collection__sidebar__head h3 {
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    font-style: var(--FONT-STYLE-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none;
    font-size: var(--font-body-medium);
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    margin: 0 0 -3px
}

.collection__sidebar__close {
    --icon-size: 24px;
    position: absolute;
    top: 50%;
    right: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    color: var(--link);
    background: #fff0;
    border-radius: var(--RADIUS);
    font-size: 0;
    text-decoration: none;
    transform: translate3d(0,-50%,0);
    transition: color 0.3s ease
}

.collection__sidebar__close .icon {
    display: block;
    fill: currentcolor;
    pointer-events: none;
    will-change: transform;
    transition: transform 0.4s cubic-bezier(0.4,0,0.22,1)
}

@media (hover: hover) {
    .collection__sidebar__close:hover {
        color:var(--link-hover)
    }

    .collection__sidebar__close:hover .icon {
        transform: scale(1.25)
    }
}

.collection__sidebar__buttons {
    position: sticky;
    left: 0;
    right: var(--scrollbar-width);
    bottom: 0;
    z-index: 2;
    min-width: calc(var(--sidebar-width) - var(--scrollbar-width));
    padding: 5px var(--inner) 15px;
    margin-top: auto;
    background: var(--bg)
}

.collection__sidebar__buttons::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    height: 45px;
    background: linear-gradient(to bottom,rgb(var(--COLOR-BG-RGB) 0%) 0%,var(--COLOR-BG) 100%);
    pointer-events: none
}

.collection__sidebar__buttons:empty {
    display: none
}

@media only screen and (min-width: 750px) {
    .collection__sidebar__slider .collection__sidebar__buttons {
        padding:5px 15px 15px
    }
}

.collection__sidebar__buttons .btn+.btn,.collection__sidebar__buttons #challenge .shopify-challenge__button+.btn,#challenge .collection__sidebar__buttons .shopify-challenge__button+.btn,.collection__sidebar__buttons .shopify-payment-button .shopify-payment-button__button--unbranded+.btn,.shopify-payment-button .collection__sidebar__buttons .shopify-payment-button__button--unbranded+.btn,.collection__sidebar__buttons #challenge .btn+.shopify-challenge__button,#challenge .collection__sidebar__buttons .btn+.shopify-challenge__button,.collection__sidebar__buttons #challenge .shopify-challenge__button+.shopify-challenge__button,#challenge .collection__sidebar__buttons .shopify-challenge__button+.shopify-challenge__button,.collection__sidebar__buttons .shopify-payment-button #challenge .shopify-payment-button__button--unbranded+.shopify-challenge__button,#challenge .collection__sidebar__buttons .shopify-payment-button .shopify-payment-button__button--unbranded+.shopify-challenge__button,.shopify-payment-button .collection__sidebar__buttons #challenge .shopify-payment-button__button--unbranded+.shopify-challenge__button,#challenge .shopify-payment-button .collection__sidebar__buttons .shopify-payment-button__button--unbranded+.shopify-challenge__button,.collection__sidebar__buttons .shopify-payment-button .btn+.shopify-payment-button__button--unbranded,.shopify-payment-button .collection__sidebar__buttons .btn+.shopify-payment-button__button--unbranded,.collection__sidebar__buttons #challenge .shopify-payment-button .shopify-challenge__button+.shopify-payment-button__button--unbranded,.shopify-payment-button .collection__sidebar__buttons #challenge .shopify-challenge__button+.shopify-payment-button__button--unbranded,#challenge .collection__sidebar__buttons .shopify-payment-button .shopify-challenge__button+.shopify-payment-button__button--unbranded,.shopify-payment-button #challenge .collection__sidebar__buttons .shopify-challenge__button+.shopify-payment-button__button--unbranded,.collection__sidebar__buttons .shopify-payment-button .shopify-payment-button__button--unbranded+.shopify-payment-button__button--unbranded,.shopify-payment-button .collection__sidebar__buttons .shopify-payment-button__button--unbranded+.shopify-payment-button__button--unbranded {
    margin-top: 10px
}

.collection__sidebar__slide-out .collection__sidebar {
    flex-grow: 1;
    height: auto;
    overflow-y: auto
}

.collection__products .underlay {
    z-index: 6000;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.collection__active__filters {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 10px
}

.active__filters__clear,.active__filters__remove {
    --link: var(--text);
    display: flex;
    background-color: var(--bg-accent);
    padding: 8px 7px 8px 14px;
    margin: 0 7px 7px 0;
    font-size: var(--font-body-x-small)
}

.active__filters__clear:hover,.active__filters__remove:hover {
    color: var(--text-dark)
}

.active__filters__clear:hover .filter__x,.active__filters__remove:hover .filter__x {
    color: var(--accent)
}

.active__filters__clear small,.active__filters__remove small {
    align-self: center;
    flex: 0 1 100%;
    overflow-wrap: break-word;
    font-size: inherit
}

.filter__x {
    --icon-size: 14px;
    flex: 0 0 auto;
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    margin-left: 4px
}

.active__filters__clear {
    padding-right: 14px;
    font-weight: var(--FONT-WEIGHT-BODY-BOLD)
}

.filter__price {
    margin-top: 12px
}

.filter__price__fields {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    max-width: 100%;
    margin: 0 0 25px
}

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

.filter__price__field {
    display: flex;
    align-items: center;
    flex: 1;
    max-width: calc(50% - 10px);
    padding: 8px 0 8px 8px;
    border: 1px solid var(--text);
    border-radius: var(--RADIUS-SELECT)
}

.filter__price__currency {
    margin-right: 5px
}

.filter__price__spacer {
    flex: 0 0 20px;
    position: relative;
    padding: 5px;
    font-size: 0;
    text-align: center
}

.filter__price__spacer::before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 6px;
    height: 1px;
    margin-left: -3px;
    background: currentcolor;
    content: ""
}

.filter__price__input {
    flex: 1;
    display: block;
    min-width: 0;
    max-width: 100%;
    width: 0;
    padding: 0 3px;
    border: 1px solid #fff0;
    border-radius: 0;
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    text-align: right
}

.range {
    position: relative;
    display: block;
    height: 36px;
    margin-left: -8px;
    margin-right: -8px;
    opacity: 0;
    -webkit-user-select: none;
    user-select: none
}

.range.is-initialized {
    opacity: 1
}

.range__dot {
    position: absolute;
    z-index: 2;
    display: block;
    width: 36px;
    height: 36px;
    padding: 8px
}

.range__dot span {
    display: block;
    width: 100%;
    height: 100%;
    background: var(--text);
    border: 1px solid var(--text);
    border-radius: 50%;
    font-size: 0;
    cursor: pointer
}

.range__line {
    position: absolute;
    top: 16px;
    left: 8px;
    z-index: 0;
    overflow: hidden;
    width: calc(100% - 16px);
    height: 4px;
    border-radius: 4px;
    border: 1px solid var(--text)
}

.range__line span {
    display: block;
    height: 100%;
    width: 0%;
    background: var(--text);
    font-size: 0
}

.filter-count {
    margin-left: 4px
}

.filter-count::before {
    content: "("
}

.filter-count::after {
    content: ")"
}

.collection-item {
    --link: var(--text);
    --link-hover: var(--text);
    --bg: var(--COLOR-BG);
    --text: var(--COLOR-TEXT);
    display: flex;
    flex-wrap: wrap;
    position: relative;
    background: var(--bg);
    scroll-snap-align: start
}

.collection-item--card {
    --bg: var(--COLOR-BG-ACCENT);
    --text: var(--COLOR-TEXT);
    background: var(--bg);
    color: var(--text)
}

.collection-item__content {
    flex: 0 1 100%
}

.has-line-design .hide-image-border .collection-item__image:last-child {
    border-bottom: none
}

.collection-item__image {
    position: relative;
    overflow: hidden
}

.has-line-design .collection-item__image {
    border-bottom: 1px solid var(--border)
}

.collection-item__actions,.collection-item__info {
    flex: 0 1 100%;
    padding: var(--inner);
    overflow: hidden;
    overflow-wrap: anywhere
}

@media only screen and (max-width: 749px) {
    .collection-item__actions,.collection-item__info {
        padding:12px
    }
}

.collection-item--centered .collection-item__actions,.collection-item--centered .collection-item__info {
    text-align: center
}

@media (hover: hover) {
    .collection-item__bg .image-wrapper {
        --transform-scale:scale(1.08);
        transition: transform 2s cubic-bezier(0.215,0.61,0.355,1)
    }

    .collection-item:hover .collection-item__bg .image-wrapper {
        transform: var(--transform-scale)
    }
}

.collection-item__overlay-text {
    display: flex
}

.collection-item__overlay-content .grid__heading {
    padding: var(--inner)
}

.collection-item__overlay-text--bg .collection-item__overlay-content {
    background-color: var(--bg,rgb(255 255 255 / 0.8));
    border-radius: var(--radius);
    padding: var(--gutter);
    margin: var(--gutter)
}

.collection-item__overlay-text--bg .collection-item__overlay-content .grid__heading {
    padding: 0
}

.collection-item__bg .image-overlay {
    z-index: auto
}

.collection-item__bg .frame {
    position: relative;
    height: 100%
}

.subcollections {
    --link: var(--text);
    position: relative;
    overflow: hidden
}

.collection__title+.subcollections .subcollections__inner {
    padding-top: 0
}

.subcollection__item {
    position: relative;
    height: 300px;
    overflow: hidden;
    z-index: 0
}

.subcollection__image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow-y: hidden;
    transform: scale(1.06);
    transition: transform 2s cubic-bezier(0.215,0.61,0.355,1)
}

.subcollection__image .image-wrapper {
    position: absolute;
    top: 0;
    left: 0
}

.subcollection__link:hover .subcollection__image {
    transform: scale(1)
}

.subcollection__link {
    color: var(--link);
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    padding: 20px;
    width: 100%;
    height: 100%
}

body.is-focused .subcollection__item:focus-within .image-overlay-bottom {
    outline: 5px auto var(--accent);
    outline-offset: -1px
}

.subcollection__text {
    position: relative;
    z-index: 200;
    max-height: 100%
}

.subcollection__title,.subcollection__description {
    margin: 0;
    color: var(--text)
}

.subcollection__title {
    margin-bottom: 3px
}

.pagination {
    margin-bottom: 1em
}

.pagination-custom {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    padding: max(var(--inner), var(--outer));
    width: 100%;
    font-size: var(--font-body-small)
}

@media only screen and (max-width: 749px) {
    .pagination-custom {
        justify-content:space-around
    }
}

.pagination-custom a {
    transition: color 0.3s ease
}

.pagination-custom a:hover,.pagination-custom a:focus {
    color: var(--text-hover)
}

.pagination-custom__page {
    --link: var(--text);
    margin: 0 12px;
    display: block;
    padding: 4px 8px;
    transition: color 0.3s ease;
    border-radius: var(--RADIUS)
}

.pagination-custom__page--active {
    position: relative;
    box-shadow: 0 0 0 1px currentcolor
}

.pagination-custom__inner {
    display: flex;
    justify-content: center;
    margin: 0 32px
}

.pagination-custom__next {
    --link: var(--text)
}

@media only screen and (min-width: 750px) {
    .pagination-custom__prev,.pagination-custom__next {
        padding:5px;
        display: inline-block
    }
}

@media only screen and (min-width: 480px) {
    .pagination-custom__prev .icon,.pagination-custom__next .icon {
        display:none
    }
}

@media only screen and (max-width: 749px) {
    .pagination-custom__page {
        margin:8px
    }

    .pagination-custom__sep {
        margin: 8px 2px
    }

    .pagination-custom__prev,.pagination-custom__next {
        display: flex;
        flex: 1 0 0;
        margin: 0
    }

    .pagination-custom__prev {
        justify-content: flex-start
    }

    .pagination-custom__next {
        justify-content: flex-end
    }

    .pagination-custom__inner {
        flex-grow: 0;
        margin: 0 10px
    }
}

@media only screen and (max-width: 479px) {
    .pagination-custom__prev,.pagination-custom__next {
        margin:0 -4px
    }

    .pagination-custom__prev span,.pagination-custom__next span {
        display: none
    }
}

.pagination--infinite {
    text-align: center
}

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

.pagination__loading .btn__loader {
    opacity: 1;
    visibility: visible
}

.pagination__loading .btn__loader circle~circle {
    animation-play-state: running
}

.footer-sections {
    position: relative;
    padding-bottom: var(--cart-bar-height,0)
}

.footer-sections a:not(.btn) {
    transition: color 0.25s ease,background 0.25s ease
}

.site-footer-wrapper {
    overflow: hidden
}

.footer__logo__wrapper {
    padding: var(--inner) 0
}

.footer__logo {
    display: inline-block;
    max-width: 100%
}

.footer__blocks {
    display: flex;
    flex-flow: column;
    position: relative;
    margin: 0 calc(var(--gutter) / -2) var(--gutter-offset);
    overflow-wrap: anywhere
}

.footer__blocks ul {
    margin: 0
}

@media only screen and (min-width: 750px) {
    .footer__blocks {
        flex-flow:row wrap
    }
}

@media only screen and (max-width: 749px) {
    .footer__blocks {
        padding:0 calc(var(--gutter) / 2)
    }
}

@media only screen and (min-width: 750px) {
    .footer__blocks .accordion {
        margin-top:0;
        border: none
    }
}

@media only screen and (max-width: 749px) {
    .footer__blocks .accordion {
        margin-bottom:0
    }
}

@media only screen and (min-width: 750px) {
    .footer__blocks .accordion__title {
        padding:0;
        margin: 0.5em 0 1em
    }
}

.footer__block {
    flex: 1 0 100%;
    margin-bottom: var(--gutter)
}

@media only screen and (min-width: 990px) {
    .footer__block {
        flex:0 0 var(--desktop-width)
    }
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .footer__block {
        flex-basis:50%
    }
}

@media only screen and (min-width: 750px) {
    .footer__block {
        padding:0 calc(var(--gutter) / 2)
    }
}

@media only screen and (max-width: 749px) {
    .accordion+.footer__block:not(.accordion) .footer__block__title {
        margin-top:1.5rem
    }
}

@media only screen and (min-width: 750px) {
    .footer__block--divider {
        position:relative;
        display: flex;
        padding: 0;
        pointer-events: none
    }

    .footer__block--divider .divider-holder {
        display: flex;
        justify-content: center;
        flex: 0 1 100%;
        margin: 0
    }

    .footer__block--divider .divider {
        height: 100%;
        border-width: 0 0 0 1px;
        border-style: solid
    }
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .footer__block--divider {
        position:absolute;
        top: 0;
        left: 50%;
        bottom: 0
    }
}

@media only screen and (min-width: 750px) {
    body.grid-compact .footer__block--divider--inline {
        margin-bottom:calc((var(--padding-bottom) * -1) + var(--gutter))
    }

    body.grid-compact .footer__blocks:only-child .footer__block--divider--inline {
        margin-top: calc((var(--padding-top) * -1))
    }
}

.footer__block .social-link {
    color: var(--link)
}

.footer__block .social-link:hover {
    color: var(--link-hover)
}

.footer__block__title {
    font-weight: var(--FONT-WEIGHT-HEADING)
}

@media only screen and (min-width: 750px) {
    .footer__block__title {
        margin-bottom:1em
    }
}

.footer__block__image {
    max-width: 100%;
    margin-bottom: var(--inner)
}

.footer__newsletter__wrapper {
    max-width: 440px
}

.footer__quicklinks {
    font-size: var(--font-body-medium)
}

.footer__quicklinks li {
    margin: 0 0 1.25em
}

.footer__quicklinks li:last-child {
    margin-bottom: 2px
}

.footer__quicklinks li a {
    position: relative
}

.footer__quicklinks li a::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 1px;
    background-color: var(--link);
    transition: width 0.3s cubic-bezier(0.39,0.575,0.565,1)
}

@media (hover: hover) {
    .footer__quicklinks li:hover a::after {
        width:100%
    }
}

.footer__social__text,.footer__newsletter__text {
    margin-bottom: 15px
}

tabs-component,native-scrollbar {
    display: block;
    position: relative
}

.tabs-wrapper {
    overflow: hidden;
    position: relative
}

.tabs__head {
    z-index: 2;
    overflow: hidden
}

.tabs__head .tabs__arrow::before {
    display: block
}

.tabs__arrow {
    --bg: var(--COLOR-BG);
    --icon-size: 24px;
    position: absolute;
    top: 50%;
    display: flex;
    align-items: center;
    width: calc(var(--icon-size) + 8px);
    height: var(--icon-size);
    max-height: none;
    margin-top: calc(var(--icon-size) / -2);
    padding: 0 4px 6px;
    border-radius: 0;
    box-shadow: none;
    transition: all 0.2s
}

.tabs__arrow::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    display: none;
    width: 100%;
    height: 200%;
    transform: translateY(-50%);
    background: linear-gradient(to right,var(--bg) 78%,transparent 100%)
}

.tabs__arrow .icon {
    position: relative;
    z-index: 5
}

.tabs__arrow .tabs__arrow--prev {
    left: 0;
    margin-left: calc(var(--icon-size) / 2 * -1)
}

.tabs__arrow--next {
    right: 0;
    margin-right: calc(var(--icon-size) / 2 * -1)
}

.tabs__arrow--next::before {
    transform: translateY(-50%) rotateY(180deg)
}

.tabs {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
    margin: 0;
    padding: 5px 0;
    list-style: none;
    position: relative;
    scrollbar-width: none;
    -ms-overflow-style: none
}

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

.tabs>li {
    --text: var(--text-light);
    font-size: var(--BTN-FONT-SIZE);
    font-family: var(--BTN-FONT-STACK);
    font-weight: var(--BTN-FONT-WEIGHT);
    font-style: var(--BTN-FONT-STYLE);
    text-transform: var(--BTN-UPPERCASE);
    letter-spacing: var(--BTN-LETTER-SPACING);
    display: inline-block;
    padding: 10px 0;
    margin: 0 30px 0 0;
    cursor: pointer;
    vertical-align: bottom
}

@media (hover: hover) {
    .tabs>li .icon-nav-arrow-right {
        transition:transform 0.5s ease;
        transform: translateZ(0)
    }

    .tabs>li:hover .icon-nav-arrow-right {
        transform: translate3d(5px,0,0)
    }
}

.tabs>li span {
    position: relative
}

.tabs>li span:first-of-type::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 1px;
    background-color: var(--link);
    transition: width 0.3s cubic-bezier(0.39,0.575,0.565,1)
}

@media (hover: hover) {
    .tabs>li:hover span:first-of-type::after {
        width:100%
    }
}

.tabs>li.current {
    --text: var(--text-dark)
}

.tabs>li.current span:first-of-type::after {
    width: 100%
}

.tabs>li.current:only-child {
    cursor: default
}

.tabs>li.current:only-child span {
    text-decoration: none
}

.tabs>li>*:not(span) {
    margin: 0;
    font-family: inherit;
    font-style: inherit;
    font-weight: inherit;
    line-height: initial;
    letter-spacing: inherit;
    text-transform: inherit
}

.tabs.text-center>li {
    margin: 0 15px
}

.tab-content {
    position: absolute;
    top: 0;
    width: 100%;
    padding: 15px 15px 15px 0;
    min-height: 6rem;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    content-visibility: hidden
}

.tab-content.current {
    position: static;
    display: inherit;
    pointer-events: auto;
    opacity: 1;
    visibility: visible;
    content-visibility: visible
}

.tab-content:not(.current) figure {
    display: none
}

.tab__title {
    padding: 0 var(--outer)
}

.tab__title:not(:last-child) {
    margin-bottom: var(--gutter)
}

.product-tabs {
    max-width: 100%
}

.product-tabs ul.tabs {
    scrollbar-width: none;
    -ms-overflow-style: none
}

.product-tabs ul.tabs::-webkit-scrollbar {
    display: none
}

.product-tabs ul.tabs::-webkit-scrollbar {
    -webkit-appearance: none;
    appearance: none;
    width: 0;
    height: 0
}

.product-tabs ul.tabs>li {
    padding-bottom: 0;
    border-bottom-width: 1px;
    white-space: normal
}

.product-tabs ul.tabs>li:last-child {
    margin-right: 0
}

.product-tabs__head {
    padding-bottom: 16px;
    margin-bottom: -13px
}

.index-tab-collections .btn,.index-tab-collections #challenge .shopify-challenge__button,#challenge .index-tab-collections .shopify-challenge__button,.index-tab-collections .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .index-tab-collections .shopify-payment-button__button--unbranded {
    max-width: 100%
}

.index-tab-collections .tabs-collections {
    position: relative
}

.index-tab-collections .tabs__nav {
    flex: 0 1 auto
}

.index-tab-collections .tabs__nav:only-child {
    flex: 1 1 auto
}

.index-tab-collections .tabs {
    display: block;
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    margin: 0 auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.index-tab-collections .tabs::-webkit-scrollbar {
    display: none
}

.index-tab-collections .tab-link {
    padding: 5px 0
}

.index-tab-collections .tab-link:first-child {
    margin-left: 0
}

.index-tab-collections .tab-link:last-child {
    margin-right: 0
}

.index-tab-collections .tab-content {
    padding: 0;
    min-height: 0
}

.index-tab-collections .grid__heading-image .svg-placeholder {
    color: #BBB;
    background: #CCC
}

@media only screen and (min-width: 750px) {
    .index-tab-collections .tabs-collections__head .grid__heading-holder:not(.grid__heading-holder--inline) .grid__heading-text:not(:last-child) {
        margin-bottom:var(--gutter)
    }
}

@media only screen and (max-width: 749px) {
    .index-tab-collections .tabs-collections__head .grid__heading-holder {
        margin-bottom:0
    }

    .index-tab-collections .tabs-collections__head .grid__heading-text {
        margin-bottom: calc(var(--gutter) * 2)
    }

    .index-tab-collections .tabs-collections__head .grid__heading-actions {
        margin-bottom: var(--gutter)
    }
}

.product__block--accordion .drawer__body {
    padding: var(--inner)
}

.product__block--accordion .accordion__title {
    --icon-size: 16px;
    width: 100%;
    padding-top: 1rem;
    padding-bottom: 1rem
}

.product__block--accordion .accordion__title .icon {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%)
}

.product__block--accordion:first-of-type .accordion {
    margin-top: 0
}

.product__block--accordion-clear+.product__block--accordion .product-accordion {
    padding-top: 0
}

compare-images {
    --btn-size: 50px;
    position: relative;
    display: block;
    overflow: hidden;
    height: 100%
}

@media only screen and (min-width: 750px) {
    .image-height compare-images {
        height:auto;
        min-height: 100%;
        padding-top: calc(1 / var(--aspect-ratio) * 100%)
    }

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

@media only screen and (max-width: 749px) {
    .image-height--mobile compare-images {
        height:auto;
        min-height: 100%;
        padding-top: calc(1 / var(--aspect-ratio) * 100%)
    }

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

.compare__image {
    position: relative
}

.compare {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
}

.compare,.compare__image {
    height: 100%;
    padding: 0
}

.compare__image__holder .image-wrapper,.compare__image--overlap,.compare__image__holder {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    overflow: hidden;
    width: 100%;
    height: 100%
}

.compare__btn-holder {
    position: absolute;
    top: 50%;
    z-index: 3;
    left: calc(var(--btn-size) / 2);
    right: calc(var(--btn-size) / 2);
    margin-top: calc(var(--btn-size) / -2)
}

.compare__btn {
    --bg: var(--COLOR-BG);
    position: relative;
    left: 50%;
    display: flex;
    width: var(--btn-size);
    height: var(--btn-size);
    border-radius: var(--radius);
    background: var(--bg);
    cursor: move;
    transition: color 0.3s ease;
    transform: translateX(-50%)
}

.compare__btn:active {
    color: var(--link-hover)
}

.compare__input {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 5;
    padding: 0;
    margin: 0;
    cursor: move;
    opacity: 0;
    width: 100%;
    height: 100%
}

.compare__input::-webkit-slider-thumb {
    transform: scale(4)
}

.compare__btn .icon {
    --icon-size: 36px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto
}

.brick__section {
    display: flex;
    flex-wrap: wrap;
    width: 100%
}

@media only screen and (min-width: 750px) {
    .brick__section {
        flex-wrap:nowrap
    }
}

.brick__slider:not(.flickity-enabled) {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.brick__slider:not(.flickity-enabled)::-webkit-scrollbar {
    display: none
}

.brick__slider:not(.flickity-enabled) .brick__section {
    min-width: 100%
}

.brick__slider .flickity-page-dots {
    bottom: 20px
}

@media only screen and (max-width: 749px) {
    .brick__slider .flickity-page-dots {
        padding:0 calc(var(--outer) * 2)
    }

    .text-left .brick__slider .flickity-page-dots {
        justify-content: flex-start
    }

    .brick__slider[data-dots=line] .hero__content,.brick__slider[data-dots=circle] .hero__content {
        padding-bottom: 20px
    }
}

.brick__slider--optional-images[data-dots=line],.brick__slider--optional-images[data-dots=circle] {
    padding-bottom: 0
}

@media only screen and (min-width: 750px) {
    .brick__slider--optional-images .flickity-page-dots {
        width:50%;
        right: 0
    }

    .brick__slider--optional-images:has(.brick__block--three-quarters) .flickity-page-dots {
        width: 35%
    }
}

body.has-line-design .brick__block .hero__slide {
    border: 0
}

.text-left .brick__block__text .flickity-page-dots {
    justify-content: flex-start
}

.brick__block {
    --bg: var(--COLOR-BG);
    --icons: var(--text);
    flex: 0 1 100%;
    width: 100%;
    color: var(--text);
    background: var(--bg);
    overflow-wrap: anywhere
}

@media only screen and (min-width: 750px) {
    .brick__block {
        flex:1 1 50%
    }
}

.flex-column .brick__block {
    flex-grow: 0
}

.brick__block .grid-item {
    display: block
}

.brick__block--transparent {
    --bg: transparent
}

.brick--margin {
    gap: var(--gap)
}

.brick--border .brick__block {
    border: 1px solid var(--border)
}

@media only screen and (min-width: 750px) {
    .brick__section--reversed .brick__block:nth-child(2):last-child {
        order:-1
    }
}

@media only screen and (max-width: 749px) {
    .brick__section--reversed-mobile .brick__block:nth-child(2):last-child {
        order:-1
    }
}

@media only screen and (min-width: 750px) {
    .brick__block.is-sticky {
        align-self:flex-start;
        position: sticky;
        top: 0;
        min-height: inherit
    }
}

.brick__block__text {
    height: 100%;
    display: flex;
    align-items: center;
    padding: var(--outer);
    background: var(--bg);
    margin: 0 auto
}

@media only screen and (min-width: 1400px) {
    .brick__block__text {
        flex-basis:76%
    }
}

@media only screen and (min-width: 990px) and (max-width:1399px) {
    .brick__block__text {
        flex-basis:84%
    }
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .brick__block__text {
        flex-basis:90%
    }
}

@media only screen and (max-width: 749px) {
    .brick__block__text {
        padding-left:0;
        padding-right: 0;
        width: 100%
    }
}

.brick__block__text--column {
    flex-direction: column
}

.brick__block__text.has-padding,.brick__block__collection.has-padding {
    padding: var(--outer)
}

@media only screen and (max-width: 749px) {
    .brick__block__collection.has-padding .look__slider {
        margin-left:var(--outer-offset);
        margin-right: var(--outer-offset);
        padding-left: var(--outer)
    }
}

.brick__section--reversed .brick__block:last-child .brick__block__text:not(.has-padding),.brick__block:first-child .brick__block__text:not(.has-padding) {
    padding-left: 0
}

.wrapper--full.brick__section--reversed .brick__block:last-child .brick__block__text:not(.has-padding),.wrapper--full .brick__block:first-child .brick__block__text:not(.has-padding) {
    padding-left: var(--outer)
}

@media only screen and (max-width: 749px) {
    .wrapper--full .brick__block__text:not(.has-padding) {
        padding-left:var(--outer);
        padding-right: var(--outer)
    }
}

.brick__block__text.has-padding,.wrapper--full .brick__block__text.has-padding {
    padding-left: var(--outer)
}

@media only screen and (min-width: 750px) {
    .brick--border:not(.brick--margin) .brick__block:last-of-type:not(:only-child) {
        border-left:none
    }

    .brick__block__video .image-height,.brick__block__image .image-height {
        flex: 1;
        min-height: 100%
    }

    .brick__block__video,.brick__block__image,.brick__block__video .image__hero__frame:not(.image-height),.brick__block__image .image__hero__frame:not(.image-height) {
        height: 100%
    }
}

@media only screen and (max-width: 749px) {
    .brick--border:not(.brick--margin) .brick__block:last-of-type:not(:only-child) {
        border-top:none
    }

    .brick__block__video .image-height--mobile,.brick__block__image .image-height--mobile {
        min-height: 100%
    }

    .brick__block__video .image__hero__frame:not(.image-height--mobile),.brick__block__image .image__hero__frame:not(.image-height--mobile) {
        height: 100%
    }
}

.image__video__play {
    --button-min-size: calc(var(--BTN-FONT-SIZE) * var(--line-height-normal) + var(--btn-top) * 2 + 2px);
    width: unset;
    min-width: var(--button-min-size);
    min-height: var(--button-min-size);
    max-width: unset;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: var(--btn-top);
    padding-left: calc(var(--btn-top) + 1px)
}

.image__video__play .icon-play {
    --icon-size: var(--BTN-FONT-SIZE);
    margin: 0
}

.brick__product__subheading {
    padding-bottom: var(--gutter);
    margin: 0
}

.brick__product {
    display: block;
    width: 100%;
    max-width: 350px;
    margin: 0 auto
}

.brick__product .product-item__info[href="#"] {
    pointer-events: none
}

.brick__product .product-item__info .price {
    margin-top: 5px
}

.brick__product .product-item__title {
    margin: 0 0 5px
}

.brick__product .product-item--overlay-text .product-information {
    padding-bottom: calc(var(--inner) / 2)
}

@media only screen and (max-width: 989px) {
    .brick__product .product-item--overlay-text .product-information {
        padding-left:42px;
        padding-right: 42px
    }
}

.brick__block--collection {
    display: flex;
    align-items: flex-start;
    min-width: 0;
    padding-top: var(--outer);
    padding-bottom: var(--outer)
}

@media only screen and (min-width: 750px) {
    .brick__block--collection .look__slider {
        max-width:500px
    }

    .brick__block--collection .look__slider:not(.flickity-enabled) .look__slide:not(:first-child) {
        display: none
    }

    .brick__block--collection .look__slider.is-loading .look__slide:not(:first-child) {
        opacity: 0;
        visibility: hidden
    }
}

@media only screen and (max-width: 749px) {
    .brick__block--collection {
        min-height:0
    }

    .brick__block--collection .look__slider {
        margin-left: var(--outer-offset);
        margin-right: var(--outer-offset)
    }

    .brick--border .brick__block--collection .look__slider {
        margin-left: 0;
        margin-right: 0;
        padding-left: 0;
        scroll-padding: 0
    }

    .brick--border .brick__block--collection .look__slider::after {
        content: none
    }

    .brick--border .brick__block--collection .look__slider .selector-wrapper__actions {
        overflow: hidden
    }
}

.brick__block__collection {
    flex: 1;
    max-width: 100%
}

.brick__block__collection .product-item {
    margin-top: 0
}

.brick__block__collection .product-item__price {
    white-space: nowrap
}

@media only screen and (max-width: 749px) {
    .wrapper--full .brick__block__collection {
        margin-left:var(--outer);
        margin-right: var(--outer);
        max-width: calc(100% - var(--outer) * 2)
    }
}

body.grid-compact.has-line-design .brick__block__collection .look__slide {
    padding: 1px 1px 0 0
}

@media only screen and (min-width: 750px) {
    .brick__block__collection .look__aside {
        padding-top:var(--outer);
        padding-bottom: var(--outer)
    }
}

.brick__block--compare {
    overflow: hidden
}

.brick__block__compare {
    height: 100%
}

.brick__block__compare .compare__image {
    padding: 0
}

.brick__block--images {
    display: flex
}

@media only screen and (max-width: 749px) {
    .brick__block--images.desktop {
        display:none
    }
}

@media only screen and (max-width: 749px) {
    .brick__block--images[data-slider] {
        display:block
    }
}

@media only screen and (max-width: 749px) {
    .brick__block--images[data-slider]::after {
        content:"flickity";
        display: none
    }
}

.brick__section-missing-metafield-image {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    background: var(--bg-accent);
    color: var(--COLOR-TEXT-BTN-BG-BLACK)
}

.brick__block__image {
    position: relative
}

.brick__block--image-slider {
    display: block
}

.brick__block--image-slider .brick__block__image {
    width: 100%
}

.brick__block--image-slider[data-slider]::after {
    content: "flickity";
    display: none
}

.brick__block--images .brick__block__image {
    flex: 1;
    display: flex;
    min-height: 100%
}

@media only screen and (min-width: 750px) {
    .brick__block--images .brick__block__image {
        transform:translateX(0)!important
    }
}

@media only screen and (max-width: 749px) {
    .brick__block--images[data-slider] .brick__block__image {
        display:block;
        width: 100%
    }
}

@media only screen and (min-width: 750px) {
    .brick__block--three-quarters {
        flex:0 0 65%
    }
}

.brick__block--text {
    display: flex
}

.brick__block--text .hero__content--compact {
    flex-basis: 100%
}

@media only screen and (max-width: 749px) {
    .brick__block--text {
        max-width:100%
    }

    .brick__block--text .hero__content--compact {
        flex: 1;
        padding: var(--outer) var(--outer) calc(var(--outer) - var(--line));
        margin-bottom: 0
    }

    .brick__block--text .hero__content--no-padding {
        padding-left: 0;
        padding-right: 0
    }
}

.has-line-design .brick__block--slider .grid-item {
    border: none
}

@media only screen and (max-width: 749px) {
    .brick__block--slider .hero__content {
        flex-direction:row
    }
}

@media only screen and (min-width: 750px) {
    .hero__content:not(.flickity-enabled) .hero__slide:not(:first-child) {
        position:absolute;
        top: 0;
        left: 0;
        visibility: hidden
    }
}

.brick__block--password {
    flex: 1 0 50%;
    margin: 0 auto;
    padding: 0 var(--outer)
}

.brick__block--password .brick__block__text {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    margin: 0 auto;
    padding: var(--outer) 0
}

.brick__block__logo {
    margin: auto;
    max-width: 100%
}

.brick__block__content {
    display: grid;
    grid-template-columns: 100%;
    gap: var(--gap);
    margin-bottom: var(--gap);
    width: 100%
}

.brick__block__menu {
    margin: calc(var(--inner-offset) / 2)
}

.brick__block__menu .btn,.brick__block__menu #challenge .shopify-challenge__button,#challenge .brick__block__menu .shopify-challenge__button,.brick__block__menu .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .brick__block__menu .shopify-payment-button__button--unbranded {
    margin: calc(var(--inner) / 2);
    vertical-align: middle
}

.brick__block__newsletter .contact-form {
    display: inline-block;
    max-width: 260px;
    width: 100%
}

.brick__block__newsletter .form__legal {
    margin-top: var(--line);
    text-align: center
}

.brick__block__newsletter .field {
    margin-bottom: var(--inner);
    text-align: center
}

.brick__block__actions {
    flex: 0 1 100%;
    margin-bottom: var(--inner)
}

.brick__block__actions+.brick__block__actions {
    padding-top: var(--inner)
}

.brick__block__title {
    margin: 0
}

.brick__block__powered {
    margin-bottom: var(--inner)
}

.brick__block__social {
    overflow: hidden
}

.brick__section--accordion .brick__block--images {
    align-self: flex-start
}

@media only screen and (min-width: 750px) {
    .brick__block--products:first-child {
        padding-right:var(--gutter)
    }

    .brick__block--products:last-child {
        padding-left: var(--gutter)
    }
}

@media only screen and (max-width: 749px) {
    .brick__block--products {
        display:block;
        max-width: 100%;
        padding-top: var(--inner);
        padding-bottom: var(--inner)
    }
}

.brick__block--products .grid-outer {
    padding: 0
}

.video-background {
    width: 100%
}

@media only screen and (min-width: 750px) {
    .video-background.image-height {
        aspect-ratio:var(--aspect-ratio,1)
    }
}

@media only screen and (max-width: 749px) {
    .video-background.image-height--mobile {
        aspect-ratio:var(--aspect-ratio,1)
    }
}

.video__poster,.video__poster .image__hero__frame {
    min-height: inherit
}

.video__player {
    position: absolute;
    top: 50%;
    left: 50%;
    min-height: 100%;
    min-width: 100%;
    width: 100%;
    height: 100%;
    transform: translate(-50%,-50%);
    overflow: hidden;
    transition: opacity 0.5s ease
}

.video__player.is-loading {
    opacity: 0
}

.video__player video {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.hero__content__wrapper .video-background {
    position: relative;
    display: grid;
    width: var(--video-width,auto);
    height: auto;
    max-height: 100%;
    overflow: hidden;
    aspect-ratio: var(--aspect-ratio,1)
}

.hero__content__wrapper .video-background .image-wrapper {
    height: 100%;
    padding-top: 0
}

@media only screen and (max-width: 749px) {
    .hero__content__wrapper .video-background {
        width:100%
    }
}

.hero__content__wrapper .hero__video {
    position: absolute;
    inset: var(--video-inset-top) var(--video-inset-right) var(--video-inset-bottom) var(--video-inset-left);
    max-height: calc(100% - (var(--video-inset-top) + var(--video-inset-bottom)));
    max-width: calc(100% - (var(--video-inset-left) + var(--video-inset-right)));
    padding-top: inherit;
    align-items: var(--alignment-align-items);
    justify-content: var(--alignment-justify-content);
    text-align: var(--alignment-text-align)
}

@media only screen and (max-width: 989px) {
    .hero__content__wrapper .hero__video~.hero__content {
        width:calc(100% - var(--outer))
    }
}

.map__content {
    padding: 0
}

map-component {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2
}

.map__columns {
    display: flex;
    align-items: stretch
}

@media only screen and (max-width: 749px) {
    .map__columns {
        flex-direction:column-reverse
    }
}

.map__column {
    position: relative;
    overflow: hidden;
    float: none;
    min-height: inherit
}

.map__column--content {
    display: flex;
    flex: 1;
    padding: var(--outer)
}

@media only screen and (min-width: 990px) {
    .map__column--map {
        flex:1 0 66.66%
    }
}

@media only screen and (max-width: 989px) {
    .map__column--map {
        flex:1 0 50%
    }
}

.slideshow {
    position: relative;
    height: auto;
    overflow: hidden;
    transition: min-height 0.5s linear
}

.slideshow .hero__content__wrapper {
    pointer-events: none
}

.slideshow .hero__content__wrapper a {
    pointer-events: auto
}

.slideshow .flickity-viewport {
    min-height: inherit
}

.slideshow .flickity-enabled {
    min-height: inherit
}

.slideshow .flickity-enabled.is-loading .flickity-viewport {
    transition: none
}

.slideshow .flickity-prev-next-button.previous {
    left: calc(var(--btn-size) / 2)
}

.slideshow .flickity-prev-next-button.next {
    right: calc(var(--btn-size) / 2)
}

.slideshow .slideshow__slide {
    color: var(--text);
    width: 100%
}

.slideshow .slideshow__slide--onboarding {
    display: flex;
    justify-content: center;
    align-items: center
}

.slideshow .slideshow__slide--onboarding .image-overlay {
    z-index: -1;
    opacity: 1
}

.slideshow .flickity-page-dots {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    margin: 0;
    padding: 0 10px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    list-style: none
}

@media only screen and (max-width: 989px) {
    .slideshow .flickity-page-dots {
        padding-bottom:10px
    }
}

.slideshow .hero__content {
    margin: var(--outer)
}

.slideshow .hero__content--transparent {
    padding: var(--outer) var(--outer) calc(var(--outer) - var(--line));
    margin: 0
}

.slideshow__slider--zoom-out .image__fill img {
    will-change: opacity,transform;
    transform: scale(1.2);
    transition: transform 2s cubic-bezier(0.215,0.61,0.355,1)
}

.slideshow__slider--zoom-out .is-selected .image__fill img {
    opacity: 1;
    transform: scale(1)
}

.slideshow__slider--wipe .slideshow__slide {
    opacity: 1!important
}

.slideshow__slider--wipe.is-loading .slideshow__slide,.slideshow__slider--wipe .slideshow__slide.is-selected {
    transition: none
}

.slideshow__slider--wipe .is-selected .hero__image {
    animation: clipPathFromRight 0.5s ease-out;
    animation-fill-mode: both
}

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

    100% {
        -webkit-clip-path: polygon(0 0,100% 0,100% 100%,0 100%);
        clip-path: polygon(0 0,100% 0,100% 100%,0 100%);
        transform: translateX(0)
    }
}

.slideshow__slide>a {
    min-height: 100%;
    height: 100%;
    color: inherit
}

.slideshow__slider:not(.flickity-enabled) .slideshow__slide:not(:first-of-type) {
    position: absolute;
    top: 0;
    left: 0;
    visibility: hidden
}

.share-holder {
    position: relative;
    display: block;
    z-index: 2
}

.sharing-button {
    display: inline-flex;
    padding: 10px 0;
    cursor: pointer;
    text-align: left
}

.sharing-button .icon {
    flex-shrink: 0
}

.sharing-button__text {
    font-size: var(--BTN-FONT-SIZE);
    font-family: var(--BTN-FONT-STACK);
    font-weight: var(--BTN-FONT-WEIGHT);
    font-style: var(--BTN-FONT-STYLE);
    text-transform: var(--BTN-UPPERCASE);
    letter-spacing: var(--BTN-LETTER-SPACING);
    align-self: center;
    position: relative;
    margin-left: 6px;
    line-height: 1.4
}

@media (hover: hover) {
    .sharing-button__text .icon-nav-arrow-right {
        transition:transform 0.5s ease;
        transform: translateZ(0)
    }

    .sharing-button__text:hover .icon-nav-arrow-right {
        transform: translate3d(5px,0,0)
    }
}

.share-button__message {
    --bg: var(--COLOR-BG);
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 5;
    margin-top: 2px;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    pointer-events: none
}

.share-button__message.is-visible {
    visibility: visible;
    animation: showMessage 3s ease;
    animation-fill-mode: both
}

.share-button__message::after {
    content: "";
    position: absolute;
    z-index: 2;
    top: -1px;
    left: 22px;
    width: 12px;
    height: 12px;
    background: var(--bg);
    border: 1px solid var(--border);
    -webkit-clip-path: polygon(0% 0%,100% 100%,0 100%);
    clip-path: polygon(0% 0%,100% 100%,0 100%);
    transform: rotate(135deg) translateX(-50%)
}

.share-button__message--right {
    right: 0;
    left: auto
}

.share-button__message--right::after {
    right: 22px;
    left: auto
}

.share-button__message-text {
    position: relative;
    display: block;
    border: 1px solid var(--border);
    padding: 3px 10px;
    color: var(--text-dark);
    background: var(--bg);
    font-size: var(--font-body-small);
    line-height: normal;
    text-align: center;
    white-space: nowrap;
    text-overflow: ellipsis
}

@keyframes showMessage {
    0% {
        opacity: 0;
        transform: translateY(-4px)
    }

    15% {
        opacity: 1;
        transform: translateZ(0)
    }

    90% {
        opacity: 1;
        transform: translateZ(0)
    }

    100% {
        opacity: 0;
        transform: translateY(-4px)
    }
}

.socials {
    --gap: 8px;
    --gap-offset: calc(var(--gap) * -1);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: var(--gap-offset);
    list-style: none
}

.socials li {
    margin: var(--gap)
}

.socials:empty {
    display: none
}

.socials--newsletter {
    margin-top: calc(var(--inner) - var(--gap))
}

.socials--mobile-menu {
    display: block
}

.text-center .socials {
    justify-content: center
}

.social-link {
    --link: var(--text);
    --icons: var(--text);
    height: var(--icon-size);
    width: var(--icon-size);
    color: var(--link)
}

.social-link:hover {
    color: var(--link-hover)
}

.social-video__item {
    position: relative;
    display: flex;
    flex-direction: column;
    aspect-ratio: var(--SOCIAL-VIDEO-ASPECT-RATIO);
    overflow: hidden
}

.social-video__wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.social-video__thumbnail {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center
}

.social-video__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease
}

.social-video__video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.3s ease
}

.social-video__video video {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.social-video__item.is-playing .social-video__video {
    opacity: 1
}

.social-video__item.is-playing .social-video__button .icon-play {
    display: none
}

.social-video__item.is-playing .social-video__button .icon-pause {
    display: flex
}

.social-video__content {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: var(--alignment-align-items);
    justify-content: var(--alignment-justify-content);
    position: absolute;
    top: 0;
    left: 0;
    padding: var(--inner);
    cursor: pointer
}

.social-video__button-wrapper {
    display: flex;
    align-items: center;
    gap: calc(var(--inner) / 4);
    background: var(--bg);
    padding: calc(var(--inner) / 4);
    border-radius: var(--radius)
}

.social-video__text {
    font-size: var(--body-medium);
    color: var(--text)
}

.social-video__button {
    --icons: var(--text);
    --icon-size: 20px;
    width: var(--icon-size);
    height: var(--icon-size);
    padding: 0;
    cursor: pointer;
    transition: none
}

.social-video__button .icon-pause {
    display: none
}

.logos {
    padding-left: 0;
    padding-right: 0;
    overflow: hidden
}

.logos .container {
    background-color: initial
}

.logos__wrapper {
    display: flex;
    flex-direction: column;
    position: relative;
    text-align: center;
    overflow-wrap: anywhere
}

.logos__wrapper .logos__slider {
    width: 100%
}

.logos__wrapper .logos__slider.is-initialized::after {
    content: "flickity";
    display: none
}

.logos__title {
    margin-bottom: 30px
}

.logos__title:first-child {
    margin-top: 0
}

.logos__logo {
    opacity: var(--logo-opacity);
    width: 200px;
    padding: 0 10px;
    transition: opacity 0.3s ease
}

@media only screen and (max-width: 749px) {
    .logos__logo {
        width:auto;
        padding: 0 var(--gutter)
    }
}

.logos-press .logos__logo {
    cursor: pointer
}

.logos__img {
    display: block;
    margin: 0 auto
}

.logos__img.svg-placeholder {
    background-color: #fff0
}

.logos__slider__outer {
    position: relative;
    width: 100%;
    order: 1;
    height: 100%;
    margin: auto
}

@media only screen and (max-width: 749px) {
    .logos__slider__outer {
        overflow:hidden;
        max-width: none;
        width: auto;
        margin-left: var(--gutter-offset);
        margin-right: var(--gutter-offset)
    }
}

.logos__slider:not(.flickity-enabled) {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row
}

.logos__slider .flickity-slider {
    display: flex;
    justify-content: center;
    align-items: center
}

.logos__slide {
    display: flex;
    flex: 0 0 auto;
    width: auto;
    padding: 0
}

.logos__slide__link {
    display: block
}

@media only screen and (max-width: 749px) {
    .logos__slider:not(.flickity-enabled) {
        overflow-x:auto;
        display: block;
        padding: 0 var(--gutter);
        white-space: nowrap;
        font-size: 0;
        text-align: center;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        -ms-overflow-style: none
    }

    .logos__slider:not(.flickity-enabled)::-webkit-scrollbar {
        display: none
    }

    .logos__slide {
        display: inline-block;
        vertical-align: middle
    }
}

.logos__slide a:hover .logos__logo,.logos__slide.is-selected .logos__logo,.logos__slide.is-active .logos__logo {
    opacity: 1
}

.logos__slider-text {
    width: 100%;
    padding-bottom: 10px;
    margin-bottom: 20px;
    overflow: hidden
}

.logos__slider-text:not(.flickity-enabled) {
    display: flex;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.logos__slider-text:not(.flickity-enabled)::-webkit-scrollbar {
    display: none
}

.logos__slider-text .flickity-viewport {
    overflow: visible;
    height: auto!important
}

.logos__slider-text .flickity-slider {
    position: relative;
    display: grid;
    grid-template-columns: 1fr
}

.logos__slider-text .logos__slide {
    grid-row-start: 1;
    grid-column-start: 1;
    position: relative;
    display: flex;
    align-items: center;
    min-height: 100%;
    width: 100%
}

.logos__slide__text {
    flex: 1;
    text-align: center;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-100%);
    transition: transform 0.25s ease-in,opacity 0.2s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.is-selected .logos__slide__text {
    transform: none;
    opacity: 1;
    animation: fadeInUp 0.3s ease-out;
    animation-delay: 0.3s;
    animation-fill-mode: backwards
}

.section-sidebar {
    background: var(--bg)
}

.section-sidebar__body {
    display: flex;
    margin: 0 calc(var(--gutter)/2 * -1)
}

@media only screen and (max-width: 749px) {
    .section-sidebar__body {
        display:block;
        margin: 0
    }
}

.section-sidebar__aside {
    flex: 0 0 33.33%;
    padding: 0 calc(var(--gutter)/2)
}

@media only screen and (max-width: 749px) {
    .section-sidebar__aside {
        display:none;
        padding: 0
    }
}

.section-sidebar__widget {
    position: sticky;
    top: 0;
    padding-top: calc(1.5rem - 6px)
}

.has-header-sticky .section-sidebar__widget {
    top: var(--header-height)
}

.section-sidebar__content {
    flex: 0 1 100%;
    padding: 0 calc(var(--gutter)/2);
    overflow-wrap: anywhere
}

@media only screen and (max-width: 749px) {
    .section-sidebar__content {
        padding:0
    }
}

.section-sidebar__title {
    padding: 1.5rem 0;
    margin: 0;
    line-height: 1.2
}

.accordion+.section-sidebar__title {
    margin-top: var(--inner)
}

@media only screen and (min-width: 990px) {
    .supporting-menu__inner {
        display:flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center
    }
}

@media only screen and (max-width: 749px) {
    .supporting-menu__inner {
        display:grid;
        grid-template-columns: 100%;
        gap: var(--inner)
    }
}

.supporting-menu__item--copyright {
    flex: 1 1 auto
}

@media only screen and (min-width: 990px) {
    .supporting-menu__item--copyright:last-child:not(:only-child) {
        text-align:right
    }
}

.supporting-menu__item--localization,.supporting-menu__item--payment {
    flex: 1 0 auto
}

.supporting-menu__item--no-borders .popout-footer__holder:first-of-type .popout__toggle {
    padding-left: 0
}

.supporting-menu__item:only-child {
    width: 100%;
    text-align: center
}

.supporting-menu__copyright {
    --gap: 8px;
    --gap-offset: calc(var(--gap) * -1);
    list-style: none;
    margin: 0 var(--gap-offset)
}

@media only screen and (max-width: 749px) {
    .supporting-menu__copyright {
        text-align:left;
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
        min-width: 100%
    }
}

.supporting-menu__copyright li {
    display: inline-block;
    padding: 10px var(--gap)
}

.supporting-menu__payment {
    --gap: 5px;
    --gap-offset: calc(var(--gap) * -1);
    display: flex;
    flex-wrap: wrap;
    margin: var(--gap-offset)
}

@media only screen and (min-width: 990px) {
    .supporting-menu__payment {
        justify-content:flex-end
    }
}

.supporting-menu__payment li {
    display: inline-block;
    padding: var(--gap)
}

.supporting-menu__payment a {
    text-decoration: none
}

.supporting-menu__payment .payment-icon {
    display: block;
    width: 36px
}

related-products,recently-viewed {
    display: block
}

.related__wrapper {
    background: var(--bg)
}

.related__products {
    text-align: center
}

.related__products .tab-link,.related__products .tab-content {
    padding: 0
}

@media only screen and (min-width: 750px) {
    .related__products .grid--slider::after {
        content:"flickity";
        display: none
    }
}

.pswp {
    z-index: 6000
}

.pswp__bg {
    background: rgb(0 0 0 / 0.4)
}

.pswp__img {
    background: var(--bg)
}

.pswp__zoom-wrap {
    display: flex;
    flex-direction: column;
    justify-content: center
}

.pswp__custom-inner {
    max-width: 920px;
    width: 100%;
    padding: 0 10px;
    margin: 0 auto;
    font-size: 0;
    text-align: center;
    letter-spacing: 0
}

.pswp__custom-inner::before {
    display: inline-block;
    width: 0;
    height: 100%;
    vertical-align: middle;
    content: ""
}

.pswp__custom-content {
    display: inline-block;
    width: 100%;
    vertical-align: middle
}

.pswp__custom-native video {
    width: 100%;
    height: auto
}

.pswp__custom-iframe-outer {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%
}

.pswp__custom-iframe-outer>video,.pswp__custom-iframe-outer iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.pswp__custom-close {
    --icon-size: 24px;
    position: absolute;
    top: 50%;
    right: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    color: var(--link);
    background: #fff0;
    border-radius: var(--RADIUS);
    font-size: 0;
    text-decoration: none;
    transform: translate3d(0,-50%,0);
    transition: color 0.3s ease;
    --bg: var(--COLOR-BG);
    top: 60px;
    right: 40px;
    z-index: 4;
    width: 50px;
    height: 50px;
    border: 1px solid var(--border);
    background: var(--bg);
    color: var(--accent);
    text-align: center;
    padding: 15px;
    transition: all 0.3s ease
}

.pswp__custom-close .icon {
    display: block;
    fill: currentcolor;
    pointer-events: none;
    will-change: transform;
    transition: transform 0.4s cubic-bezier(0.4,0,0.22,1)
}

@media (hover: hover) {
    .pswp__custom-close:hover {
        color:var(--link-hover)
    }

    .pswp__custom-close:hover .icon {
        transform: scale(1.25)
    }
}

@media only screen and (max-width: 749px) {
    .pswp__custom-close {
        top:50px;
        right: 10px
    }
}

@media (hover: hover) {
    .pswp__custom-close:hover {
        transform:translate3d(0,-50%,0) scale(1.1)
    }
}

.pswp__counter {
    display: none
}

.pswp__loader {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    transition: opacity 0.4s,visibility 0.4s
}

.pswp__loader-line {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40%;
    margin: auto;
    transform: translate(-50%,-50%)
}

.pswp--not-close-btn .pswp__custom-close {
    display: none
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] {
    position: fixed;
    display: block;
    opacity: 1!important
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__img--placeholder {
    display: none
}

.pswp-zoom-gallery .pswp__loader {
    opacity: 0;
    visibility: hidden;
    transition-delay: 0.8s
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__loader,.pswp-zoom-gallery .pswp__loader {
    z-index: 5;
    display: block;
    background: var(--bg)
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__title,.pswp-zoom-gallery .pswp__title {
    cursor: pointer
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__bg,.pswp-zoom-gallery .pswp__bg {
    background: var(--bg)
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__container,.pswp-zoom-gallery .pswp__container {
    transition: transform 0.7s cubic-bezier(0.645,0.045,0.355,1)
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__scroll-wrap,.pswp-zoom-gallery .pswp__scroll-wrap {
    bottom: 146px;
    height: auto;
    overflow: visible
}

@media only screen and (max-width: 749px) {
    .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__scroll-wrap,.pswp-zoom-gallery .pswp__scroll-wrap {
        bottom:0;
        overflow: hidden
    }
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__zoom-wrap,.pswp-zoom-gallery .pswp__zoom-wrap {
    display: block
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__item,.pswp-zoom-gallery .pswp__item {
    overflow: visible
}

@media only screen and (max-width: 749px) {
    .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__item,.pswp-zoom-gallery .pswp__item {
        overflow:hidden
    }
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--right,.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--left,.pswp-zoom-gallery .pswp__button--arrow--right,.pswp-zoom-gallery .pswp__button--arrow--left {
    --bg: var(--COLOR-BG);
    position: absolute;
    top: 50%;
    left: 40px;
    z-index: 3;
    width: 50px;
    height: 50px;
    border: 1px solid var(--border);
    margin-top: -25px;
    background: var(--bg);
    color: currentcolor;
    transition: all 0.3s cubic-bezier(0.215,0.61,0.355,1)
}

@media only screen and (max-width: 749px) {
    .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--right,.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--left,.pswp-zoom-gallery .pswp__button--arrow--right,.pswp-zoom-gallery .pswp__button--arrow--left {
        left:10px;
        transform: translateY(0)
    }
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--right:hover,.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--left:hover,.pswp-zoom-gallery .pswp__button--arrow--right:hover,.pswp-zoom-gallery .pswp__button--arrow--left:hover {
    transform: scale(1.1);
    border-color: var(--border-dark)
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--right .icon,.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--left .icon,.pswp-zoom-gallery .pswp__button--arrow--right .icon,.pswp-zoom-gallery .pswp__button--arrow--left .icon {
    stroke: var(--accent);
    fill: none;
    pointer-events: none
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--right,.pswp-zoom-gallery .pswp__button--arrow--right {
    left: auto;
    right: 40px
}

@media only screen and (max-width: 749px) {
    .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--right,.pswp-zoom-gallery .pswp__button--arrow--right {
        right:10px
    }
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumbs,.pswp-zoom-gallery .pswp__thumbs {
    position: absolute;
    bottom: -146px;
    left: 0;
    z-index: 2;
    overflow-x: auto;
    width: 100%;
    padding: 10px 10px 16px;
    font-size: 0;
    text-align: center;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    will-change: transform;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumbs::-webkit-scrollbar,.pswp-zoom-gallery .pswp__thumbs::-webkit-scrollbar {
    display: none
}

@media only screen and (max-width: 749px) {
    .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumbs,.pswp-zoom-gallery .pswp__thumbs {
        bottom:0;
        padding: 10px 0
    }
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumb,.pswp-zoom-gallery .pswp__thumb {
    position: relative;
    display: inline-block;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    margin: 10px;
    padding-top: 0;
    color: inherit;
    vertical-align: top;
    cursor: pointer;
    transition: transform 0.2s ease-in-out;
    will-change: transform
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumb:hover,.pswp-zoom-gallery .pswp__thumb:hover {
    transform: scale(1.1)
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumb::before,.pswp-zoom-gallery .pswp__thumb::before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 1;
    border: 1px solid #fff0;
    border-radius: 50%;
    pointer-events: none;
    transition: border-color 0.2s ease-in-out;
    content: ""
}

@media only screen and (max-width: 749px) {
    .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumb,.pswp-zoom-gallery .pswp__thumb {
        width:42px;
        height: 42px
    }
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumb.is-current::before,.pswp-zoom-gallery .pswp__thumb.is-current::before {
    border-color: var(--accent)
}

@media only screen and (max-width: 749px) {
    .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumb.is-current,.pswp-zoom-gallery .pswp__thumb.is-current {
        transform:scale(1.4)
    }
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption,.pswp-zoom-gallery .pswp__caption {
    font-family: var(--FONT-STACK-HEADING);
    font-style: var(--FONT-STYLE-HEADING);
    font-weight: var(--FONT-WEIGHT-HEADING);
    letter-spacing: var(--LETTER-SPACING-HEADING);
    text-transform: var(--FONT-UPPERCASE-HEADING);
    position: absolute;
    z-index: 1;
    top: 30px;
    left: 30px;
    max-width: 50vw;
    padding: 10px 20px 10px 50px;
    background: var(--bg);
    font-size: var(--font-heading-small)
}

@media only screen and (max-width: 749px) {
    .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption,.pswp-zoom-gallery .pswp__caption {
        top:50px;
        left: 10px;
        max-width: 250px;
        max-width: calc(100% - 80px);
        padding: 7px 14px 7px 7px
    }
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption .pswp__caption-close,.pswp-zoom-gallery .pswp__caption .pswp__caption-close {
    position: absolute;
    top: 50%;
    left: 0;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    color: currentcolor
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption .pswp__caption-close:hover,.pswp-zoom-gallery .pswp__caption .pswp__caption-close:hover {
    color: var(--accent-hover)
}

body.is-focused .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption .pswp__caption-close:focus,body.is-focused .pswp-zoom-gallery .pswp__caption .pswp__caption-close:focus {
    outline: initial!important;
    box-shadow: 0 0 0 2px var(--accent)
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption .pswp__caption-close .icon,.pswp-zoom-gallery .pswp__caption .pswp__caption-close .icon {
    --icon-size: 28px;
    position: absolute;
    top: 7px;
    left: 14px;
    stroke: currentcolor;
    fill: none;
    pointer-events: none
}

@media only screen and (max-width: 749px) {
    .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption .pswp__caption-close,.pswp-zoom-gallery .pswp__caption .pswp__caption-close {
        display:none
    }
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption--fake,.pswp-zoom-gallery .pswp__caption--fake {
    display: none
}

.pswp-zoom-gallery--single[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__scroll-wrap,.pswp-zoom-gallery--single .pswp__scroll-wrap {
    bottom: 0
}

.pswp-zoom-gallery--single[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--right,.pswp-zoom-gallery--single[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--left,.pswp-zoom-gallery--single[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumbs,.pswp-zoom-gallery--single .pswp__button--arrow--right,.pswp-zoom-gallery--single .pswp__button--arrow--left,.pswp-zoom-gallery--single .pswp__thumbs {
    display: none
}

.pswp--video .pswp__button--arrow--left,.pswp--video .pswp__button--arrow--right,.pswp--video .pswp__caption-close {
    display: none
}

popup-component {
    display: block
}

.popup-promo {
    position: fixed;
    top: auto;
    left: auto;
    bottom: auto;
    right: auto;
    width: auto;
    height: auto;
    padding: var(--gutter);
    color: var(--text-dark);
    background: var(--bg);
    box-shadow: 0 2px 10px rgb(0 0 0 / 0.05);
    line-height: var(--line-height-normal);
    text-align: center
}

.popup-promo .popup__title {
    margin-bottom: 10px
}

.popup-promo .popup-promo__inner p:nth-child(2) {
    margin-bottom: 15px;
    font-size: var(--font-body-small)
}

.popup-promo .close {
    --icon-size: 24px;
    position: absolute;
    top: 50%;
    right: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    color: var(--link);
    background: #fff0;
    border-radius: var(--RADIUS);
    font-size: 0;
    text-decoration: none;
    transform: translate3d(0,-50%,0);
    transition: color 0.3s ease;
    --icon-size: 20px;
    top: 20px;
    right: 5px
}

.popup-promo .close .icon {
    display: block;
    fill: currentcolor;
    pointer-events: none;
    will-change: transform;
    transition: transform 0.4s cubic-bezier(0.4,0,0.22,1)
}

@media (hover: hover) {
    .popup-promo .close:hover {
        color:var(--link-hover)
    }

    .popup-promo .close:hover .icon {
        transform: scale(1.25)
    }
}

@media only screen and (max-width: 479px) {
    .popup-promo .close {
        top:15px;
        right: 0
    }
}

@media only screen and (max-width: 479px) {
    .popup-promo {
        max-width:none;
        left: 15px;
        right: 15px;
        bottom: 60px
    }

    .popup-promo:first-child:last-child {
        bottom: 15px
    }
}

@media only screen and (min-width: 480px) {
    .popup-promo--left {
        left:0;
        bottom: 30px;
        max-width: 350px
    }
}

@media only screen and (min-width: 480px) {
    .popup-promo--right {
        right:0;
        bottom: 30px;
        max-width: 350px
    }
}

@media only screen and (min-width: 480px) {
    .popup-promo--bottom {
        left:0;
        right: 0;
        bottom: 0;
        padding: 10px var(--outer)
    }

    .popup-promo--bottom .popup-promo__inner__text,.popup-promo--bottom .popup-promo__inner {
        display: flex;
        align-items: center
    }

    .popup-promo--bottom .popup-promo__inner__text {
        flex-wrap: wrap
    }

    .popup-promo--bottom .popup-promo__inner p,.popup-promo--bottom .popup-promo__inner p:nth-child(2),.popup-promo--bottom .popup-promo__inner>a:not(.btn),.popup-promo--bottom .popup-promo__inner>button:not(.close) {
        margin: 0 16px 0 0;
        font-size: var(--font-body-small)
    }

    .popup-promo--bottom .popup-promo__inner>button:not(.close) {
        flex: 0 0 auto;
        padding-right: 0;
        margin: 0 0 0 auto
    }
}

@media only screen and (min-width: 480px) {
    .popup-promo--center {
        top:50%;
        left: 50%;
        max-width: 350px;
        transform: translate(-50%,-50%)
    }
}

.popup-large-newsletter .newsletter-form {
    margin: 0 auto
}

@media only screen and (max-width: 749px) {
    [data-popup-delay].desktop {
        display:none!important
    }
}

@media only screen and (min-width: 750px) {
    [data-popup-delay].mobile {
        display:none!important
    }
}

[data-promo-text][data-popup-delay=always],[data-popup-delay=always]:not([data-large-popup])>* {
    z-index: 4004
}

[data-promo-text][data-popup-delay=delay],[data-popup-delay^=delayed]:not([data-large-popup])>* {
    z-index: 4003
}

[data-large-popup]>* {
    z-index: 4002
}

[data-popup-delay]:not([data-popup-delay=always]):not([data-popup-delay^=delayed]):not([data-large-popup]) {
    z-index: 4001
}

.has-block-selected>div:not(.selected) {
    visibility: hidden
}

.select-popout {
    --border: var(--BTN-PRIMARY-BORDER);
    position: relative;
    text-align: left;
    align-self: flex-start
}

.select-popout+.quantity,.select-popout+.cart__quantity-counter .cart__quantity {
    display: none
}

.select-popout.is-active>* {
    display: none
}

.select-popout.is-active+.quantity,.select-popout.is-active+.cart__quantity-counter .cart__quantity {
    display: block
}

.select-popout__toggle {
    position: relative;
    overflow: hidden;
    display: block;
    width: 100%;
    padding: var(--form-top) calc(var(--form-left) * 2) var(--form-top) var(--form-left);
    border: 1px solid var(--border);
    border-radius: var(--RADIUS-SELECT);
    line-height: var(--line-height-normal);
    text-align: inherit;
    white-space: nowrap;
    text-overflow: ellipsis;
    transition: border-radius 0.15s ease
}

.sold-out .select-popout__toggle::after {
    content: attr(data-select-soldout)
}

.unavailable .select-popout__toggle::after {
    content: attr(data-select-unavailable)
}

.select-popout__toggle .icon-nav-arrow-down {
    --icon-size: 18px;
    position: absolute;
    top: 0;
    right: 10px;
    height: 100%;
    margin-right: -2px;
    transition: transform 0.3s ease
}

.select-popout__toggle[aria-expanded=true] {
    border-radius: var(--RADIUS-SELECT) var(--RADIUS-SELECT) 0 0
}

.select-popout__toggle[aria-expanded=true] .icon-nav-arrow-down {
    transform: rotateX(180deg)
}

.select-popout:has(.popout-list--top) .select-popout__toggle[aria-expanded=true] {
    border-radius: 0 0 var(--RADIUS-SELECT) var(--RADIUS-SELECT)
}

.select-popout__list {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    overflow-x: hidden;
    overflow-y: auto;
    max-height: 300px;
    min-height: calc(var(--form-top) * 2 + var(--font-body-small) * 1.2);
    width: 100%;
    border: 1px solid var(--border);
    border-top-width: 0;
    margin: -1px 0 0;
    background: var(--COLOR-BG);
    list-style: none outside none;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.2s ease,visibility 0.2s
}

.select-popout__list.popout-list--visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: opacity 0.4s,visibility 0.4s
}

.select-popout__list.popout-list--top {
    border-width: 1px 1px 0;
    bottom: 100%;
    top: auto;
    margin: 0 0 -1px
}

cart-drawer .select-popout__list {
    max-height: 154px
}

.select-popout__item {
    display: block;
    margin-bottom: 0
}

.select-popout__item.is-active .select-popout__option {
    background: var(--bg-accent)
}

.select-popout__option {
    display: block;
    padding: var(--form-top) var(--form-left);
    color: inherit;
    transition: background 0.3s
}

.select-popout__option:hover {
    color: var(--text);
    background: var(--bg-accent)
}

.select-popout__option.sold-out::after {
    content: attr(data-select-soldout)
}

.select-popout__option.unavailable::after {
    content: attr(data-select-unavailable)
}

.select-popout--quantity {
    --border: var(--COLOR-BORDER);
    font-size: max(0.6875rem, var(--font-body-x-small));
    width: 100%
}

.select-popout--quantity.is-active {
    display: none
}

.select-popout--quantity .select-popout__toggle {
    width: 100%;
    border-color: var(--border);
    padding: 5px 12px;
    line-height: 1.36;
    color: inherit
}

predictive-search {
    display: block;
    width: 100%
}

predictive-search[open] .predictive-search,predictive-search[loading] .predictive-search {
    display: block
}

predictive-search:not([loading]) .predictive-search__loading-state {
    display: none
}

predictive-search[loading] .predictive-search__actions,predictive-search[loading] .predictive-search__layout~.predictive-search__loading-state {
    display: none
}

predictive-search[loading] .predictive-search__layout~.predictive-search__actions {
    display: block
}

predictive-search[loading] .predictive-search__loader {
    opacity: 1;
    visibility: visible
}

.predictive-search {
    --results-max-height: (var(--full-screen) - var(--header-height) - var(--announcement-height));
    position: absolute;
    z-index: 4000;
    top: 100%;
    right: 0;
    left: 0;
    width: 100%;
    max-height: var(--results-height,var(--results-max-height));
    opacity: 0;
    visibility: hidden;
    transition: max-height 0.5s ease,opacity 0.5s ease,visibility 0.5s;
    background: var(--bg);
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: smooth;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.predictive-search::-webkit-scrollbar {
    display: none
}

.js__header__stuck .predictive-search {
    --announcement-height: 0
}

.predictive-search--empty {
    z-index: 3999
}

header-search-form {
    width: 100%
}

header-search-form~.predictive-search--empty,predictive-search:not([open]):not([results])~.predictive-search--empty {
    opacity: 1;
    visibility: visible;
    max-height: var(--results-height,var(--results-max-height))
}

predictive-search[open=true] .predictive-search {
    opacity: 1;
    visibility: visible
}

.predictive-search__outer {
    position: relative;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: padding 0.3s ease,opacity 0.3s ease,visibility 0.3s
}

.predictive-search__outer--empty,.is-searched .predictive-search__outer {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    padding: var(--outer) 0
}

@media only screen and (min-width: 990px) {
    .predictive-search__layout {
        --columns:repeat(3, minmax(0, 1fr))
    }
}

@media only screen and (min-width: 750px) {
    .predictive-search__layout {
        display:grid;
        grid-template-columns: minmax(0,1fr) minmax(0,3fr);
        gap: var(--gutter)
    }
}

.predictive-search__layout--no-products,.predictive-search__layout--no-suggestions {
    grid-template-columns: 100%
}

@media only screen and (max-width: 749px) {
    .predictive-search__column {
        margin-bottom:var(--inner)
    }
}

.predictive-search__actions {
    margin: var(--inner) 0
}

@media only screen and (min-width: 750px) {
    .predictive-search__group {
        padding-bottom:var(--inner)
    }
}

.predictive-search__heading {
    font-family: var(--FONT-STACK-HEADING);
    font-style: var(--FONT-STYLE-HEADING);
    font-weight: var(--FONT-WEIGHT-HEADING);
    letter-spacing: var(--LETTER-SPACING-HEADING);
    text-transform: var(--FONT-UPPERCASE-HEADING);
    color: var(--link);
    margin-bottom: var(--inner);
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border)
}

.predictive-search__item {
    margin-bottom: var(--inner);
    font-size: calc(var(--font-nav-small) * var(--FONT-SIZE-NAV))
}

.predictive-search__link {
    transition: color 0.3s ease;
    padding: 5px 0
}

.predictive-search__products__list {
    padding: 0
}

@media only screen and (max-width: 749px) {
    .predictive-search__products__list .product-link {
        display:grid;
        grid-template-columns: 50px auto;
        gap: 16px
    }

    .predictive-search__products__list .product-item__info {
        text-align: left;
        padding-left: 0
    }

    body.grid-compact .predictive-search__products__list {
        margin-bottom: -16px
    }

    body.grid-compact .predictive-search__grid-item {
        margin-bottom: 16px
    }
}

.predictive-search__empty p {
    margin: 0
}

.predictive-search__loading-state {
    margin: var(--inner) 0;
    min-height: var(--btn-height);
    display: flex;
    align-items: center
}

.predictive-search__loader {
    margin: auto;
    opacity: 0;
    transition: opacity 0.3s ease,visibility 0.3s
}

.predictive-search__item[aria-selected=true]>a,.predictive-search__grid-item[aria-selected=true]>a,.predictive-search__actions>.btn[aria-selected=true],#challenge .predictive-search__actions>[aria-selected=true].shopify-challenge__button,.shopify-payment-button .predictive-search__actions>[aria-selected=true].shopify-payment-button__button--unbranded {
    outline: 5px auto var(--accent)
}

@media only screen and (max-width: 749px) {
    .supports-touch .predictive-search__grid-item hover-images::after,.supports-touch .predictive-search__grid-item .product-item__bg__slide:not(:first-child) {
        display:none
    }
}

.product-upsell__holder {
    text-align: left
}

.product-upsell__holder__title {
    margin-top: 0
}

@media only screen and (min-width: 480px) {
    .product-upsell__holder--button .product-upsell__content {
        padding-right:85px
    }
}

.product-upsell {
    --bg: var(--bg-accent);
    --text: var(--text-dark);
    position: relative;
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: stretch;
    background-color: var(--bg);
    color: var(--text)
}

.product-upsell__image {
    width: 120px
}

.product-upsell__image__link {
    display: block;
    height: 100%
}

.product-upsell__image__thumb {
    overflow: hidden;
    position: relative;
    padding-top: var(--PRODUCT-GRID-ASPECT-RATIO);
    min-height: 100%
}

.product-upsell__image__thumb .image-wrapper {
    position: absolute;
    top: 0;
    left: 0
}

.product-upsell__content {
    --inner: 16px;
    width: calc(100% - 120px);
    padding: var(--inner);
    overflow-wrap: anywhere
}

@media only screen and (min-width: 990px) {
    .product-upsell__content {
        --inner:24px
    }
}

.product-upsell__link {
    --link: var(--text);
    --link-hover: var(--text-light)
}

.product-upsell__title {
    font-family: var(--FONT-STACK-BODY);
    font-style: var(--FONT-STYLE-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none;
    font-size: var(--font-body-medium);
    margin-top: 0
}

.product-upsell__variant-title {
    font-family: var(--FONT-STACK-BODY);
    font-style: var(--FONT-STYLE-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none;
    font-size: var(--font-body-x-small);
    color: var(--text-light)
}

.product-upsell__variant-title span {
    display: inline-block;
    width: 2px;
    height: 2px;
    border-radius: 50%;
    margin: 0 4px;
    background-color: currentcolor;
    vertical-align: middle;
    opacity: 0.8
}

.product-upsell__price {
    font-family: var(--FONT-STACK-BODY);
    font-style: var(--FONT-STYLE-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none;
    font-size: var(--font-body-small)
}

.product-upsell__price .unit {
    font-family: var(--FONT-STACK-BODY);
    font-style: var(--FONT-STYLE-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    letter-spacing: var(--LETTER-SPACING-BODY);
    text-transform: none;
    display: block;
    margin-top: 5px;
    color: var(--text-light)
}

.btn__outer {
    position: absolute;
    right: 16px;
    bottom: 16px;
    display: inline-grid
}

.product-upsell__btn {
    --bg: var(--COLOR-BG);
    --btn-text: var(--accent);
    --btn-size: 32px;
    --icon-size: 20px;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    justify-self: end;
    min-width: var(--btn-size);
    min-height: var(--btn-size);
    padding: 0;
    width: var(--btn-size);
    border: none;
    border-radius: var(--radius);
    font-size: var(--font-body-small);
    line-height: 32px;
    color: var(--accent);
    background: var(--bg);
    transition: width 0.3s ease
}

.product-upsell__btn .btn__text {
    display: block;
    opacity: 0;
    overflow: hidden;
    white-space: nowrap;
    transition: opacity 0.3s ease,padding 0.3s ease,visibility 0.3s
}

.product-upsell__btn .btn__plus {
    position: relative;
    transition: opacity 0.3s ease;
    display: flex;
    justify-content: center;
    align-items: center;
    align-self: center;
    flex: 0 0 var(--icon-size);
    margin: 0 4px
}

.product-upsell__btn .btn__loading {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.product-upsell__btn .icon-plus {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    fill: currentcolor;
    transform: translate(-50%,-50%)
}

.product-upsell__btn.is-loading .btn__inner,.product-upsell__btn.is-added .btn__inner {
    width: var(--btn-size)
}

.product-upsell__btn.is-loading .btn__plus,.product-upsell__btn.is-loading .btn__text,.product-upsell__btn.is-added .btn__plus,.product-upsell__btn.is-added .btn__text {
    opacity: 0
}

@media (hover: hover) {
    .btn__outer:hover .product-upsell__btn {
        width:100%
    }

    .btn__outer:hover .btn__text {
        padding-right: 10px;
        opacity: 1
    }

    .btn__outer:hover .is-added,.btn__outer:hover .is-loading {
        width: var(--btn-size)
    }

    .btn__outer:hover .is-added .btn__text,.btn__outer:hover .is-loading .btn__text {
        opacity: 0;
        visibility: hidden
    }
}

.product-upsell__out-of-stock {
    font-size: var(--font-body-small)
}

.product-upsell__errors {
    overflow: hidden;
    position: relative;
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease,max-height 0.5s cubic-bezier(0,0.75,0.25,1),visibility 0.5s;
    font-size: var(--font-body-small)
}

.product-upsell__errors.is-visible {
    visibility: visible;
    max-height: 300px;
    opacity: 1;
    transition-timing-function: cubic-bezier(0.5,0.25,0.75,1)
}

.product-upsell__errors .errors {
    position: relative;
    padding: 10px 30px 10px 10px;
    margin: 10px 0;
    border: 1px solid var(--COLOR-ERROR-BORDER);
    border-radius: var(--RADIUS);
    background-color: var(--COLOR-ERROR-BG);
    color: var(--COLOR-ERROR)
}

quick-add-product {
    display: block;
    width: 100%
}

.product__upsell--stacked,.product__bundle--stacked {
    display: flex;
    flex-direction: column;
    gap: calc(var(--gutter) / 2)
}

.product__upsell[data-dots=line],.product__upsell[data-dots=circle] {
    margin-bottom: calc(var(--block-padding-bottom, 16px) + 15px)
}

.product__upsell[data-dots=line] .flickity-page-dots,.product__upsell[data-dots=circle] .flickity-page-dots,complementary-products [data-dots=line] .flickity-page-dots,complementary-products [data-dots=circle] .flickity-page-dots {
    bottom: 0
}

slider-component .product__upsell:not(.flickity-enabled) {
    display: block
}

slider-component .product__upsell:not(.flickity-enabled) quick-add-product:not(:first-child) {
    display: none
}

.product-quick-add {
    --inner: 20px;
    --outer: 20px;
    --outer-offset: calc(var(--outer) * -1)
}

dialog.is-loading .loader {
    opacity: 1;
    visibility: visible
}

@media only screen and (max-width: 749px) {
    dialog[open] .product-quick-add__content,dialog[open] .product-modal__notification {
        animation:translateUp 0.5s ease forwards
    }

    dialog[closing] .product-quick-add__content,dialog[closing] .product-modal__notification {
        animation: translateDown 0.5s ease forwards
    }
}

@media only screen and (min-width: 750px) {
    .product-quick-add__inner {
        height:100%
    }

    .product-quick-add__inner product-info {
        display: grid;
        grid-template-rows: 50% 1fr;
        height: 100%
    }
}

.product-quick-add__content,.product-modal__notification {
    position: absolute;
    height: auto;
    bottom: 0;
    z-index: 2;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    width: 100%;
    max-width: var(--DRAWER-WIDTH);
    max-height: 100%;
    background: var(--bg)
}

@media only screen and (min-width: 750px) {
    .product-quick-add__content,.product-modal__notification {
        top:0;
        left: 100%
    }
}

@media only screen and (max-width: 749px) {
    .product-quick-add__content,.product-modal__notification {
        top:auto;
        left: 0;
        max-width: 100%;
        max-height: 95%;
        border-radius: 10px 10px 0 0
    }
}

@media only screen and (max-width: 749px) {
    .product-quick-add__images {
        display:none
    }
}

.product-quick-add__images .product__slides {
    height: auto
}

.product-quick-add__images .product__slide {
    overflow: hidden;
    width: 100%;
    height: 50vh
}

.product-quick-add__images .product__slide:only-child {
    width: 100%
}

.product-quick-add__images .product__photo {
    height: 100%;
    padding: 0
}

.product-quick-add__images .lazy-image {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%)
}

.product-quick-add__images .deferred-media {
    height: 100%;
    padding: 0!important
}

.product-quick-add__form {
    width: 100%;
    padding: var(--outer);
    margin: 0 auto;
    display: flex;
    justify-content: center;
    flex: 1 1 auto
}

.product-quick-add__form .product__form__outer {
    flex-grow: 1
}

.product-quick-add__form .product__title__wrapper {
    padding-right: 0
}

.product-quick-add__form .product__form__holder {
    position: relative;
    z-index: 3
}

.product-quick-add__form .product__title {
    margin-top: 0
}

.product-quick-add__form .product__block--description {
    min-height: 64px
}

.product-quick-add__form .product__submit__buttons {
    width: 100%;
    margin: var(--inner) 0 0
}

.product-quick-add__form .product__submit__item {
    max-width: 100%;
    padding: 0
}

.product-quick-add__form .product__block--buttons {
    position: sticky;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 3;
    margin: auto 0 var(--outer-offset);
    padding-bottom: var(--outer);
    background: var(--bg);
    box-shadow: 0 0 10px 10px var(--bg)
}

.product-quick-add__form .product__form__errors {
    padding-bottom: 0;
    margin: 15px 0 0
}

.product-quick-add__form .product__form__errors:empty {
    margin-top: 0
}

.product-quick-add__form .select__fieldset,.product-quick-add__form .radio__fieldset {
    grid-template-columns: minmax(0,5rem) minmax(0,100%)
}

.product-quick-add__form .select-popout__list {
    max-height: 120px;
    top: auto;
    bottom: 100%;
    margin-bottom: -1px;
    border-top-width: 1px;
    border-bottom-width: 0
}

.product-quick-add__form .select-popout__toggle[aria-expanded=true] {
    border-radius: 0 0 var(--RADIUS-SELECT) var(--RADIUS-SELECT)
}

@media only screen and (max-width: 749px) {
    .product-quick-add__form {
        --padding-vertical:3px
    }

    .product-quick-add__form .product__title__wrapper {
        padding-right: 40px;
        margin: 0
    }
}

.product-quick-add__form__inner {
    display: flex;
    flex-direction: column;
    flex: 0 1 550px
}

@media only screen and (max-width: 749px) {
    .product-quick-add__form__inner {
        max-width:none
    }
}

.product-quick-add__form__inner .product-form {
    display: flex;
    flex-direction: column;
    height: 100%
}

.product-quick-add__form__inner .product__block--buttons {
    margin-top: auto
}

.product-quick-add__close-outer {
    position: sticky;
    top: 0;
    display: flex;
    justify-content: flex-end;
    z-index: 5
}

.drawer:has(.popout-list--visible) .product-quick-add__close-outer {
    z-index: 1
}

.product-quick-add__close {
    position: absolute;
    top: 11px;
    right: 5px;
    transform: none;
    padding: 8px
}

@media only screen and (min-width: 750px) {
    .product-quick-add__close {
        top:var(--outer);
        right: var(--outer);
        background: var(--bg)
    }
}

.product-quick-add__description {
    font-size: var(--font-body-medium)
}

.accordion-group__items {
    display: grid;
    align-items: start;
    column-gap: var(--gutter);
    overflow-wrap: anywhere
}

@media only screen and (min-width: 750px) {
    .accordion-group__items {
        grid-template-columns:repeat(var(--accordion-columns,1),minmax(0,1fr))
    }
}

.accordions-holder+.accordions-holder {
    margin-top: -1px
}

.accordions-holder:empty {
    margin: 0!important
}

@media only screen and (max-width: 749px) {
    .accordions-holder .accordion__body {
        margin-left:var(--outer-offset);
        margin-right: var(--outer-offset)
    }
}

.accordion__heading {
    margin: 2.5rem 0;
    grid-column: 1/-1
}

.accordion__heading:first-child {
    margin-top: 0
}

.accordion {
    display: block;
    border-bottom: 1px solid var(--border);
    border-top: 1px solid var(--border);
    margin-top: -1px;
    text-align: left;
    overflow-wrap: anywhere
}

.accordion__title {
    display: flex;
    align-items: center;
    padding: 1.5rem 30px 1.5rem 0;
    margin: 0
}

.accordion__title .icon__animated {
    --icon-min-height: calc(var(--FONT-SIZE-BASE) * 1.2);
    margin: 0 10px 0 0;
    align-self: start;
    min-height: var(--icon-min-height)
}

.accordion__title.h4 .icon__animated {
    --icon-min-height: calc(var(--font-heading-small) * 1.2)
}

.accordion__title .icon__animated .icon {
    position: static;
    transform: none
}

.accordion__content {
    padding-bottom: 1rem
}

.faq-list {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: flex-start
}

@media only screen and (max-width: 749px) {
    .faq-list {
        overflow-x:auto;
        overflow-y: hidden;
        flex-wrap: nowrap;
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory;
        scroll-padding: var(--outer);
        padding-left: var(--outer);
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        -ms-overflow-style: none
    }

    .faq-list::-webkit-scrollbar {
        display: none
    }

    .faq-list::after {
        content: "";
        min-height: 1px;
        display: block;
        position: relative;
        padding-right: var(--outer)
    }
}

.faq-list__item {
    flex-basis: 45%;
    padding: calc(var(--gutter) / 2) 0;
    font-size: var(--font-body-small);
    line-height: 1.3
}

.faq-list__item:only-child {
    flex-basis: 100%
}

@media only screen and (max-width: 749px) {
    .faq-list__item {
        scroll-snap-align:start;
        flex: 0 0 calc(100% - 50px);
        padding-right: var(--outer)
    }
}

.faq-list__item--form:only-child {
    display: flex;
    justify-content: center
}

@media only screen and (min-width: 750px) {
    .faq-list__item--form:only-child {
        flex-basis:45%;
        margin: 0 auto
    }
}

.faq-list__item .contact-form {
    max-width: 520px;
    margin: 0
}

.faq-list__item:only-child .contact-form {
    margin: 0 auto
}

.faq-list--3 .faq-list__item,.faq-list--6 .faq-list__item,.faq-list--9 .faq-list__item {
    flex-basis: 30%
}

@media only screen and (max-width: 749px) {
    .faq-list--3 .faq-list__item,.faq-list--6 .faq-list__item,.faq-list--9 .faq-list__item {
        flex-basis:calc(100% - 50px)
    }
}

.faq-list__item-title {
    margin-bottom: calc(var(--gutter) / 3);
    font-weight: var(--FONT-WEIGHT-HEADING)
}

.faq-list__item-description {
    margin-top: var(--gutter)
}

.image-wrapper+.faq-list__item-title {
    margin-top: calc(var(--gutter) / 3)
}

.faq-list__item-icon {
    display: flex
}

.faq-list__item-icon .icon__animated {
    padding-bottom: calc(var(--inner) / 4);
    margin-bottom: 0
}

.faq-list__item-icon--center {
    justify-content: center
}

.quick-add__holder {
    --btn-text: var(--accent);
    --btn-offset: 5px;
    position: absolute;
    bottom: var(--btn-offset);
    left: var(--btn-offset);
    right: var(--btn-offset);
    width: auto;
    z-index: 10;
    pointer-events: auto;
    transition: opacity 0.5s ease
}

@media only screen and (min-width: 750px) {
    .quick-add__holder {
        --btn-offset:10px
    }

    .quick-add__holder .btn__plus {
        display: none
    }
}

@media only screen and (max-width: 749px) {
    .quick-add__holder.mobile {
        position:static
    }
}

.quick-add__holder.is-disabled {
    pointer-events: none
}

.quick-add__holder.has-error {
    animation: fadeToggle 3s ease;
    animation-fill-mode: forwards;
    transition: none
}

.quick-add__holder.has-error .quick-add__button {
    opacity: 1;
    visibility: unset;
    transition: none
}

.quick-add__button,.quick-add__button.is-added[data-add-to-cart] {
    --btn-bg: var(--COLOR-QUICK-ADD-BG);
    --btn-bg-hover: var(--COLOR-QUICK-ADD-BG-BRIGHTER);
    --btn-text: var(--COLOR-QUICK-ADD-TEXT);
    --btn-text-hover: var(--COLOR-QUICK-ADD-TEXT);
    --btn-border: transparent;
    --btn-border-hover: transparent;
    --accent: var(--COLOR-QUICK-ADD-TEXT)
}

.quick-add__button.btn--outline,.btn--outline .quick-add__button.shopify-payment-button__button--unbranded,.quick-add__button.is-added[data-add-to-cart].btn--outline {
    --btn-bg: transparent;
    --btn-border: var(--COLOR-QUICK-ADD-TEXT);
    --btn-border-hover: var(--COLOR-QUICK-ADD-TEXT)
}

@media only screen and (min-width: 750px) {
    .quick-add__button,.quick-add__button.is-added[data-add-to-cart] {
        --btn-border:var(--COLOR-QUICK-ADD-BG);
        --btn-border-hover: var(--COLOR-QUICK-ADD-BG-BRIGHTER)
    }
}

.quick-add__button {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--BTN-FONT-SIZE)
}

.quick-add__button.is-visible,.quick-add__button.is-loading,.quick-add__button.is-added {
    visibility: unset
}

.quick-add__button.is-disabled {
    pointer-events: none
}

.quick-add__button[disabled] {
    opacity: 1
}

.quick-add__button .btn__error {
    display: none
}

.quick-add__button .btn__text,.quick-add__button .btn__error,.quick-add__button .btn__loader {
    padding: 0
}

.has-error .quick-add__button {
    pointer-events: none
}

.has-error .quick-add__button .btn__text {
    display: none!important
}

.has-error .quick-add__button .btn__error {
    display: block
}

.has-error .quick-add__button::after {
    content: none
}

@media only screen and (min-width: 750px) {
    .quick-add__button {
        margin-left:auto;
        position: relative;
        text-align: center;
        text-decoration: none;
        box-shadow: none;
        cursor: pointer
    }
}

@media only screen and (max-width: 749px) {
    .quick-add__button {
        width:100%;
        margin-top: var(--btn-offset);
        pointer-events: auto;
        z-index: 1
    }

    .has-error .quick-add__button {
        width: auto
    }
}

.quick-add__button>span {
    pointer-events: none
}

.quick-add__button--mini {
    --btn-size: 36px
}

@media only screen and (max-width: 749px) {
    .quick-add__button--mini {
        margin:0;
        width: auto;
        min-width: var(--btn-size);
        max-width: 100%;
        min-height: var(--btn-size);
        padding: 0
    }

    .quick-add__button--mini>span.btn__text {
        display: none
    }

    .quick-add__button--mini>span.btn__plus {
        top: 0;
        left: 0
    }
}

.no-touch .product-item__image:hover .quick-add__button,.no-touch .product-item--overlay-text:hover .quick-add__button {
    visibility: unset
}

@media only screen and (min-width: 750px) {
    .no-touch body.is-focused .quick-add__button {
        visibility:unset;
        transition: none
    }

    .no-touch .quick-add__holder {
        opacity: 0
    }

    .no-touch .product-item__image:hover .quick-add__holder:not(.is-disabled),.no-touch .product-item--overlay-text:hover .quick-add__holder:not(.is-disabled) {
        opacity: 1
    }

    .no-touch body.is-focused .quick-add__holder:focus-within,.no-touch .quick-add__holder.is-visible {
        opacity: 1
    }

    .no-touch .quick-add__holder.is-disabled {
        opacity: 0
    }

    .no-touch .quick-add__holder.is-disabled .quick-add__button {
        visibility: hidden
    }
}

.text-promo .hero__image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0
}

.text-promo .hero__title,.text-promo .hero__app,.text-promo .hero__rte,.text-promo .hero__button {
    position: relative;
    margin: 10px 20px;
    z-index: 20
}

.text-promo .hero__button {
    margin: 10px
}

@media only screen and (max-width: 749px) {
    .text-promo {
        flex-direction:column
    }

    .text-promo .hero__title,.text-promo .hero__app,.text-promo .hero__rte {
        margin: 8px 10px
    }

    .text-promo .hero__button {
        margin: 8px
    }
}

.text-promo .hero__content {
    padding: var(--inner) var(--outer);
    flex-flow: row wrap;
    align-items: center;
    justify-content: center
}

.text-promo .backdrop--radial:before {
    z-index: initial
}

.text-promo-inner {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 1;
    overflow: hidden;
    width: 100%
}

.text-promo-inner--border {
    border: 1px solid var(--border)
}

.index-text-products {
    overflow-wrap: anywhere
}

.text-products__heading {
    --text-products-font-size: var(--text-products-font-size-desktop);
    font-size: var(--text-products-font-size)
}

@media only screen and (max-width: 749px) {
    .text-products__heading {
        --text-products-font-size:var(--text-products-font-size-mobile)
    }
}

.section-before-after compare-images {
    height: 0;
    padding-top: calc(1 / var(--aspect-ratio) * 100%)
}

@media only screen and (min-width: 750px) {
    .before-after {
        display:flex;
        align-items: flex-start
    }
}

.before-after__content {
    overflow-wrap: anywhere
}

@media only screen and (min-width: 750px) {
    .before-after__content {
        display:flex;
        flex-direction: column;
        flex: 0 0 50%;
        align-self: center;
        padding-right: var(--outer)
    }
}

.before-after__content p:not([style*="--block-padding-bottom"]) {
    margin: 0
}

.wrapper--full .before-after__content {
    padding-left: var(--outer)
}

@media only screen and (max-width: 749px) {
    .wrapper--full .before-after__content {
        padding-right:var(--outer)
    }
}

@media only screen and (max-width: 749px) {
    .wrapper--full .before-after__buttons {
        padding:0 var(--outer)
    }
}

@media only screen and (max-width: 749px) {
    .before-after__buttons.mobile {
        padding-top:var(--outer)
    }
}

.before-after__images {
    overflow: hidden
}

@media only screen and (min-width: 750px) {
    .before-after__images {
        flex:0 0 50%
    }
}

@media only screen and (min-width: 750px) {
    .before-after__images--full-width {
        flex:0 0 100%
    }
}

.highlights {
    position: relative;
    padding-top: var(--PT);
    padding-bottom: var(--PB)
}

.highlights__container {
    overflow: hidden
}

.highlights__items {
    --gap: calc(var(--gutter) / 2);
    --gap-offset: calc(var(--gutter-offset) / 2);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 var(--gap-offset) var(--gutter-offset)
}

@media only screen and (max-width: 749px) {
    .highlights__items--mobile-slider {
        flex-wrap:nowrap;
        justify-content: flex-start;
        padding-left: var(--outer);
        margin: 0 var(--outer-offset);
        overflow-x: scroll;
        overflow-y: hidden;
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory;
        scroll-padding: var(--outer);
        scrollbar-width: none;
        -ms-overflow-style: none
    }

    .highlights__items--mobile-slider::-webkit-scrollbar {
        display: none
    }

    .highlights__items--mobile-slider::after {
        content: "";
        min-height: 1px;
        display: block;
        position: relative;
        padding-right: var(--outer)
    }
}

@media only screen and (max-width: 749px) {
    .highlights__items--mobile-slider .highlights__item {
        flex:0 0 auto;
        width: calc(100% - 50px);
        padding: 0;
        margin: 0 var(--gap) 0 0;
        scroll-snap-align: start
    }

    .highlights__items--mobile-slider .highlights__item:last-child {
        margin-right: 0
    }

    .highlights__items--mobile-slider .highlights__item:only-child {
        width: 100%
    }
}

.highlights__item {
    --btn-bg: var(--BTN-PRIMARY-BG);
    --btn-text: var(--BTN-PRIMARY-TEXT);
    --btn-border: var(--border);
    --btn-bg-hover: var(--bg-brighter, transparent);
    --btn-text-hover: var(--text);
    --btn-border-hover: transparent;
    --column-default: 1;
    --width-desktop: 100% / var(--columns-desktop, var(--column-default));
    --width-tablet: 100% / var(--columns-medium, var(--column-default));
    --width-mobile: 100% / var(--columns-mobile, var(--column-default));
    --width-small: 100% / var(--columns-small, var(--column-default));
    --width: var(--width-desktop);
    flex-basis: calc(var(--width, 100%));
    position: relative;
    padding: 0 var(--gap);
    margin-bottom: var(--gutter);
    text-align: center
}

@media only screen and (min-width: 990px) {
    .highlights__item {
        --width:var(--width-desktop)
    }
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .highlights__item {
        --width:var(--width-tablet)
    }
}

@media only screen and (max-width: 749px) {
    .highlights__item {
        --width:var(--width-small)
    }
}

@media only screen and (max-width: 479px) {
    .highlights__item {
        --width:var(--width-mobile)
    }
}

.highlights__item-inner {
    min-height: 100%;
    color: var(--btn-text)
}

.highlights__item--button {
    overflow: hidden
}

.highlights__item__background {
    position: relative;
    width: 100%;
    min-height: inherit;
    background-color: var(--btn-bg);
    padding-bottom: 100%;
    overflow: hidden;
    background: var(--btn-bg)
}

.highlights__item__background--border {
    border: 1px solid var(--btn-border)
}

.highlights__item--rectangle .highlights__item__background {
    padding-bottom: 75%
}

.highlights__item--circle .highlights__item__background {
    z-index: 0;
    border-radius: 50%
}

.highlights__item--button .btn,.highlights__item--button #challenge .shopify-challenge__button,#challenge .highlights__item--button .shopify-challenge__button,.highlights__item--button .shopify-payment-button .shopify-payment-button__button--unbranded,.shopify-payment-button .highlights__item--button .shopify-payment-button__button--unbranded {
    --btn-border: transparent;
    --btn-border-hover: transparent;
    min-width: 100%
}

.highlights__item--button .btn::after,.highlights__item--button #challenge .shopify-challenge__button::after,#challenge .highlights__item--button .shopify-challenge__button::after,.highlights__item--button .shopify-payment-button .shopify-payment-button__button--unbranded::after,.shopify-payment-button .highlights__item--button .shopify-payment-button__button--unbranded::after {
    z-index: 1
}

.highlights__item--button .btn.is-disabled::after,.highlights__item--button #challenge .is-disabled.shopify-challenge__button::after,#challenge .highlights__item--button .is-disabled.shopify-challenge__button::after,.highlights__item--button .shopify-payment-button .is-disabled.shopify-payment-button__button--unbranded::after,.shopify-payment-button .highlights__item--button .is-disabled.shopify-payment-button__button--unbranded::after {
    content: none
}

.highlights__item--button .highlights__item__content {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    top: auto;
    left: auto;
    overflow: visible;
    width: auto;
    padding: 0;
    transform: none
}

.highlights__item--button .highlights__item__background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    background-color: #fff0;
    border: none
}

.highlights__item .image-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
}

.highlights__item__content {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    max-width: 100%;
    width: max-content;
    margin: 0;
    padding: var(--inner);
    overflow: hidden;
    transform: translate(-50%,-50%)
}

.highlights__item-link {
    --link: var(--btn-text);
    --link-hover: var(--btn-text)
}

product-siblings {
    display: block
}

.swatch__button--circle .image-wrapper {
    overflow: hidden;
    border-radius: 50%
}

.product__features {
    position: relative
}

.product__features .flickity-page-dots {
    --text: var(--accent);
    justify-content: flex-end;
    bottom: 0;
    padding: 0 var(--inner) var(--inner)
}

.product__features:not(.flickity-enabled) {
    display: grid;
    grid-template-columns: 1fr
}

.product__features:not(.flickity-enabled) .product__feature {
    grid-row-start: 1;
    grid-column-start: 1;
    min-height: 100%;
    width: 100%
}

.product__features:not(.flickity-enabled) .product__feature:not(:first-child) {
    opacity: 0;
    visibility: hidden
}

.product__feature {
    --dots-height: 16px;
    --icons: var(--text);
    width: 100%;
    color: var(--text);
    background: var(--bg-accent);
    padding: calc(var(--inner) - 0.5em) var(--inner)
}

.product__feature .block__icon {
    margin: 0.5em 10px 0.5em 0
}

.flickity-enabled .product__feature {
    padding-bottom: calc(var(--inner) * 2 - 0.5em + var(--dots-height))
}

.product__feature__content {
    overflow-wrap: anywhere
}

.product__feature__heading {
    font-size: var(--font-body-medium);
    font-weight: var(--FONT-WEIGHT-BODY-BOLD)
}

.recipient-form input[type=checkbox]:checked~.recipient-fields {
    display: block
}

.recipient-form input[type=checkbox]+label {
    padding-bottom: 1em
}

.recipient-form .recipient-fields {
    display: none
}

.recipient-form .select__fieldset {
    align-items: center
}

.recipient-form .select__fieldset .select__label--textarea {
    align-self: flex-start
}

.recipient-form .field {
    border-bottom: none
}

.recipient-form .recipient-form-field-label {
    display: block;
    text-align: right
}

.featured-product {
    --min-height: 0;
    --padding: 100px;
    --padding-horizontal: 50px;
    --height: calc(100vh - var(--header-sticky-height));
    --height-inner: calc(var(--height) - (var(--padding) * 2));
    --translateX: 0%;
    --top: 0;
    --top-horizontal: var(--padding)
}

@media only screen and (min-width: 990px) {
    .featured-product {
        --padding:100px;
        --padding-horizontal: var(--padding)
    }
}

@media only screen and (min-width: 750px) {
    .featured-product {
        --height:var(--full-screen)
    }

    body.has-header-sticky .main-content>.shopify-section:first-of-type .featured-product {
        --height: calc(var(--full-screen) + var(--announcement-height))
    }

    body:not(.has-header-sticky) .main-content>.shopify-section:first-of-type .featured-product {
        --height: var(--full-height)
    }
}

.has-header-sticky .featured-product {
    --top: var(--header-height);
    --top-horizontal: calc(var(--padding) + var(--header-height))
}

.featured-product__body {
    position: relative;
    min-height: var(--min-height);
    padding: 0 var(--outer);
    background: var(--bg)
}

@media only screen and (min-width: 750px) {
    .featured-product__body {
        display:flex;
        align-items: flex-start;
        position: static;
        min-height: var(--height);
        padding: 0
    }

    .featured-product.is-reversed .featured-product__body {
        flex-direction: row-reverse
    }
}

.featured-product__content {
    position: sticky;
    top: var(--top)
}

@media only screen and (min-width: 750px) {
    .featured-product__content {
        flex:0 0 50%;
        display: flex;
        align-items: center;
        z-index: 3;
        min-width: 0;
        min-height: inherit;
        padding: var(--outer) 0
    }
}

.featured-product__card {
    display: grid;
    padding: var(--outer) 0
}

@media only screen and (min-width: 750px) {
    .featured-product__card {
        flex:0 0 50%;
        min-width: 0;
        padding: 0;
        margin: 0 auto
    }
}

.featured-product__aside {
    flex: 0 0 50%;
    position: relative;
    min-width: 0;
    transform: translate3d(0,0,0)
}

@media only screen and (min-width: 750px) {
    .featured-product__aside--bg {
        padding:var(--padding) var(--padding-horizontal)
    }
}

.featured-product__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none
}

@media only screen and (min-width: 750px) {
    .featured-product__bg {
        z-index:2
    }
}

.featured-product__bg .image-wrapper {
    position: sticky;
    top: var(--top);
    max-height: var(--height)
}

@media only screen and (min-width: 750px) {
    .featured-product__bg .image-wrapper {
        -webkit-mask:linear-gradient(to top,#FFF,#FFF) top/100% var(--padding),linear-gradient(to bottom,#FFF,#FFF) bottom/100% var(--padding),linear-gradient(to left,#FFF,#FFF) left/var(--padding-horizontal) 100%,linear-gradient(to right,#FFF,#FFF) right/var(--padding-horizontal) 100%;
        mask: linear-gradient(to top,#FFF,#FFF) top/100% var(--padding),linear-gradient(to bottom,#FFF,#FFF) bottom/100% var(--padding),linear-gradient(to left,#FFF,#FFF) left/var(--padding-horizontal) 100%,linear-gradient(to right,#FFF,#FFF) right/var(--padding-horizontal) 100%;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat
    }
}

.featured-product__image {
    position: relative
}

.featured-product__image .image-wrapper img {
    object-fit: cover
}

@media only screen and (min-width: 750px) {
    .featured-product--horizontal .featured-product__aside {
        min-height:calc(var(--height) * var(--images-count, 1))
    }

    .featured-product--horizontal .featured-product__inner {
        position: sticky;
        top: var(--top);
        overflow: hidden
    }

    .featured-product--horizontal.featured-product--full-width:not(.is-reversed) .featured-product__aside:not(.featured-product__aside--bg) .featured-product__inner {
        padding-left: 100%;
        margin-left: -100%
    }

    .featured-product--horizontal.featured-product--full-width.is-reversed .featured-product__aside:not(.featured-product__aside--bg) .featured-product__inner {
        padding-right: 100%;
        margin-right: -100%
    }

    .featured-product--horizontal .featured-product__images {
        display: flex;
        transform: translateX(var(--translateX))
    }

    .featured-product--horizontal.is-reversed .featured-product__images {
        flex-direction: row-reverse
    }

    .featured-product--horizontal .featured-product__image {
        flex: 1 0 100%;
        min-width: 0
    }

    .featured-product--horizontal .featured-product__image .image-wrapper {
        height: var(--height);
        padding-top: 0
    }

    .featured-product--horizontal .featured-product__aside--bg {
        min-height: calc(var(--height-inner) * var(--images-count, 1))
    }

    .featured-product--horizontal .featured-product__aside--bg .featured-product__inner {
        top: var(--top-horizontal)
    }

    .featured-product--horizontal .featured-product__aside--bg .featured-product__image .image-wrapper {
        height: var(--height-inner)
    }
}

timeline-component {
    display: block
}

.timeline {
    --height: calc(100vh - var(--header-sticky-height));
    --top: 0;
    --dot-margin: 6px;
    --dot-margin-offset: calc(var(--dot-margin) * -1);
    --dot-width: 23px;
    --width-indicator: calc(var(--dot-width) + (var(--dot-margin) * 2));
    --padding: calc(var(--width-indicator) + var(--inner));
    --width-line: 1px;
    --counter: 1
}

body.has-header-sticky .timeline {
    --top: var(--header-height)
}

@media only screen and (min-width: 750px) {
    .timeline {
        --height:var(--full-screen)
    }

    body.has-header-sticky .main-content>.shopify-section:first-of-type .timeline {
        --height: calc(var(--full-screen) + var(--announcement-height))
    }

    body:not(.has-header-sticky) .main-content>.shopify-section:first-of-type .timeline {
        --height: var(--full-height)
    }
}

@media only screen and (min-width: 750px) {
    .wrapper--full .timeline__head {
        padding-left:var(--outer);
        padding-right: var(--outer)
    }
}

@media only screen and (max-width: 749px) {
    .wrapper--full .timeline__wrapper {
        padding-left:var(--outer);
        padding-right: var(--outer)
    }
}

.timeline__head {
    overflow: unset
}

.timeline__head:not(:last-child) {
    margin-bottom: var(--gutter)
}

.timeline__body {
    display: block;
    position: relative
}

@media only screen and (min-width: 750px) {
    .timeline__body {
        min-height:calc(var(--height) * var(--counter))
    }
}

@media only screen and (min-width: 750px) {
    .timeline__inner {
        flex:0 1 100%;
        position: sticky;
        top: var(--top);
        display: block;
        min-height: calc(var(--height) * (min(var(--counter), 1)))
    }
}

@media only screen and (max-width: 749px) {
    .timeline__inner {
        display:flex;
        overflow-x: auto;
        overflow-y: hidden;
        padding-left: var(--outer);
        padding-right: var(--outer);
        margin-left: var(--outer-offset);
        margin-right: var(--outer-offset);
        scrollbar-width: none;
        -ms-overflow-style: none
    }

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

.timeline__row {
    --part-width: 50px;
    --dot-position: ((5% + var(--outer)) / 2) - (var(--width-indicator) / 2);
    flex: 0 0 auto;
    position: relative;
    width: 100%;
    padding-top: var(--padding)
}

.timeline__row:not(:last-child) {
    margin-right: var(--gap)
}

.timeline__row:not(:only-child) {
    width: calc(100% - var(--part-width))
}

@media only screen and (min-width: 750px) {
    .timeline__row {
        position:static;
        padding-top: var(--inner)
    }

    .timeline__row:not(:last-child) {
        margin-right: 0
    }

    .timeline__row:not(:only-child) {
        width: auto
    }
}

.timeline__row__editor {
    --row-count: 0;
    --row-height-min: 0px;
    --row-height: max(var(--row-height-min), var(--height));
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    width: 100%;
    height: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none
}

@media only screen and (min-width: 750px) {
    .timeline__row__editor {
        top:calc(var(--row-count) * var(--row-height) + 1px);
        height: var(--row-height)
    }
}

@media only screen and (min-width: 750px) {
    .timeline__image {
        position:absolute;
        top: 0;
        left: 50%;
        bottom: 0;
        right: 0
    }
}

@media only screen and (max-width: 749px) {
    .timeline__image {
        opacity:0.5;
        transition: opacity 0.5s
    }
}

@media only screen and (min-width: 750px) {
    .timeline__image-inner {
        position:sticky;
        top: var(--top);
        max-height: var(--height);
        overflow: hidden;
        height: 100%;
        padding-top: 0
    }
}

@media only screen and (min-width: 750px) {
    .timeline__row:first-child .timeline__image-figure {
        transform:translateY(0)
    }
}

@media only screen and (min-width: 750px) {
    .timeline__image-figure {
        overflow:hidden;
        height: 100%;
        padding-top: 0;
        transform: translateY(100%);
        transition: transform 0.5s
    }

    .timeline__image-figure img {
        object-fit: cover
    }
}

.timeline__content {
    padding: 0 0 calc(var(--outer) * 2);
    overflow-wrap: anywhere
}

@media only screen and (min-width: 750px) {
    .timeline__content {
        position:relative;
        z-index: 1;
        padding: 0 0 var(--outer)
    }
}

@media only screen and (min-width: 750px) {
    .timeline--images .timeline__content {
        width:50%
    }
}

@media only screen and (max-width: 749px) {
    .timeline--images .timeline__content {
        padding-top:var(--outer)
    }
}

.timeline__content__inner {
    padding-top: calc(var(--dot-margin) + 2px);
    margin: 0 auto
}

@media only screen and (min-width: 1400px) {
    .timeline__content__inner {
        max-width:76%
    }
}

@media only screen and (min-width: 990px) and (max-width:1399px) {
    .timeline__content__inner {
        max-width:84%
    }
}

@media only screen and (min-width: 750px) and (max-width:989px) {
    .timeline__content__inner {
        max-width:90%
    }
}

@media only screen and (min-width: 750px) {
    .timeline__content__inner {
        padding-right:var(--outer)
    }
}

@media only screen and (min-width: 750px) {
    .wrapper--narrow .timeline__content__inner,.wrapper--full .timeline__content__inner {
        padding-left:var(--outer)
    }
}

@media only screen and (max-width: 749px) {
    .timeline--images .timeline__content__inner {
        padding-top:0
    }
}

.timeline__content__inner>*:first-child {
    margin-top: 0
}

.timeline__content__inner>*:last-child {
    margin-bottom: 0
}

.timeline__indicator {
    --bg: var(--COLOR-BG);
    position: absolute;
    top: calc((var(--width-indicator) / 2) - (var(--width-line) / 2));
    left: var(--dot-margin);
    right: 0;
    bottom: auto;
    display: block;
    width: auto;
    height: var(--width-line);
    font-size: 0
}

@media only screen and (min-width: 750px) {
    .timeline__indicator {
        top:29px;
        left: calc((var(--width-indicator) / 2) - (var(--width-line) / 2));
        bottom: calc(var(--dot-margin-offset) - var(--inner));
        right: auto;
        width: var(--width-line);
        height: auto
    }

    .wrapper--full-padded .timeline__indicator {
        margin-left: calc(5% - var(--dot-position))
    }

    .wrapper--full .timeline__indicator {
        margin-left: calc(var(--dot-position))
    }
}

@media only screen and (min-width: 990px) {
    .wrapper--full-padded .timeline__indicator {
        margin-left:0
    }

    .wrapper--full .timeline__indicator {
        margin-left: var(--outer)
    }
}

@media only screen and (max-width: 749px) {
    .timeline__row:first-child .timeline__indicator {
        left:0;
        right: auto;
        width: calc(((100% + var(--gap)) * var(--counter)) - var(--gap))
    }
}

@media only screen and (max-width: 749px) {
    .timeline__row:first-child .timeline__indicator__line {
        width:calc(100% / var(--counter) + var(--part-width) - (var(--gap) - (var(--gap) / var(--counter))))
    }
}

.timeline__row:last-child .timeline__indicator {
    background: var(--bg);
    opacity: 1;
    transition: none;
    animation: none
}

@media only screen and (min-width: 750px) {
    .timeline__row:last-child .timeline__indicator {
        display:none
    }
}

@media only screen and (max-width: 749px) {
    .timeline__row:only-child .timeline__indicator {
        display:none
    }
}

.timeline__indicator__line::before,.timeline__indicator::before,.timeline__indicator::after {
    position: absolute;
    top: 0;
    left: 0;
    min-width: 0;
    max-width: 100%;
    min-height: 0;
    max-height: 100%;
    width: 100%;
    height: 100%;
    background: var(--text);
    content: ""
}

@media only screen and (min-width: 750px) {
    .timeline__indicator::after {
        height:var(--percent-desktop,0%);
        opacity: 0
    }
}

@media only screen and (max-width: 749px) {
    .timeline__indicator::after {
        width:var(--dot-width);
        background: var(--bg)
    }
}

.timeline__indicator::before {
    opacity: 0.2
}

.timeline__dot__holder,.timeline__content__outer {
    opacity: 0.5;
    transition: opacity 0.5s
}

.timeline__row.is-selected .timeline__indicator::after,.timeline__row.is-selected .timeline__dot__holder,.timeline__row.is-selected .timeline__content__outer {
    opacity: 1
}

@media only screen and (min-width: 750px) {
    .timeline__row.is-selected .timeline__image-figure {
        transform:translateY(0)
    }
}

@media only screen and (max-width: 749px) {
    .timeline__row.is-selected .timeline__image {
        opacity:1
    }
}

.timeline__row:not(.is-selected) .timeline__image {
    pointer-events: none
}

.timeline__indicator__line {
    position: sticky;
    top: 0;
    left: var(--outer-offset);
    display: block;
    max-width: 100%;
    width: 100%;
    max-height: 100%;
    height: var(--height)
}

@media only screen and (min-width: 750px) {
    .timeline__indicator__line {
        display:none
    }
}

.timeline__indicator__line::before {
    width: var(--percent-mobile,0%);
    height: 100%
}

@media only screen and (max-width: 749px) {
    .timeline__row:not(:first-child) .timeline__indicator::before,.timeline__row:not(:first-child) .timeline__indicator__line::before {
        content:none
    }
}

.timeline__dot__wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--width-indicator)
}

@media only screen and (min-width: 750px) {
    .timeline__dot__wrapper {
        width:var(--width-indicator);
        height: 100%
    }

    .wrapper--full-padded .timeline__dot__wrapper {
        margin-left: calc(5% - var(--dot-position))
    }

    .wrapper--full .timeline__dot__wrapper {
        margin-left: calc(var(--dot-position))
    }
}

@media only screen and (min-width: 990px) {
    .wrapper--full-padded .timeline__dot__wrapper {
        margin-left:0
    }

    .wrapper--full .timeline__dot__wrapper {
        margin-left: var(--outer)
    }
}

.timeline__dot__holder {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

@media only screen and (min-width: 750px) {
    .timeline__dot__holder {
        max-height:100%;
        height: var(--height)
    }
}

.timeline__dot__button {
    --bg: var(--COLOR-BG);
    position: absolute;
    top: 50%;
    left: var(--dot-margin);
    width: var(--dot-width);
    height: var(--dot-width);
    padding: 0;
    margin-top: calc((var(--dot-width) / 2) * -1);
    cursor: pointer
}

@media only screen and (min-width: 750px) {
    .timeline__dot__button {
        left:50%;
        top: var(--dot-margin);
        margin: 0 0 0 calc((var(--dot-width) / 2) * -1)
    }
}

.timeline__dot {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    height: 100%;
    background-color: var(--text);
    border-radius: var(--radius);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0
}

.timeline__promo-group {
    padding-top: var(--outer)
}

.guide__line {
    display: flex;
    margin: 10px 0
}

.guide__line:first-child {
    margin-top: 0
}

.guide__line:last-child {
    margin-bottom: 0
}

.guide__line span {
    flex: 1;
    height: 3px;
    border-radius: 3px;
    margin: 0 2px;
    background: var(--border);
    font-size: 0;
    line-height: 0
}

.guide__line span:first-child {
    margin-left: 0
}

.guide__line span:last-child {
    margin-right: 0
}

.guide__line span.is-active {
    background: var(--text)
}

.guide__content {
    display: flex;
    justify-content: space-around
}

.guide__content--skip-right:after,.guide__content--skip-left:before {
    content: ""
}

.guide__content--skip-right:after,.guide__content--skip-left:before,.guide__left,.guide__right {
    flex: 1 0 0
}

.guide__middle {
    flex-grow: 0;
    max-width: 70%;
    padding: 0 5px;
    text-align: center
}

.guide__right {
    text-align: right
}

.spotlight {
    transition: background 0.3s cubic-bezier(0.4,0,0.2,1)
}

.spotlight__links {
    margin-top: var(--inner)
}

.spotlight__images {
    position: relative;
    overflow: hidden
}

@media only screen and (min-width: 750px) {
    .spotlight__images {
        display:flex;
        align-items: center;
        justify-content: center
    }
}

.spotlight__image {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: var(--aspect-ratio,1);
    z-index: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s cubic-bezier(0.4,0,0.2,1),visibility 0.3s cubic-bezier(0.4,0,0.2,1)
}

.spotlight__image.is-visible {
    opacity: 1;
    visibility: unset;
    z-index: unset
}

@media only screen and (min-width: 750px) {
    .spotlight__image {
        position:absolute;
        margin: auto;
        width: 100%;
        height: 100%
    }
}

.spotlight__button {
    position: absolute;
    padding: var(--inner)
}

.spotlight__links .hero__title {
    transition: transform 0.3s cubic-bezier(0.39,0.575,0.565,1)
}

.spotlight__links .hero__title.is-selected {
    transform: translateX(1rem)
}

.spotlight__links .hero__title.is-selected .spotlight__collection-link {
    background-position: 0 0
}

.spotlight__collection-link {
    --main-color: var(--text-a50);
    --hover-color: var(--text);
    background-image: linear-gradient(to right,var(--hover-color) 0% 50%,var(--main-color) 50% 100%);
    background-size: 200% 100%;
    background-position: 100% 0;
    background-repeat: no-repeat;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: #fff0;
    transition: background-position 0.3s cubic-bezier(0.39,0.575,0.565,1)
}

/*! ============ Add any custom styles below this line ================== */
#cart-reserve-timer {
    padding: 8px 12px;
    font-size: 13px;
    color: #6b4f1d;
    background-color: #fff7e6;
    border: 1px dashed #f1c27d;
    border-radius: 6px;
    display: flex;
    align-items: center;
    gap: 6px;
    text-align: center;
    margin-bottom: 10px
}

currencytextblock {
    display: block;
    width: 100%
}

/* \\\\ talha code last home page section///// */
.Vtl-InstagramFeedWidget__Title::after {
    content: "Follow our Instagram to witness the ritual of craft and see how the global tribe manifests their identity in the real world."!important;
}

.Vtl-InstagramFeedWidget__Title h2 {
    font-size: inherit;
    padding-bottom: 32px;
}

.homepag_newsletter .newsletter-form .input-group__btn {
    /* flex: 0 0 auto; */
    /* padding: 0 0 0 12px; */
    /* color: var(--text); */
    background: #212121!important;
    color: #fff;
    padding: 12px 18px!important;
    margin-bottom: 5px;
}

/* footer ccsss   talha */
ul.supporting-menu__copyright.inline-list.body-small li[data-powered-link] {
    display: none;
}

/* collectio last section css */
.section-columns .grid__heading.heading-large {
    padding-bottom: 60px;
}

.compromise_hero_sect p.hero__description {
    max-width: 591px;
}

.index_hero_Sect p.hero__description {
    max-width: 629px;
}

@media(max-width: 768px) {
    /* \\\ hero sectio. for compromise name/// */ .compromise_hero_sect .hero__title {
        font-size: 24px !important;
        padding-top: 200px!important;
    }

    .compromise_hero_sect .hero__description {
        font-size: 16px !important;
        color: #FFFFFF;
    }

    /* \\\ hero sectio. for 1st home page sect/// */
    .index_hero_Sect .hero__title {
        font-size: 26px !important;
        padding-top: 200px!important;
    }

    .index_hero_Sect .hero__description {
        font-size: 16px !important;
        color: #FFFFFF;
    }

    /* newsletter css responsive moboile */
    .homepag_newsletter .input-group {
        display: flex;
        flex-direction: column;
        gap: 12px;
    }

    .homepag_newsletter .newsletter-form .input-group__field {
        border-bottom: 1px solid #B2B2B2!important;
    }

    .homepag_newsletter .input-group__field {
        width: 100%;
    }

    .homepag_newsletter .newsletter__submit {
        width: 100%;
    }

    .homepag_newsletter .hero__title {
        font-size: 24px !important;
    }

    .homepag_newsletter .hero__content.hero__content--transparent {
        padding-top: 200px;
    }

    .section-columns h2.grid__heading.heading-large {
        font-size: 24px;
        font-family: 'Oswald';
        line-height: 28px;
    }

    .section-columns .column__heading {
        font-size: 16px!important;
    }

    .section-columns .column__text.rte.body-medium {
        max-width: 236px!important;
    }
}

/* Exactly 360px screen */
@media only screen and (width: 360px) {
    .identity_shadow__image img {
        min-width: 360px !important;
    }
}

/* Exactly 375px screen */
@media only screen and (width: 375px) {
    .identity_shadow__image img {
        min-width: 375px !important;
    }
}

/* Exactly 425px screen */
@media only screen and (width: 425px) {
    .identity_shadow__image img {
        min-width: 425px !important;
    }
}

/* Exactly 320px screen */
@media only screen and (width: 320px) {
    .identity_shadow__image img {
        min-width: 320px !important;
    }
}

/*ziyad*/
/*breadcrumb*/
.custom_breadcrumb {
    padding: 20px 40px 20px;
}

.custom_breadcrumb__container {
    max-width: 1440px;
    margin: 0 auto;
    width: 100%;
    font-size: 16px;
}

.custom_breadcrumb__container a {
    text-decoration: none;
    color: #646464;
    transition: 0.3s ease;
    font-size: 14px;
}

.custom_breadcrumb__container a:hover {
    opacity: 0.6;
}

.custom_breadcrumb__separator {
    margin: 0 8px;
    color: #646464;
}

.custom_breadcrumb__current {
    color: #000000;
    font-size: 14px;
    font-weight: 300;
    font-family: 'DM Sans'!important;
    line-height: 1.4;
}

/*end breadcrumb*/
.product__title {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 16px;
}

.price__container .price-item--sale.price-item--last {
    color: #FF0C00;
    font-size: 18px;
    line-height: 24px;
    font-weight: 600;
}

.product__block--lines {
    border: 0px;
    border-bottom: 1px solid #d1cdc4;
}

.Sixe-chart-section {
    display: flex;
    justify-content: space-between;
    margin-bottom: 16px;
}

.size-txt p {
    font-size: 16px;
    font-family: 'DM Sans';
    font-weight: 600;
}

button.size-chart-btn {
    border: 1px solid #D2D2D2;
    font-size: 10px;
    font-family: 'Karla';
    padding: 10px 20px;
    transition: 0.3s !important;
}

button.size-chart-btn:hover {
    border: 1px solid #D2D2D2;
    font-size: 10px;
    font-family: 'Karla';
    padding: 10px 20px;
    background: #000;
    color: #fff;
}

popup-component .radio__legend__link__label {
    display: none;
}

/* .product__submit__item .btn:hover{
  border:1px solid #000;
  background:transparent;
  color:#fff;
} */
.block__icon__text p {
    margin: 0;
    font-size: 14px;
    font-weight: 300;
}

.fit-options {
    display: flex;
    gap: 12px;
    list-style: none;
    padding: 0;
}

.fit-heading {
    font-family: 'DM sans';
    font-size: 13.2px;
}

ul.fit-options {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    margin: 0px;
}

.product__fit {
    margin: 16px 0;
}

.fit-options li {
    font-family: 'DM sans';
    font-size: 13.2px;
    color: #000;
}

.fit-options li:before {
    content: '';
    display: block;
    height: 3px;
    width: 100%;
    background: #E5E5E5;
    margin-bottom: 10px;
}

.fit-options li.active {
    color: #000;
    font-weight: 400;
}

.fit-options li.active:before {
    content: '';
    display: block;
    height: 3px;
    width: 100%;
    background: #000;
}

.complementary-products__title {
    margin-top: 0;
    font-size: 16px;
    font-weight: 600;
    margin: 16px 0 0;
    font-family: 'Oswald';
}

.complementary-products__desc p {
    margin: 0;
    font-size: 16px;
}

.complementary-products .image-wrapper img {
    width: 90px;
    height: 90px;
}

.complementary-products .product-upsell__image {
    width: 90px;
    height: 90px;
}

.complementary-products .product-upsell__holder--button .product-upsell__content {
    padding-right: 0px;
}

.complementary-products .product-upsell__content {
    --inner: 0px 0 0 32px;
    align-items: center;
    display: flex;
}

.complementary-products .product-upsell__variant-title {
    display: none;
}

.complementary-products a.product-upsell__link {
    width: 90%;
}

.complementary-products .btn__outer {
    position: absolute;
    right: 16px;
    bottom: initial;
    display: inline-grid;
    color: #000;
    border: 1px solid;
    top: 30%;
}

.complementary-products .btn__plus {
    background: #000;
}

.complementary-products .btn__text {
    color: #000;
}

cart-bar .cart-bar__product {
    display: flex;
}

cart-bar .cart-bar__image {
    width: 58px;
    height: 58px;
}

cart-bar .second-div {
    display: flex;
    gap: 20px;
}

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

.cart-bar__product__title {
    font-size: 16px;
}

.cart-bar__variant {
    font-size: 14px;
    color: #777;
}

cart-bar .variant-option {
    line-height: 1.4;
}

cart-bar .product__price--sale, .cart-bar__product__price {
    font-size: 12px;
}

.cart-bar__form {
    max-width: unset;
}

.cart-bar__product__price:before {
    display: none;
}

.cart-bar__form .product__submit__add {
    min-width: 170px;
    background: #000;
    color: #fff;
}

.product__price--sale {
    color: #B90000;
}

.product__price--sale s {
    color: #646464;
}

.product__block--buttons {
    margin-bottom: 16px;
}

.product-item-second-image {
    display: none;
}

.product-collection .product-item-second-image {
    display: block;
}

.product-collection .product-item-second-image img {
    width: 90px;
    height: 90px;
}

.product-collection .product-information .price {
    font-size: 12px;
}

.product-collection a.product-link {
    display: flex;
    gap: 10px;
    align-items: center;
}

.product-collection .product-item__info {
    padding: 10px 0 0 0;
}

.product-collection .card-info-inner {
    text-align: left;
}

.product-collection quick-add-product .quick-add__holder {
    opacity: 1 !important;
}

.product-collection .quick-add__holder {
    bottom: -100px;
}

.product-collection .product-item__bg__under {
    overflow: visible;
}

.product-collection .product-item__image {
    overflow: visible;
}

.product-collection button.quick-add__button:before {
    content: '';
    display: block;
    width: 44px;
    height: 44px;
    background-image: url("data:image/svg+xml;utf8,<svg width='48' height='48' viewBox='0 0 48 48' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='0.5' y='0.5' width='47' height='47' stroke='black'/><path d='M25 17C25 16.4696 24.7893 15.9609 24.4142 15.5858C24.0392 15.2107 23.5304 15 23 15C22.4696 15 21.9609 15.2107 21.5858 15.5858C21.2107 15.9609 21 16.4696 21 17M30.26 21.696L31.645 30.696C31.6888 30.9808 31.6705 31.2718 31.5914 31.5489C31.5123 31.8261 31.3743 32.0828 31.1867 32.3016C30.9992 32.5204 30.7665 32.6961 30.5047 32.8167C30.243 32.9372 29.9582 32.9997 29.67 33H16.33C16.0416 33 15.7567 32.9377 15.4947 32.8173C15.2326 32.6969 14.9997 32.5212 14.812 32.3024C14.6242 32.0836 14.4859 31.8267 14.4067 31.5494C14.3275 31.2721 14.3092 30.981 14.353 30.696L15.738 21.696C15.8107 21.2236 16.0501 20.7928 16.4129 20.4817C16.7758 20.1706 17.238 19.9997 17.716 20H28.284C28.7618 19.9999 29.2238 20.1709 29.5865 20.482C29.9491 20.7931 30.1874 21.2238 30.26 21.696Z' stroke='%23212121' stroke-linecap='round' stroke-linejoin='round'/></svg>");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.product-collection button.quick-add__button {
    font-size: 0px;
    padding: 0px;
}

.product-collection .quick-add__holder {
    --btn-offset: 0px;
}

.product-collection .heading-medium {
    margin: 0px !important;
}

.product-collection .grid__heading-holder--inline .grid__heading-text {
    flex: auto;
    text-align: center;
}

.product-collection .grid--slider {
    --item-width: calc((80vw - var(--scrollbar-width) - var(--outer) * 2) * 0.28);
    padding-left: 0px;
}

.collection__products a.btn.btn--solid.btn--white.aos-animate {
    background: transparent;
    font-size: 0px;
    border: 0px;
    padding: 0px;
}

.collection__products .product-item__image-content {
    display: flex;
    gap: 10px;
    align-items: end;
}

.collection__products .heading-medium , .collection__products .card-inner p {
    text-align: left;
}

.collection__products .product-item__image-overlay {
    padding: 10px;
    align-items: end;
}

.collection__products .btn--solid.btn--white {
    --btn-bg-hover: transparent;
}

.newsletter-form .input-group__field {
    outline: 0px;
}

.grandparent .menu__blocks {
    display: flex;
    width: 75%;
}

.grandparent .header__grandparent__links {
    flex: none;
    width: 25%;
}

hover-disclosure .header__dropdown__products {
    display: flex;
    gap: 20px;
    width: 50%;
}

hover-disclosure .menu__block.menu__block--wide {
    display: flex;
    gap: 20px;
}

hover-disclosure .header__dropdown__products .dropdown-product {
    width: 100%;
}

hover-disclosure .header__dropdown__products img {
    width: 100%;
}

hover-disclosure .header__dropdown__image {
    width: 50%;
}

hover-disclosure .dropdown-product p {
    font-size: 16px;
}

hover-disclosure .dropdown-product a {
    text-align: center;
}

hover-disclosure .image-wrapper {
    height: 100% !important;
    padding: 0px !important;
}

.mobile-menu__block-inner .sliderow__title {
    font-size: 20px;
    font-family: 'Oswald';
    padding: 0px;
    text-transform: uppercase;
}

.mobile-menu__block-inner .sliderule__wrapper {
    margin-bottom: 20px;
}

header-drawer .drawer__inner {
    padding: 16px !important;
}

.mobile-menu__block-inner .mobile-menu__block--button {
    padding: 0px;
}

.mobile-menu__block-inner a.btn.btn--solid.btn--primary {
    background: white;
    color: #000;
    font-size: 16px;
}

header-drawer .sliderow__back-button {
    padding: 0px;
}

header-drawer .sliderow--back .sliderow__title {
    justify-content: left;
    padding-left: 30px !important;
    color: red;
}

header-drawer mobile-sliderule .sliderow__links {
    padding-top: var(--item-height);
    overflow: hidden;
    padding: 70px 50px 20px;
}

header-drawer.drawer--header .drawer__inner {
    top: 105px !important;
}

header-drawer.drawer--header .drawer__head {
    display: none !important;
}

.product-card h4 {
    font-size: 16px !important;
}

.rebel-wrapper .badge {
    top: 25px;
    left: 25px;
    border-radius: 0px;
}

.hotspot .hotspot-tooltip {
    opacity: 1 !important;
}

.filter-group__heading {
    text-transform: uppercase;
    font-family: 'Karla';
}

.custom-code:has(.join-coven) {
    padding-left: 0px;
    padding-right: 0px;
}

.cart__price.mob-show {
    display: none;
}

.mobile-show {
    display: none;
}

.mobile-menu__block--menu {
    height: 100%;
}

.mobile-menu__block-inner a.btn.btn--solid.btn--primary {
    background: white;
    color: #000;
    font-size: 16px;
    width: 100%;
}

.template-cart .cart__item__content {
    padding-left: 30px;
    width: 89%;
}

.template-cart .cart .cart__item__content__left {
    width: 100%;
}

.drawer--cart .drawer_content p {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
}

.header-sections:has(.js__header__stuck) .drawer--header .drawer__inner {
    top: 64px !important;
}

.mobile-sliderule .mobile-menu__block--button {
    display: none;
}

.drawer_rec_row {
    height: 300px;
    overflow-y: scroll;
    overflow-x: hidden;
    /* Hide scrollbar (Firefox) */
    scrollbar-width: none;
    /* Hide scrollbar (IE & Edge legacy) */
    -ms-overflow-style: none;
}

/* Hide scrollbar (Chrome, Safari, Edge) */
.drawer_rec_row::-webkit-scrollbar {
    display: none;
}

p.product-upsell__title.h3 {
    font-weight: 600;
}

p.product-upsell__price.sale span.new-price {
    font-size: 12px;
    font-weight: 500;
    color: #0B0B0B;
}

button.product-upsell__btn {
    min-height: 48px;
    min-width: 48px;
    display: flex;
}

.complementary-products .btn__plus {
    opacity: 0;
}

button.product-upsell__btn:before {
    content: "";
    background: url(https://cdn.shopify.com/s/files/1/0844/9146/9147/files/Component_1_1.svg?v=1775039121);
    height: 25px;
    min-width: 25px;
    display: block;
    left: 25%;
    opacity: 1;
    position: absolute;
}

.complementary-products .btn__outer:hover button.product-upsell__btn:before {
    left: 5px;
}

@media screen and (max-width: 767px) {
    .complementary-products .btn__outer {
        right: 0;
    }

    p.product-upsell__price.shee.sale span.product__price--off {
        font-size: 12px;
        min-width: 40px !IMPORTANT;
        max-width: 40px;
        padding: 0;
        min-height: 22px;
        vertical-align: middle;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .mobile-show {
        display: Block;
    }

    .mobile-hide {
        display: none;
    }

    .hotspot .hotspot-tooltip {
        opacity: 0 !important;
    }

    .hotspot:hover .hotspot-tooltip {
        opacity: 1 !important;
    }

    .hotspot-tooltip img {
        width: 48px !important;
    }

    .hotspot {
        left: 30px !important;
    }

    .rebel-wrapper .badge {
        top: 21px;
        left: 36px;
    }

    .index-products .btn.btn--solid.btn--primary {
        display: none;
    }

    .brick__block__text {
        padding: 0px;
    }

    .footer__newsletter__text ul {
        padding: 0 0 0 40px ;
    }

    .template-product h2.heading-medium.aos-animate {
        max-width: 100%;
    }

    .product-collection .quick-add__button.btn--outline {
        border: 0px;
    }

    .product-collection {
        padding-left: 10px;
        padding-right: 0px;
    }

    .product-collection quick-add-product {
        display: block;
        width: 100%;
        position: absolute;
        bottom: 10px;
        right: 0;
        left: 42%;
        display: inline-block;
    }

    .product-collection .product-item__title {
        margin: 0;
        width: 70%;
    }

    #festival-ready-collection-punkrave h2.heading-medium.aos-animate {
        max-width: 100%;
    }

    .cart__item__content {
        padding-left: 10px !important;
    }

    .cart__price.mob-hide {
        display: none;
    }

    .cart__price.mob-show {
        display: Block;
        font-size: 12px;
    }

    .cart-bar__image {
        padding: 0px;
        margin: 0px 10px 0 0px;
        ; }

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

    .cart-bar__image img {
        display: block;
        width: 58px;
        height: 58px;
    }

    .cart-bar__product__price {
        position: absolute;
        right: 5px;
        bottom: 60px;
        width: 43%;
    }

    .cart-bar__form {
        max-width: 100%;
        width: 100%;
    }

    .reviewSecMain {
        order: 1;
    }

    .cartPageRecomm {
        order: 2;
    }

    .cart-block.mobile-show.body-medium {
        order: 3;
    }

    .cart__items {
        order: 4;
    }

    .complementary-products .product-upsell__content {
        --inner: 0px 0 0 16px;
    }

    .drawer--cart .drawer__inner {
        max-width: 600px;
        padding: 16px;
    }

    .drawer__inner h3.drawer__heading {
        font-size: 26px !important;
    }

    .drawer--cart .cart__item {
        padding-left: 0px;
        padding-right: 0px;
    }

    .drawer__items .cart__item__title, .drawer__items .cart__item__selected-options, .drawer__items .cart__price, .drawer__items .cart__item__remove {
        font-size: 10px !important;
    }

    .drawer--cart .cart__quantity {
        width: 64px !important;
    }

    .drawer--cart .drawer_content p {
        font-size: 12px !important;
    }

    .drawer--cart .drawer_rec_item a {
        gap: 10px !important;
    }

    .drawer_rec_item a .cartImgHolder {
        width: 90px !important;
        height: 90px !important;
    }

    .drawer_rec_item a .cartImgHolder img {
        height: 90px !important;
        width: 90px !important;
        object-fit: cover;
    }

    .drawer--cart .cart__total .cart__total__price {
        font-size: 16px !important;
    }

    .drawer .cart__foot__inner {
        padding: 24px 0 0 !important;
    }
}

/*New Changes*/
.supports-touch hover-images::after {
    display: none!important;
}

.product_label {
    background: #B90000;
    padding: 8px 14px;
    font-family: 'karla';
    font-weight: 400;
    line-height: 100%;
    color: #FFFFFF;
    font-size: 16px;
}

.product__page .product_label {
    position: absolute;
    z-index: 2;
    top: 15px;
    left: 15px;
}

.product__page .product__images {
    position: relative;
}

.header__menu a.navlink {
    cursor: pointer;
}

.menu__block .product_label {
    position: absolute;
    top: 5px;
    left: 5px;
}

.dropdown-product {
    position: relative;
}

.filter-group:has(details[data-filter="availability"]) {
    display: none;
}

.filter-group:has(details[data-filter="fabric-features"]) {
    display: none;
}

.filter-group:has(details[data-filter="symbols"]) {
    display: none;
}

.filter-group:has(details[data-filter="embellishments"]) {
    display: none;
}

.filter-group:has(details[data-filter="materials"]) {
    display: none;
}

.filter-group:has(details[data-filter="style-influence"]) {
    display: none;
}

.filter-group:has(details[data-filter="colour"]) {
    display: none;
}

.product-upsell {
    border-bottom: 1px solid #D1CDC4;
    padding-bottom: 10px;
}

span.discount-price {
    max-width: fit-content;
    padding: 4px 8px;
    background: #B90000;
    color: #fff;
    font-size: 12px;
    font-weight: 400;
}

.drawer_content span {
    margin-top: 8px;
}

@media screen and (max-width: 768px) {
    .identity_shadow__image {
        width: 100%!important;
    }
}

/* .radio__fieldset{
  display:flex !important;
  flex-direction:column !important;
}
label.swatch-input__label {
    height: 84px !important;
    width: 84px !important;
    border-radius: 12px !important;
    margin-bottom: 15px;
}
label.swatch-input__label span {
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translate(-50%, 0px);
}
.swatch__button.sale::before{
    background:#fff !important;
}
legend.radio__legend {
    display: flex;
    justify-content: space-between;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
}
.radio__legend__label--text {
    width: 100%;
}
.radio__legend__value {
    text-align: end;
} */
.swatch__button .sibling__link--current, .swatch__button input:checked~label {
    overflow: initial;
    box-shadow: 0 0 0 3px #000000 !important;
}

.swatch__button.sale::before {
    background: #fff !important;
}

.header__dropdown {
    background: transparent !IMPORTANT;
}

.hero-banner .hero-bnner-subheading p {
    color: #000;
    display: flex;
    gap: 10px;
    align-items: center;
    letter-spacing: 6px;
}

.hero-banner .hero-bnner-subheading p::before, .hero-banner .hero-bnner-subheading p::after {
    content: "";
    display: block;
    width: 50px;
    height: 4px;
    background-color: red;
}

.hero-banner .hero-bnner-desc p {
    font-size: 24px;
}

.hero-banner h2.hero__title.heading-x-large.aos-animate {
    font-size: 74px;
}

.hero-banner a.btn.btn--solid.btn--primary {
    font-size: 20px;
    padding: 10px 40px;
}

@media screen and (max-width: 767px) {
    .hero-banner h2.hero__title.heading-x-large.aos-animate {
        font-size: 43px !important;
    }

    .hero-banner .hero-bnner-subheading p {
        font-size: 13px !important;
    }

    .hero-banner .hero-bnner-desc p {
        font-size: 14px !important;
    }

    .hero-banner .hero__content.hero__content--transparent {
        padding: 50px 0 20px;
    }

    .hero-banner a.btn.btn--solid.btn--primary {
        font-size: 14px;
        padding: 10px 40px !important;
    }
}
