.banner {
    display: flex;
    position: relative;
    flex-direction: column
}

.banner__box {
    text-align: center
}

@media only screen and (max-width: 749px) {
    .banner--content-align-mobile-right .banner__box {
        text-align: right
    }

    .banner--content-align-mobile-left .banner__box {
        text-align: left
    }
}

@media only screen and (min-width: 750px) {
    .banner--content-align-right .banner__box {
        text-align: right
    }

    .banner--content-align-left .banner__box {
        text-align: left
    }

    .banner--content-align-left.banner--desktop-transparent .banner__box,
    .banner--content-align-right.banner--desktop-transparent .banner__box,
    .banner--medium.banner--desktop-transparent .banner__box {
        max-width: 68rem
    }
}

@media screen and (max-width: 749px) {

    .banner--small.banner--mobile-bottom:not(.banner--adapt) .banner__media,
    .banner--small.banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt)>.banner__media {
        height: 28rem
    }

    .banner--medium.banner--mobile-bottom:not(.banner--adapt) .banner__media,
    .banner--medium.banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt)>.banner__media {
        height: 34rem
    }

    .banner--large.banner--mobile-bottom:not(.banner--adapt) .banner__media,
    .banner--large.banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt)>.banner__media {
        height: 39rem
    }

    .banner--small:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
        min-height: 28rem
    }

    .banner--medium:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
        min-height: 34rem
    }

    .banner--large:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
        min-height: 39rem
    }
}

@media screen and (min-width: 750px) {
    .banner {
        flex-direction: row
    }

    .banner--small:not(.banner--adapt) {
        min-height: 42rem
    }

    .banner--medium:not(.banner--adapt) {
        min-height: 56rem
    }

    .banner--large:not(.banner--adapt) {
        min-height: 72rem
    }

    .banner__content.banner__content--top-left {
        align-items: flex-start;
        justify-content: flex-start
    }

    .banner__content.banner__content--top-center {
        align-items: flex-start;
        justify-content: center
    }

    .banner__content.banner__content--top-right {
        align-items: flex-start;
        justify-content: flex-end
    }

    .banner__content.banner__content--middle-left {
        align-items: center;
        justify-content: flex-start
    }

    .banner__content.banner__content--middle-center {
        align-items: center;
        justify-content: center
    }

    .banner__content.banner__content--middle-right {
        align-items: center;
        justify-content: flex-end
    }

    .banner__content.banner__content--bottom-left {
        align-items: flex-end;
        justify-content: flex-start
    }

    .banner__content.banner__content--bottom-center {
        align-items: flex-end;
        justify-content: center
    }

    .banner__content.banner__content--bottom-right {
        align-items: flex-end;
        justify-content: flex-end
    }
}

@media screen and (max-width: 749px) {
    .banner:not(.banner--stacked) {
        flex-direction: row;
        flex-wrap: wrap
    }

    .banner--stacked {
        height: auto
    }

    .banner--stacked .banner__media {
        flex-direction: column
    }
}

.banner__media {
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%
}

.banner__media-half {
    width: 50%
}

.banner__media-half+.banner__media-half {
    right: 0;
    left: auto
}

@media screen and (max-width: 749px) {
    .banner--stacked .banner__media-half {
        width: 100%
    }

    .banner--stacked .banner__media-half+.banner__media-half {
        order: 1
    }
}

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

.banner--adapt,
.banner--adapt_image.banner--mobile-bottom .banner__media:not(.placeholder) {
    height: auto
}

@media screen and (max-width: 749px) {

    .banner--mobile-bottom .banner__media,
    .banner--stacked:not(.banner--mobile-bottom) .banner__media {
        position: relative
    }

    .banner--stacked.banner--adapt .banner__content {
        height: auto
    }

    .banner:not(.banner--mobile-bottom):not(.email-signup-banner) .banner__box {
        background: transparent;
        --color-foreground: 255, 255, 255;
        --color-button: 255, 255, 255;
        --color-button-text: 0, 0, 0
    }

    .banner:not(.banner--mobile-bottom) .banner__box {
        border: none;
        border-radius: 0;
        box-shadow: none
    }

    .banner:not(.banner--mobile-bottom) .button--secondary {
        --color-button: 255, 255, 255;
        --color-button-text: 255, 255, 255;
        --alpha-button-background: 0
    }

    .banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
        position: absolute;
        height: auto
    }

    .banner--stacked.banner--adapt:not(.banner--mobile-bottom) .banner__content {
        max-height: 100%;
        overflow: hidden;
        position: absolute
    }

    .banner--stacked:not(.banner--adapt) .banner__media {
        position: relative
    }

    .banner:before {
        display: none !important
    }

    .banner--stacked .banner__media-image-half {
        width: 100%
    }
}

.banner__content {
    padding: 0;
    display: flex;
    position: relative;
    width: 100%;
    align-items: center;
    justify-content: center;
    z-index: 2
}

@media screen and (min-width: 750px) {
    .banner__content {
        padding: 5rem
    }

    .banner__content--top-left {
        align-items: flex-start;
        justify-content: flex-start
    }

    .banner__content--top-center {
        align-items: flex-start;
        justify-content: center
    }

    .banner__content--top-right {
        align-items: flex-start;
        justify-content: flex-end
    }

    .banner__content--middle-left {
        align-items: center;
        justify-content: flex-start
    }

    .banner__content--middle-center {
        align-items: center;
        justify-content: center
    }

    .banner__content--middle-right {
        align-items: center;
        justify-content: flex-end
    }

    .banner__content--bottom-left {
        align-items: flex-end;
        justify-content: flex-start
    }

    .banner__content--bottom-center {
        align-items: flex-end;
        justify-content: center
    }

    .banner__content--bottom-right {
        align-items: flex-end;
        justify-content: flex-end
    }
}

@media screen and (max-width: 749px) {
    .banner--mobile-bottom:not(.banner--stacked) .banner__content {
        order: 2
    }

    .banner:not(.banner--mobile-bottom) .field__input {
        background-color: transparent
    }
}

.banner__box {
    padding: 4rem 3.5rem;
    position: relative;
    height: fit-content;
    align-items: center;
    text-align: center;
    width: 100%;
    word-wrap: break-word;
    z-index: 1
}

@media screen and (min-width: 750px) {
    .banner--desktop-transparent .banner__box {
        background: transparent;
        --color-foreground: 255, 255, 255;
        --color-button: 255, 255, 255;
        --color-button-text: 0, 0, 0;
        max-width: 89rem;
        border: none;
        border-radius: 0;
        box-shadow: none
    }

    .banner--desktop-transparent .button--secondary {
        --color-button: 255, 255, 255;
        --color-button-text: 255, 255, 255;
        --alpha-button-background: 0
    }

    .banner--desktop-transparent .content-container:after {
        display: none
    }
}

@media screen and (max-width: 749px) {

    .banner--mobile-bottom:after,
    .banner--mobile-bottom .banner__media:after {
        display: none
    }
}

.banner:after,
.banner__media:after {
    content: "";
    position: absolute;
    top: 0;
    background: #000;
    opacity: 0;
    z-index: 1;
    width: 100%;
    height: 100%
}

.banner__box>*+.banner__text {
    margin-top: 1.5rem
}

@media screen and (min-width: 750px) {
    .banner__box>*+.banner__text {
        margin-top: 2rem
    }
}

.banner__box>*+* {
    margin-top: 1rem
}

.banner__box>*:first-child {
    margin-top: 0
}

@media screen and (max-width: 749px) {
    .banner--stacked .banner__box {
        width: 100%
    }
}

@media screen and (min-width: 750px) {
    .banner__box {
        width: auto;
        max-width: 71rem;
        min-width: 45rem
    }
}

@media screen and (min-width: 1400px) {
    .banner__box {
        max-width: 90rem
    }
}

.banner__heading {
    margin-bottom: 0
}

.banner__box .banner__heading+* {
    margin-top: 1rem
}

.banner__buttons {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 1rem;
    max-width: 45rem;
    word-break: break-word
}

@media screen and (max-width: 749px) {
    .banner--content-align-mobile-right .banner__buttons--multiple {
        justify-content: flex-end
    }

    .banner--content-align-mobile-center .banner__buttons--multiple>* {
        flex-grow: 1;
        min-width: 22rem
    }
}

@media screen and (min-width: 750px) {
    .banner--content-align-center .banner__buttons--multiple>* {
        flex-grow: 1;
        min-width: 22rem
    }

    .banner--content-align-right .banner__buttons--multiple {
        justify-content: flex-end
    }
}

.banner__box>*+.banner__buttons {
    margin-top: 2rem
}

.banner__content--cover-left {
    left: 0;
    right: auto;
    padding: 0;
    margin: 0;
    width: 50%;
    height: 100%;
    position: absolute
}

.banner__content--cover-right {
    left: auto;
    right: 0;
    padding: 0;
    margin: 0;
    width: 50%;
    height: 100%;
    position: absolute
}

.banner__content--cover-left .content-container,
.banner__content--cover-right .content-container {
    height: 100%;
    width: 100%;
    max-width: 100%;
    align-items: flex-start;
    justify-content: center;
    display: flex;
    flex-direction: column;
    box-sizing: border-box
}

.content-container a:not(.button) {
    color: inherit !important;
    font-weight: 600 !important
}

.hide-on-mobile {
    display: inherit
}

.only-on-mobile {
    display: none
}

@media screen and (max-width: 749px) {

    .banner__content--cover-left,
    .banner__content--cover-right {
        position: relative;
        width: 100%
    }

    .banner__content--cover-left .content-container,
    .banner__content--cover-right .content-container {
        align-items: center
    }

    .hide-on-mobile {
        display: none
    }

    .only-on-mobile {
        display: inherit
    }
}

#Banner-template--16304371630323__166116559722635f4c::after {
    opacity: 0.0;
}

.card-wrapper {
    color: inherit;
    height: 100%;
    position: relative;
    text-decoration: none
}

.card {
    text-align: var(--card-text-alignment);
    text-decoration: none
}

.card:not(.ratio) {
    display: flex;
    flex-direction: column;
    height: 100%
}

.card--card {
    height: 100%
}

.card--card,
.card--standard .card__inner {
    border-radius: var(--card-corner-radius);
    border: var(--card-border-width) solid rgba(var(--color-foreground), var(--card-border-opacity));
    position: relative;
    box-sizing: border-box
}

.card--card:after,
.card--standard .card__inner:after {
    content: "";
    position: absolute;
    width: calc(var(--card-border-width) * 2 + 100%);
    height: calc(var(--card-border-width) * 2 + 100%);
    top: calc(var(--card-border-width) * -1);
    left: calc(var(--card-border-width) * -1);
    z-index: -1;
    border-radius: var(--card-corner-radius);
    box-shadow: var(--card-shadow-horizontal-offset) var(--card-shadow-vertical-offset) var(--card-shadow-blur-radius) rgba(var(--color-shadow), var(--card-shadow-opacity))
}

.card .card__inner .card__media {
    overflow: hidden;
    z-index: 0;
    border-radius: calc(var(--card-corner-radius) - var(--card-border-width) - var(--card-image-padding))
}

.card--card .card__inner .card__media {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0
}

.card--standard.card--text {
    background-color: transparent
}

.card-information {
    text-align: var(--card-text-alignment)
}

.card__media,
.card .media {
    bottom: 0;
    position: absolute;
    top: 0
}

.card .media {
    width: 100%
}

.card__media {
    margin: var(--card-image-padding);
    width: calc(100% - 2 * var(--card-image-padding))
}

.card--standard .card__media {
    margin: var(--card-image-padding)
}

.card__inner {
    width: 100%
}

.card--media .card__inner .card__content {
    padding: calc(var(--card-image-padding) + 1rem);
    position: relative
}

.card__content {
    display: grid;
    grid-template-rows: minmax(0, 1fr) max-content minmax(0, 1fr);
    padding: 1rem;
    width: 100%;
    flex-grow: 1
}

.card__content--auto-margins {
    grid-template-rows: minmax(0, auto) max-content minmax(0, auto)
}

.card__information {
    grid-row-start: 2;
    padding: 1.3rem 1rem
}

.card:not(.ratio)>.card__content {
    grid-template-rows: max-content minmax(0, 1fr) max-content auto
}

@media screen and (min-width: 750px) {
    .card__information {
        padding-bottom: 1.7rem;
        padding-top: 1.7rem
    }
}

.card__badge {
    align-self: flex-end;
    grid-row-start: 3;
    justify-self: flex-start
}

.card__badge.top {
    align-self: flex-start;
    grid-row-start: 1
}

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

.card>.card__content>.card__badge {
    margin: 1.3rem
}

.card__media .media img {
    height: 100%;
    object-fit: cover;
    object-position: center center;
    width: 100%
}

.card__inner:not(.ratio)>.card__content {
    height: 100%
}

.card__heading {
    margin-top: 0;
    margin-bottom: 0
}

.card__heading:last-child {
    margin-bottom: 0
}

.card--card.card--media>.card__content {
    margin-top: calc(0rem - var(--card-image-padding))
}

.card--standard.card--text a:after,
.card--card .card__heading a:after {
    bottom: calc(var(--card-border-width) * -1);
    left: calc(var(--card-border-width) * -1);
    right: calc(var(--card-border-width) * -1);
    top: calc(var(--card-border-width) * -1)
}

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

.card__heading a:after {
    outline-offset: .3rem
}

.card__heading a:focus:after {
    box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3);
    outline: .2rem solid rgba(var(--color-foreground), .5)
}

.card__heading a:focus-visible:after {
    box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3);
    outline: .2rem solid rgba(var(--color-foreground), .5)
}

.card__heading a:focus:not(:focus-visible):after {
    box-shadow: none;
    outline: 0
}

.card__heading a:focus {
    box-shadow: none;
    outline: 0
}

@media screen and (min-width: 990px) {

    .card .media.media--hover-effect>img:only-child,
    .card-wrapper .media.media--hover-effect>img:only-child {
        transition: transform var(--duration-long) ease
    }

    .card:hover .media.media--hover-effect>img:first-child:only-child,
    .card-wrapper:hover .media.media--hover-effect>img:first-child:only-child {
        transform: scale(1.03)
    }

    .card-wrapper:hover .media.media--hover-effect>img:first-child:not(:only-child) {
        opacity: 0
    }

    .card-wrapper:hover .media.media--hover-effect>img+img {
        opacity: 1;
        transition: transform var(--duration-long) ease;
        transform: scale(1.03)
    }

    .underline-links-hover:hover a {
        text-decoration: underline;
        text-underline-offset: .3rem
    }
}

.card--standard.card--media .card__inner .card__information,
.card--standard.card--text>.card__content .card__heading,
.card--standard>.card__content .card__badge,
.card--standard.card--text.article-card>.card__content .card__information,
.card--standard>.card__content .card__caption {
    display: none
}

.card--standard>.card__content {
    padding: 0
}

.card--standard>.card__content .card__information {
    padding-left: 0;
    padding-right: 0
}

.card--card.card--media .card__inner .card__information,
.card--card.card--text .card__inner,
.card--card.card--media>.card__content .card__badge {
    display: none
}

.card--extend-height {
    height: 100%
}

.card--extend-height.card--standard.card--text,
.card--extend-height.card--media {
    display: flex;
    flex-direction: column
}

.card--extend-height.card--standard.card--text .card__inner,
.card--extend-height.card--media .card__inner {
    flex-grow: 1
}

.card .icon-wrap {
    margin-left: .8rem;
    white-space: nowrap;
    transition: transform var(--duration-short) ease;
    overflow: hidden
}

.card-information>*+* {
    margin-top: .5rem
}

.card-information {
    width: 100%
}

.card-information>* {
    line-height: calc(1 + .4 / var(--font-body-scale));
    color: rgb(var(--color-foreground))
}

.card-information>.price {
    color: rgb(var(--color-foreground))
}

.card-information>.rating {
    margin-top: .4rem
}

.card-information>*:not(.visually-hidden:first-child)+*:not(.rating) {
    margin-top: .7rem
}

.card-information .caption {
    letter-spacing: .07rem
}

.card-article-info {
    margin-top: 1rem
}

.price {
    font-size: 1.6rem;
    letter-spacing: .1rem;
    line-height: calc(1 + .5 / var(--font-body-scale));
    color: rgb(var(--color-foreground))
}

.price>* {
    display: inline-block;
    vertical-align: top
}

.price.price--unavailable {
    visibility: hidden
}

.price--end {
    text-align: right
}

.price .price-item {
    margin: 0 1rem 0 0
}

.price__regular .price-item--regular {
    margin-right: 0
}

.price:not(.price--show-badge) .price-item--last:last-of-type {
    margin: 0
}

@media screen and (min-width: 750px) {
    .price {
        margin-bottom: 0
    }
}

.price--large {
    font-size: 1.6rem;
    line-height: calc(1 + .5 / var(--font-body-scale));
    letter-spacing: .13rem
}

@media screen and (min-width: 750px) {
    .price--large {
        font-size: 1.8rem
    }
}

.price--sold-out .price__availability,
.price__regular {
    display: block
}

.price__sale,
.price__availability,
.price .price__badge-sale,
.price .price__badge-sold-out,
.price--on-sale .price__regular,
.price--on-sale .price__availability {
    display: none
}

.price--sold-out .price__badge-sold-out,
.price--on-sale .price__badge-sale {
    display: inline-block
}

.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: rgba(var(--color-foreground), .75);
    font-size: 1.3rem
}

.unit-price {
    display: block;
    font-size: 1.1rem;
    letter-spacing: .04rem;
    line-height: calc(1 + .2 / var(--font-body-scale));
    margin-top: .2rem;
    text-transform: uppercase;
    color: rgba(var(--color-foreground), .7)
}

slider-component {
    --desktop-margin-left-first-item: max(5rem, calc((100vw - var(--page-width) + 10rem - var(--grid-desktop-horizontal-spacing)) / 2));
    position: relative;
    display: block
}

slider-component.slider-component-full-width {
    --desktop-margin-left-first-item: 1.5rem
}

@media screen and (max-width: 749px) {
    slider-component.page-width {
        padding: 0 1.5rem
    }
}

@media screen and (min-width: 749px) and (max-width: 990px) {
    slider-component.page-width {
        padding: 0 5rem
    }
}

@media screen and (max-width: 989px) {
    .no-js slider-component .slider {
        padding-bottom: 3rem
    }
}

.slider__slide {
    --focus-outline-padding: .5rem;
    --shadow-padding-top: calc((var(--shadow-vertical-offset) * -1 + var(--shadow-blur-radius)) * var(--shadow-visible));
    --shadow-padding-bottom: calc((var(--shadow-vertical-offset) + var(--shadow-blur-radius)) * var(--shadow-visible));
    scroll-snap-align: start;
    flex-shrink: 0;
    padding-bottom: 0
}

@media screen and (max-width: 749px) {
    .slider.slider--mobile {
        position: relative;
        flex-wrap: inherit;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        scroll-padding-left: 1.5rem;
        -webkit-overflow-scrolling: touch;
        margin-bottom: 1rem
    }

    .slider.slider--mobile .slider__slide {
        margin-bottom: 0;
        padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
        padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom))
    }

    .slider.slider--mobile.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
        padding-bottom: var(--focus-outline-padding)
    }

    .slider.slider--mobile.contains-content-container .slider__slide {
        --focus-outline-padding: 0rem
    }
}

@media screen and (min-width: 750px) {
    .slider.slider--tablet-up {
        position: relative;
        flex-wrap: inherit;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        scroll-padding-left: 1rem;
        -webkit-overflow-scrolling: touch
    }

    .slider.slider--tablet-up .slider__slide {
        margin-bottom: 0
    }
}

@media screen and (max-width: 989px) {
    .slider.slider--tablet {
        position: relative;
        flex-wrap: inherit;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        scroll-padding-left: 1.5rem;
        -webkit-overflow-scrolling: touch;
        margin-bottom: 1rem
    }

    .slider.slider--tablet .slider__slide {
        margin-bottom: 0;
        padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
        padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom))
    }

    .slider.slider--tablet.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
        padding-bottom: var(--focus-outline-padding)
    }

    .slider.slider--tablet.contains-content-container .slider__slide {
        --focus-outline-padding: 0rem
    }
}

.slider--everywhere {
    position: relative;
    flex-wrap: inherit;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 1rem
}

.slider.slider--everywhere .slider__slide {
    margin-bottom: 0;
    scroll-snap-align: center
}

@media screen and (min-width: 990px) {
    .slider-component-desktop.page-width {
        max-width: none
    }

    .slider--desktop {
        position: relative;
        flex-wrap: inherit;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        margin-bottom: 1rem;
        scroll-padding-left: var(--desktop-margin-left-first-item)
    }

    .slider.slider--desktop .slider__slide {
        margin-bottom: 0;
        padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
        padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom))
    }

    .slider--desktop .slider__slide:first-child {
        margin-left: var(--desktop-margin-left-first-item);
        scroll-margin-left: var(--desktop-margin-left-first-item)
    }

    .slider.slider--desktop .slider__slide:last-child {
        margin-right: 5rem
    }

    .slider-component-full-width .slider--desktop {
        scroll-padding-left: 1.5rem
    }

    .slider-component-full-width .slider--desktop .slider__slide:first-child {
        margin-left: 1.5rem;
        scroll-margin-left: 1.5rem
    }

    .slider-component-full-width .slider--desktop .slider__slide:last-child {
        margin-right: 1.5rem
    }

    .slider--desktop.grid--5-col-desktop .grid__item {
        width: calc((100% - var(--desktop-margin-left-first-item)) / 5 - var(--grid-desktop-horizontal-spacing) * 2)
    }

    .slider--desktop.grid--4-col-desktop .grid__item {
        width: calc((100% - var(--desktop-margin-left-first-item)) / 4 - var(--grid-desktop-horizontal-spacing) * 3)
    }

    .slider--desktop.grid--3-col-desktop .grid__item {
        width: calc((100% - var(--desktop-margin-left-first-item)) / 3 - var(--grid-desktop-horizontal-spacing) * 4)
    }

    .slider--desktop.grid--2-col-desktop .grid__item {
        width: calc((100% - var(--desktop-margin-left-first-item)) / 2 - var(--grid-desktop-horizontal-spacing) * 5)
    }

    .slider--desktop.grid--1-col-desktop .grid__item {
        width: calc((100% - var(--desktop-margin-left-first-item)) - var(--grid-desktop-horizontal-spacing) * 9)
    }

    .slider.slider--desktop.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
        padding-bottom: var(--focus-outline-padding)
    }

    .slider.slider--desktop.contains-content-container .slider__slide {
        --focus-outline-padding: 0rem
    }
}

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

.slider {
    scrollbar-color: rgb(var(--color-foreground)) rgba(var(--color-foreground), .04);
    -ms-overflow-style: none;
    scrollbar-width: none
}

.slider::-webkit-scrollbar {
    height: .4rem;
    width: .4rem;
    display: none
}

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

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

.slider::-webkit-scrollbar-thumb {
    background-color: rgb(var(--color-foreground));
    border-radius: .4rem;
    border: 0
}

.slider::-webkit-scrollbar-track {
    background: rgba(var(--color-foreground), .04);
    border-radius: .4rem
}

.slider-counter {
    display: flex;
    justify-content: center;
    min-width: 4.4rem
}

@media screen and (min-width: 750px) {
    .slider-counter--dots {
        margin: 0 1.2rem
    }
}

.slider-counter__link {
    padding: 1rem
}

@media screen and (max-width: 749px) {
    .slider-counter__link {
        padding: .7rem
    }
}

.slider-counter__link--dots .dot {
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    border: .1rem solid rgba(var(--color-foreground), .5);
    padding: 0;
    display: block
}

.slider-counter__link--active.slider-counter__link--dots .dot {
    background-color: rgb(var(--color-foreground))
}

@media screen and (forced-colors: active) {
    .slider-counter__link--active.slider-counter__link--dots .dot {
        background-color: CanvasText
    }
}

.slider-counter__link--dots:not(.slider-counter__link--active):hover .dot {
    border-color: rgb(var(--color-foreground))
}

.slider-counter__link--dots .dot,
.slider-counter__link--numbers {
    transition: transform .2s ease-in-out
}

.slider-counter__link--active.slider-counter__link--numbers,
.slider-counter__link--dots:not(.slider-counter__link--active):hover .dot,
.slider-counter__link--numbers:hover {
    transform: scale(1.1)
}

.slider-counter__link--numbers {
    color: rgba(var(--color-foreground), .5);
    text-decoration: none
}

.slider-counter__link--numbers:hover {
    color: rgb(var(--color-foreground))
}

.slider-counter__link--active.slider-counter__link--numbers {
    text-decoration: underline;
    color: rgb(var(--color-foreground))
}

.slider-buttons {
    display: flex;
    align-items: center;
    justify-content: center
}

@media screen and (min-width: 990px) {
    .slider:not(.slider--everywhere):not(.slider--desktop)+.slider-buttons {
        display: none
    }
}

@media screen and (max-width: 989px) {
    .slider--desktop:not(.slider--tablet)+.slider-buttons {
        display: none
    }
}

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

.slider-button {
    color: rgba(var(--color-foreground), .75);
    background: transparent;
    border: none;
    cursor: pointer;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center
}

.slider-button:not([disabled]):hover {
    color: rgb(var(--color-foreground))
}

.slider-button .icon {
    height: .6rem
}

.slider-button[disabled] .icon {
    color: rgba(var(--color-foreground), .3);
    cursor: not-allowed
}

.slider-button--next .icon {
    transform: rotate(-90deg)
}

.slider-button--prev .icon {
    transform: rotate(90deg)
}

.slider-button--next:not([disabled]):hover .icon {
    transform: rotate(-90deg) scale(1.1)
}

.slider-button--prev:not([disabled]):hover .icon {
    transform: rotate(90deg) scale(1.1)
}

@media screen and (max-width: 749px) {
    .collection .grid__item:only-child {
        flex: 0 0 100%;
        max-width: 100%
    }
}

@media screen and (max-width: 989px) {
    .collection .slider.slider--tablet {
        margin-bottom: 1.5rem
    }
}

.collection .loading-overlay {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: none;
    width: 100%;
    padding: 0 1.5rem;
    opacity: .7
}

@media screen and (min-width: 750px) {
    .collection .loading-overlay {
        padding-left: 5rem;
        padding-right: 5rem
    }
}

.collection.loading .loading-overlay {
    display: block
}

.collection--empty .title-wrapper {
    margin-top: 10rem;
    margin-bottom: 15rem
}

@media screen and (max-width: 989px) {
    .collection .slider--tablet.product-grid {
        scroll-padding-left: 1.5rem
    }
}

.collection__description>* {
    margin: 0
}

.collection__title.title-wrapper {
    margin-bottom: 2.5rem
}

.collection__title .title:not(:only-child) {
    margin-bottom: 1rem
}

@media screen and (min-width: 990px) {
    .collection__title--desktop-slider .title {
        margin-bottom: 2.5rem
    }

    .collection__title.title-wrapper--self-padded-tablet-down {
        padding: 0 5rem
    }

    .collection slider-component:not(.page-width-desktop) {
        padding: 0
    }

    .collection--full-width slider-component:not(.slider-component-desktop) {
        padding: 0 1.5rem;
        max-width: none
    }
}

.collection__view-all a:not(.link) {
    margin-top: 1rem
}

.section-template--16304371630323__featured-collection-0-padding {
    padding-top: 45px;
    padding-bottom: 45px;
}

@media screen and (min-width: 750px) {
    .section-template--16304371630323__featured-collection-0-padding {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}

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

.product .rating-star {
    --letter-spacing: .8;
    --font-size: 1.7
}

.card-wrapper .rating-star {
    --letter-spacing: .7;
    --font-size: 1.4
}

.rating-star {
    --percent: calc((var(--rating) / var(--rating-max) + var(--rating-decimal) * var(--font-size) / (var(--rating-max) * (var(--letter-spacing) + var(--font-size)))) * 100%);
    letter-spacing: calc(var(--letter-spacing) * 1rem);
    font-size: calc(var(--font-size) * 1rem);
    line-height: 1;
    display: inline-block;
    font-family: Times;
    margin: 0
}

.rating-star:before {
    content: "\2605\2605\2605\2605\2605";
    background: linear-gradient(90deg, var(--color-icon) var(--percent), rgba(var(--color-foreground), .15) var(--percent));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent
}

.rating-text {
    display: none
}

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

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

    .rating-text {
        display: block
    }
}

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

.product .rating-star {
    --letter-spacing: .8;
    --font-size: 1.7
}

.card-wrapper .rating-star {
    --letter-spacing: .7;
    --font-size: 1.4
}

.rating-star {
    --percent: calc((var(--rating) / var(--rating-max) + var(--rating-decimal) * var(--font-size) / (var(--rating-max) * (var(--letter-spacing) + var(--font-size)))) * 100%);
    letter-spacing: calc(var(--letter-spacing) * 1rem);
    font-size: calc(var(--font-size) * 1rem);
    line-height: 1;
    display: inline-block;
    font-family: Times;
    margin: 0
}

.rating-star:before {
    content: "\2605\2605\2605\2605\2605";
    background: linear-gradient(90deg, var(--color-icon) var(--percent), rgba(var(--color-foreground), .15) var(--percent));
    --webkit-background-clip: text;
    -webkit-text-fill-color: transparent
}

.rating-text {
    display: none
}

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

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

    .rating-text {
        display: block
    }
}

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

.product .rating-star {
    --letter-spacing: .8;
    --font-size: 1.7
}

.card-wrapper .rating-star {
    --letter-spacing: .7;
    --font-size: 1.4
}

.rating-star {
    --percent: calc((var(--rating) / var(--rating-max) + var(--rating-decimal) * var(--font-size) / (var(--rating-max) * (var(--letter-spacing) + var(--font-size)))) * 100%);
    letter-spacing: calc(var(--letter-spacing) * 1rem);
    font-size: calc(var(--font-size) * 1rem);
    line-height: 1;
    display: inline-block;
    font-family: Times;
    margin: 0
}

.rating-star:before {
    content: "\2605\2605\2605\2605\2605";
    background: linear-gradient(90deg, var(--color-icon) var(--percent), rgba(var(--color-foreground), .15) var(--percent));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent
}

.rating-text {
    display: none
}

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

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

    .rating-text {
        display: block
    }
}

.banner {
    display: flex;
    position: relative;
    flex-direction: column
}

.banner__box {
    text-align: center
}

@media only screen and (max-width: 749px) {
    .banner--content-align-mobile-right .banner__box {
        text-align: right
    }

    .banner--content-align-mobile-left .banner__box {
        text-align: left
    }
}

@media only screen and (min-width: 750px) {
    .banner--content-align-right .banner__box {
        text-align: right
    }

    .banner--content-align-left .banner__box {
        text-align: left
    }

    .banner--content-align-left.banner--desktop-transparent .banner__box,
    .banner--content-align-right.banner--desktop-transparent .banner__box,
    .banner--medium.banner--desktop-transparent .banner__box {
        max-width: 68rem
    }
}

@media screen and (max-width: 749px) {

    .banner--small.banner--mobile-bottom:not(.banner--adapt) .banner__media,
    .banner--small.banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt)>.banner__media {
        height: 28rem
    }

    .banner--medium.banner--mobile-bottom:not(.banner--adapt) .banner__media,
    .banner--medium.banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt)>.banner__media {
        height: 34rem
    }

    .banner--large.banner--mobile-bottom:not(.banner--adapt) .banner__media,
    .banner--large.banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt)>.banner__media {
        height: 39rem
    }

    .banner--small:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
        min-height: 28rem
    }

    .banner--medium:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
        min-height: 34rem
    }

    .banner--large:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
        min-height: 39rem
    }
}

@media screen and (min-width: 750px) {
    .banner {
        flex-direction: row
    }

    .banner--small:not(.banner--adapt) {
        min-height: 42rem
    }

    .banner--medium:not(.banner--adapt) {
        min-height: 56rem
    }

    .banner--large:not(.banner--adapt) {
        min-height: 72rem
    }

    .banner__content.banner__content--top-left {
        align-items: flex-start;
        justify-content: flex-start
    }

    .banner__content.banner__content--top-center {
        align-items: flex-start;
        justify-content: center
    }

    .banner__content.banner__content--top-right {
        align-items: flex-start;
        justify-content: flex-end
    }

    .banner__content.banner__content--middle-left {
        align-items: center;
        justify-content: flex-start
    }

    .banner__content.banner__content--middle-center {
        align-items: center;
        justify-content: center
    }

    .banner__content.banner__content--middle-right {
        align-items: center;
        justify-content: flex-end
    }

    .banner__content.banner__content--bottom-left {
        align-items: flex-end;
        justify-content: flex-start
    }

    .banner__content.banner__content--bottom-center {
        align-items: flex-end;
        justify-content: center
    }

    .banner__content.banner__content--bottom-right {
        align-items: flex-end;
        justify-content: flex-end
    }
}

@media screen and (max-width: 749px) {
    .banner:not(.banner--stacked) {
        flex-direction: row;
        flex-wrap: wrap
    }

    .banner--stacked {
        height: auto
    }

    .banner--stacked .banner__media {
        flex-direction: column
    }
}

.banner__media {
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%
}

.banner__media-half {
    width: 50%
}

.banner__media-half+.banner__media-half {
    right: 0;
    left: auto
}

@media screen and (max-width: 749px) {
    .banner--stacked .banner__media-half {
        width: 100%
    }

    .banner--stacked .banner__media-half+.banner__media-half {
        order: 1
    }
}

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

.banner--adapt,
.banner--adapt_image.banner--mobile-bottom .banner__media:not(.placeholder) {
    height: auto
}

@media screen and (max-width: 749px) {

    .banner--mobile-bottom .banner__media,
    .banner--stacked:not(.banner--mobile-bottom) .banner__media {
        position: relative
    }

    .banner--stacked.banner--adapt .banner__content {
        height: auto
    }

    .banner:not(.banner--mobile-bottom):not(.email-signup-banner) .banner__box {
        background: transparent;
        --color-foreground: 255, 255, 255;
        --color-button: 255, 255, 255;
        --color-button-text: 0, 0, 0
    }

    .banner:not(.banner--mobile-bottom) .banner__box {
        border: none;
        border-radius: 0;
        box-shadow: none
    }

    .banner:not(.banner--mobile-bottom) .button--secondary {
        --color-button: 255, 255, 255;
        --color-button-text: 255, 255, 255;
        --alpha-button-background: 0
    }

    .banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
        position: absolute;
        height: auto
    }

    .banner--stacked.banner--adapt:not(.banner--mobile-bottom) .banner__content {
        max-height: 100%;
        overflow: hidden;
        position: absolute
    }

    .banner--stacked:not(.banner--adapt) .banner__media {
        position: relative
    }

    .banner:before {
        display: none !important
    }

    .banner--stacked .banner__media-image-half {
        width: 100%
    }
}

.banner__content {
    padding: 0;
    display: flex;
    position: relative;
    width: 100%;
    align-items: center;
    justify-content: center;
    z-index: 2
}

@media screen and (min-width: 750px) {
    .banner__content {
        padding: 5rem
    }

    .banner__content--top-left {
        align-items: flex-start;
        justify-content: flex-start
    }

    .banner__content--top-center {
        align-items: flex-start;
        justify-content: center
    }

    .banner__content--top-right {
        align-items: flex-start;
        justify-content: flex-end
    }

    .banner__content--middle-left {
        align-items: center;
        justify-content: flex-start
    }

    .banner__content--middle-center {
        align-items: center;
        justify-content: center
    }

    .banner__content--middle-right {
        align-items: center;
        justify-content: flex-end
    }

    .banner__content--bottom-left {
        align-items: flex-end;
        justify-content: flex-start
    }

    .banner__content--bottom-center {
        align-items: flex-end;
        justify-content: center
    }

    .banner__content--bottom-right {
        align-items: flex-end;
        justify-content: flex-end
    }
}

@media screen and (max-width: 749px) {
    .banner--mobile-bottom:not(.banner--stacked) .banner__content {
        order: 2
    }

    .banner:not(.banner--mobile-bottom) .field__input {
        background-color: transparent
    }
}

.banner__box {
    padding: 4rem 3.5rem;
    position: relative;
    height: fit-content;
    align-items: center;
    text-align: center;
    width: 100%;
    word-wrap: break-word;
    z-index: 1
}

@media screen and (min-width: 750px) {
    .banner--desktop-transparent .banner__box {
        background: transparent;
        --color-foreground: 255, 255, 255;
        --color-button: 255, 255, 255;
        --color-button-text: 0, 0, 0;
        max-width: 89rem;
        border: none;
        border-radius: 0;
        box-shadow: none
    }

    .banner--desktop-transparent .button--secondary {
        --color-button: 255, 255, 255;
        --color-button-text: 255, 255, 255;
        --alpha-button-background: 0
    }

    .banner--desktop-transparent .content-container:after {
        display: none
    }
}

@media screen and (max-width: 749px) {

    .banner--mobile-bottom:after,
    .banner--mobile-bottom .banner__media:after {
        display: none
    }
}

.banner:after,
.banner__media:after {
    content: "";
    position: absolute;
    top: 0;
    background: #000;
    opacity: 0;
    z-index: 1;
    width: 100%;
    height: 100%
}

.banner__box>*+.banner__text {
    margin-top: 1.5rem
}

@media screen and (min-width: 750px) {
    .banner__box>*+.banner__text {
        margin-top: 2rem
    }
}

.banner__box>*+* {
    margin-top: 1rem
}

.banner__box>*:first-child {
    margin-top: 0
}

@media screen and (max-width: 749px) {
    .banner--stacked .banner__box {
        width: 100%
    }
}

@media screen and (min-width: 750px) {
    .banner__box {
        width: auto;
        max-width: 71rem;
        min-width: 45rem
    }
}

@media screen and (min-width: 1400px) {
    .banner__box {
        max-width: 90rem
    }
}

.banner__heading {
    margin-bottom: 0
}

.banner__box .banner__heading+* {
    margin-top: 1rem
}

.banner__buttons {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 1rem;
    max-width: 45rem;
    word-break: break-word
}

@media screen and (max-width: 749px) {
    .banner--content-align-mobile-right .banner__buttons--multiple {
        justify-content: flex-end
    }

    .banner--content-align-mobile-center .banner__buttons--multiple>* {
        flex-grow: 1;
        min-width: 22rem
    }
}

@media screen and (min-width: 750px) {
    .banner--content-align-center .banner__buttons--multiple>* {
        flex-grow: 1;
        min-width: 22rem
    }

    .banner--content-align-right .banner__buttons--multiple {
        justify-content: flex-end
    }
}

.banner__box>*+.banner__buttons {
    margin-top: 2rem
}

.banner__content--cover-left {
    left: 0;
    right: auto;
    padding: 0;
    margin: 0;
    width: 50%;
    height: 100%;
    position: absolute
}

.banner__content--cover-right {
    left: auto;
    right: 0;
    padding: 0;
    margin: 0;
    width: 50%;
    height: 100%;
    position: absolute
}

.banner__content--cover-left .content-container,
.banner__content--cover-right .content-container {
    height: 100%;
    width: 100%;
    max-width: 100%;
    align-items: flex-start;
    justify-content: center;
    display: flex;
    flex-direction: column;
    box-sizing: border-box
}

.content-container a:not(.button) {
    color: inherit !important;
    font-weight: 600 !important
}

.hide-on-mobile {
    display: inherit
}

.only-on-mobile {
    display: none
}

@media screen and (max-width: 749px) {

    .banner__content--cover-left,
    .banner__content--cover-right {
        position: relative;
        width: 100%
    }

    .banner__content--cover-left .content-container,
    .banner__content--cover-right .content-container {
        align-items: center
    }

    .hide-on-mobile {
        display: none
    }

    .only-on-mobile {
        display: inherit
    }
}

#Banner-template--16304371630323__1661218161d26e0a3d::after {
    opacity: 0.0;
}

.banner {
    display: flex;
    position: relative;
    flex-direction: column
}

.banner__box {
    text-align: center
}

@media only screen and (max-width: 749px) {
    .banner--content-align-mobile-right .banner__box {
        text-align: right
    }

    .banner--content-align-mobile-left .banner__box {
        text-align: left
    }
}

@media only screen and (min-width: 750px) {
    .banner--content-align-right .banner__box {
        text-align: right
    }

    .banner--content-align-left .banner__box {
        text-align: left
    }

    .banner--content-align-left.banner--desktop-transparent .banner__box,
    .banner--content-align-right.banner--desktop-transparent .banner__box,
    .banner--medium.banner--desktop-transparent .banner__box {
        max-width: 68rem
    }
}

@media screen and (max-width: 749px) {

    .banner--small.banner--mobile-bottom:not(.banner--adapt) .banner__media,
    .banner--small.banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt)>.banner__media {
        height: 28rem
    }

    .banner--medium.banner--mobile-bottom:not(.banner--adapt) .banner__media,
    .banner--medium.banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt)>.banner__media {
        height: 34rem
    }

    .banner--large.banner--mobile-bottom:not(.banner--adapt) .banner__media,
    .banner--large.banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt)>.banner__media {
        height: 39rem
    }

    .banner--small:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
        min-height: 28rem
    }

    .banner--medium:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
        min-height: 34rem
    }

    .banner--large:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
        min-height: 39rem
    }
}

@media screen and (min-width: 750px) {
    .banner {
        flex-direction: row
    }

    .banner--small:not(.banner--adapt) {
        min-height: 42rem
    }

    .banner--medium:not(.banner--adapt) {
        min-height: 56rem
    }

    .banner--large:not(.banner--adapt) {
        min-height: 72rem
    }

    .banner__content.banner__content--top-left {
        align-items: flex-start;
        justify-content: flex-start
    }

    .banner__content.banner__content--top-center {
        align-items: flex-start;
        justify-content: center
    }

    .banner__content.banner__content--top-right {
        align-items: flex-start;
        justify-content: flex-end
    }

    .banner__content.banner__content--middle-left {
        align-items: center;
        justify-content: flex-start
    }

    .banner__content.banner__content--middle-center {
        align-items: center;
        justify-content: center
    }

    .banner__content.banner__content--middle-right {
        align-items: center;
        justify-content: flex-end
    }

    .banner__content.banner__content--bottom-left {
        align-items: flex-end;
        justify-content: flex-start
    }

    .banner__content.banner__content--bottom-center {
        align-items: flex-end;
        justify-content: center
    }

    .banner__content.banner__content--bottom-right {
        align-items: flex-end;
        justify-content: flex-end
    }
}

@media screen and (max-width: 749px) {
    .banner:not(.banner--stacked) {
        flex-direction: row;
        flex-wrap: wrap
    }

    .banner--stacked {
        height: auto
    }

    .banner--stacked .banner__media {
        flex-direction: column
    }
}

.banner__media {
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%
}

.banner__media-half {
    width: 50%
}

.banner__media-half+.banner__media-half {
    right: 0;
    left: auto
}

@media screen and (max-width: 749px) {
    .banner--stacked .banner__media-half {
        width: 100%
    }

    .banner--stacked .banner__media-half+.banner__media-half {
        order: 1
    }
}

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

.banner--adapt,
.banner--adapt_image.banner--mobile-bottom .banner__media:not(.placeholder) {
    height: auto
}

@media screen and (max-width: 749px) {

    .banner--mobile-bottom .banner__media,
    .banner--stacked:not(.banner--mobile-bottom) .banner__media {
        position: relative
    }

    .banner--stacked.banner--adapt .banner__content {
        height: auto
    }

    .banner:not(.banner--mobile-bottom):not(.email-signup-banner) .banner__box {
        background: transparent;
        --color-foreground: 255, 255, 255;
        --color-button: 255, 255, 255;
        --color-button-text: 0, 0, 0
    }

    .banner:not(.banner--mobile-bottom) .banner__box {
        border: none;
        border-radius: 0;
        box-shadow: none
    }

    .banner:not(.banner--mobile-bottom) .button--secondary {
        --color-button: 255, 255, 255;
        --color-button-text: 255, 255, 255;
        --alpha-button-background: 0
    }

    .banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
        position: absolute;
        height: auto
    }

    .banner--stacked.banner--adapt:not(.banner--mobile-bottom) .banner__content {
        max-height: 100%;
        overflow: hidden;
        position: absolute
    }

    .banner--stacked:not(.banner--adapt) .banner__media {
        position: relative
    }

    .banner:before {
        display: none !important
    }

    .banner--stacked .banner__media-image-half {
        width: 100%
    }
}

.banner__content {
    padding: 0;
    display: flex;
    position: relative;
    width: 100%;
    align-items: center;
    justify-content: center;
    z-index: 2
}

@media screen and (min-width: 750px) {
    .banner__content {
        padding: 5rem
    }

    .banner__content--top-left {
        align-items: flex-start;
        justify-content: flex-start
    }

    .banner__content--top-center {
        align-items: flex-start;
        justify-content: center
    }

    .banner__content--top-right {
        align-items: flex-start;
        justify-content: flex-end
    }

    .banner__content--middle-left {
        align-items: center;
        justify-content: flex-start
    }

    .banner__content--middle-center {
        align-items: center;
        justify-content: center
    }

    .banner__content--middle-right {
        align-items: center;
        justify-content: flex-end
    }

    .banner__content--bottom-left {
        align-items: flex-end;
        justify-content: flex-start
    }

    .banner__content--bottom-center {
        align-items: flex-end;
        justify-content: center
    }

    .banner__content--bottom-right {
        align-items: flex-end;
        justify-content: flex-end
    }
}

@media screen and (max-width: 749px) {
    .banner--mobile-bottom:not(.banner--stacked) .banner__content {
        order: 2
    }

    .banner:not(.banner--mobile-bottom) .field__input {
        background-color: transparent
    }
}

.banner__box {
    padding: 4rem 3.5rem;
    position: relative;
    height: fit-content;
    align-items: center;
    text-align: center;
    width: 100%;
    word-wrap: break-word;
    z-index: 1
}

@media screen and (min-width: 750px) {
    .banner--desktop-transparent .banner__box {
        background: transparent;
        --color-foreground: 255, 255, 255;
        --color-button: 255, 255, 255;
        --color-button-text: 0, 0, 0;
        max-width: 89rem;
        border: none;
        border-radius: 0;
        box-shadow: none
    }

    .banner--desktop-transparent .button--secondary {
        --color-button: 255, 255, 255;
        --color-button-text: 255, 255, 255;
        --alpha-button-background: 0
    }

    .banner--desktop-transparent .content-container:after {
        display: none
    }
}

@media screen and (max-width: 749px) {

    .banner--mobile-bottom:after,
    .banner--mobile-bottom .banner__media:after {
        display: none
    }
}

.banner:after,
.banner__media:after {
    content: "";
    position: absolute;
    top: 0;
    background: #000;
    opacity: 0;
    z-index: 1;
    width: 100%;
    height: 100%
}

.banner__box>*+.banner__text {
    margin-top: 1.5rem
}

@media screen and (min-width: 750px) {
    .banner__box>*+.banner__text {
        margin-top: 2rem
    }
}

.banner__box>*+* {
    margin-top: 1rem
}

.banner__box>*:first-child {
    margin-top: 0
}

@media screen and (max-width: 749px) {
    .banner--stacked .banner__box {
        width: 100%
    }
}

@media screen and (min-width: 750px) {
    .banner__box {
        width: auto;
        max-width: 71rem;
        min-width: 45rem
    }
}

@media screen and (min-width: 1400px) {
    .banner__box {
        max-width: 90rem
    }
}

.banner__heading {
    margin-bottom: 0
}

.banner__box .banner__heading+* {
    margin-top: 1rem
}

.banner__buttons {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 1rem;
    max-width: 45rem;
    word-break: break-word
}

@media screen and (max-width: 749px) {
    .banner--content-align-mobile-right .banner__buttons--multiple {
        justify-content: flex-end
    }

    .banner--content-align-mobile-center .banner__buttons--multiple>* {
        flex-grow: 1;
        min-width: 22rem
    }
}

@media screen and (min-width: 750px) {
    .banner--content-align-center .banner__buttons--multiple>* {
        flex-grow: 1;
        min-width: 22rem
    }

    .banner--content-align-right .banner__buttons--multiple {
        justify-content: flex-end
    }
}

.banner__box>*+.banner__buttons {
    margin-top: 2rem
}

.banner__content--cover-left {
    left: 0;
    right: auto;
    padding: 0;
    margin: 0;
    width: 50%;
    height: 100%;
    position: absolute
}

.banner__content--cover-right {
    left: auto;
    right: 0;
    padding: 0;
    margin: 0;
    width: 50%;
    height: 100%;
    position: absolute
}

.banner__content--cover-left .content-container,
.banner__content--cover-right .content-container {
    height: 100%;
    width: 100%;
    max-width: 100%;
    align-items: flex-start;
    justify-content: center;
    display: flex;
    flex-direction: column;
    box-sizing: border-box
}

.content-container a:not(.button) {
    color: inherit !important;
    font-weight: 600 !important
}

.hide-on-mobile {
    display: inherit
}

.only-on-mobile {
    display: none
}

@media screen and (max-width: 749px) {

    .banner__content--cover-left,
    .banner__content--cover-right {
        position: relative;
        width: 100%
    }

    .banner__content--cover-left .content-container,
    .banner__content--cover-right .content-container {
        align-items: center
    }

    .hide-on-mobile {
        display: none
    }

    .only-on-mobile {
        display: inherit
    }
}

#Banner-template--16304371630323__16612185918ed024af::after {
    opacity: 0.0;
}

.section-template--16304371630323__d2c713b2-bdf1-44da-b2eb-0df9afe2bcf3-padding {
    padding-top: calc(40px * 0.75);
    padding-bottom: calc(52px * 0.75);
}

@media screen and (min-width: 750px) {
    .section-template--16304371630323__d2c713b2-bdf1-44da-b2eb-0df9afe2bcf3-padding {
        padding-top: 40px;
        padding-bottom: 52px;
    }
}

#shopify-section-template--16304371630323__d2c713b2-bdf1-44da-b2eb-0df9afe2bcf3 p {
    text-align: center;
    margin: 0;
}

#shopify-section-template--16304371630323__d2c713b2-bdf1-44da-b2eb-0df9afe2bcf3 img {
    width: 33%;
    max-width: 150px;
    margin: 1rem;
}

.section-template--16304371630323__1661557419ddd10a48-padding {
    padding-top: calc(36px * 0.75);
    padding-bottom: calc(36px * 0.75);
}

@media screen and (min-width: 750px) {
    .section-template--16304371630323__1661557419ddd10a48-padding {
        padding-top: 36px;
        padding-bottom: 36px;
    }
}

slider-component {
    --desktop-margin-left-first-item: max(5rem, calc((100vw - var(--page-width) + 10rem - var(--grid-desktop-horizontal-spacing)) / 2));
    position: relative;
    display: block
}

slider-component.slider-component-full-width {
    --desktop-margin-left-first-item: 1.5rem
}

@media screen and (max-width: 749px) {
    slider-component.page-width {
        padding: 0 1.5rem
    }
}

@media screen and (min-width: 749px) and (max-width: 990px) {
    slider-component.page-width {
        padding: 0 5rem
    }
}

@media screen and (max-width: 989px) {
    .no-js slider-component .slider {
        padding-bottom: 3rem
    }
}

.slider__slide {
    --focus-outline-padding: .5rem;
    --shadow-padding-top: calc((var(--shadow-vertical-offset) * -1 + var(--shadow-blur-radius)) * var(--shadow-visible));
    --shadow-padding-bottom: calc((var(--shadow-vertical-offset) + var(--shadow-blur-radius)) * var(--shadow-visible));
    scroll-snap-align: start;
    flex-shrink: 0;
    padding-bottom: 0
}

@media screen and (max-width: 749px) {
    .slider.slider--mobile {
        position: relative;
        flex-wrap: inherit;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        scroll-padding-left: 1.5rem;
        -webkit-overflow-scrolling: touch;
        margin-bottom: 1rem
    }

    .slider.slider--mobile .slider__slide {
        margin-bottom: 0;
        padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
        padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom))
    }

    .slider.slider--mobile.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
        padding-bottom: var(--focus-outline-padding)
    }

    .slider.slider--mobile.contains-content-container .slider__slide {
        --focus-outline-padding: 0rem
    }
}

@media screen and (min-width: 750px) {
    .slider.slider--tablet-up {
        position: relative;
        flex-wrap: inherit;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        scroll-padding-left: 1rem;
        -webkit-overflow-scrolling: touch
    }

    .slider.slider--tablet-up .slider__slide {
        margin-bottom: 0
    }
}

@media screen and (max-width: 989px) {
    .slider.slider--tablet {
        position: relative;
        flex-wrap: inherit;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        scroll-padding-left: 1.5rem;
        -webkit-overflow-scrolling: touch;
        margin-bottom: 1rem
    }

    .slider.slider--tablet .slider__slide {
        margin-bottom: 0;
        padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
        padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom))
    }

    .slider.slider--tablet.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
        padding-bottom: var(--focus-outline-padding)
    }

    .slider.slider--tablet.contains-content-container .slider__slide {
        --focus-outline-padding: 0rem
    }
}

.slider--everywhere {
    position: relative;
    flex-wrap: inherit;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 1rem
}

.slider.slider--everywhere .slider__slide {
    margin-bottom: 0;
    scroll-snap-align: center
}

@media screen and (min-width: 990px) {
    .slider-component-desktop.page-width {
        max-width: none
    }

    .slider--desktop {
        position: relative;
        flex-wrap: inherit;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        margin-bottom: 1rem;
        scroll-padding-left: var(--desktop-margin-left-first-item)
    }

    .slider.slider--desktop .slider__slide {
        margin-bottom: 0;
        padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
        padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom))
    }

    .slider--desktop .slider__slide:first-child {
        margin-left: var(--desktop-margin-left-first-item);
        scroll-margin-left: var(--desktop-margin-left-first-item)
    }

    .slider.slider--desktop .slider__slide:last-child {
        margin-right: 5rem
    }

    .slider-component-full-width .slider--desktop {
        scroll-padding-left: 1.5rem
    }

    .slider-component-full-width .slider--desktop .slider__slide:first-child {
        margin-left: 1.5rem;
        scroll-margin-left: 1.5rem
    }

    .slider-component-full-width .slider--desktop .slider__slide:last-child {
        margin-right: 1.5rem
    }

    .slider--desktop.grid--5-col-desktop .grid__item {
        width: calc((100% - var(--desktop-margin-left-first-item)) / 5 - var(--grid-desktop-horizontal-spacing) * 2)
    }

    .slider--desktop.grid--4-col-desktop .grid__item {
        width: calc((100% - var(--desktop-margin-left-first-item)) / 4 - var(--grid-desktop-horizontal-spacing) * 3)
    }

    .slider--desktop.grid--3-col-desktop .grid__item {
        width: calc((100% - var(--desktop-margin-left-first-item)) / 3 - var(--grid-desktop-horizontal-spacing) * 4)
    }

    .slider--desktop.grid--2-col-desktop .grid__item {
        width: calc((100% - var(--desktop-margin-left-first-item)) / 2 - var(--grid-desktop-horizontal-spacing) * 5)
    }

    .slider--desktop.grid--1-col-desktop .grid__item {
        width: calc((100% - var(--desktop-margin-left-first-item)) - var(--grid-desktop-horizontal-spacing) * 9)
    }

    .slider.slider--desktop.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
        padding-bottom: var(--focus-outline-padding)
    }

    .slider.slider--desktop.contains-content-container .slider__slide {
        --focus-outline-padding: 0rem
    }
}

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

.slider {
    scrollbar-color: rgb(var(--color-foreground)) rgba(var(--color-foreground), .04);
    -ms-overflow-style: none;
    scrollbar-width: none
}

.slider::-webkit-scrollbar {
    height: .4rem;
    width: .4rem;
    display: none
}

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

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

.slider::-webkit-scrollbar-thumb {
    background-color: rgb(var(--color-foreground));
    border-radius: .4rem;
    border: 0
}

.slider::-webkit-scrollbar-track {
    background: rgba(var(--color-foreground), .04);
    border-radius: .4rem
}

.slider-counter {
    display: flex;
    justify-content: center;
    min-width: 4.4rem
}

@media screen and (min-width: 750px) {
    .slider-counter--dots {
        margin: 0 1.2rem
    }
}

.slider-counter__link {
    padding: 1rem
}

@media screen and (max-width: 749px) {
    .slider-counter__link {
        padding: .7rem
    }
}

.slider-counter__link--dots .dot {
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    border: .1rem solid rgba(var(--color-foreground), .5);
    padding: 0;
    display: block
}

.slider-counter__link--active.slider-counter__link--dots .dot {
    background-color: rgb(var(--color-foreground))
}

@media screen and (forced-colors: active) {
    .slider-counter__link--active.slider-counter__link--dots .dot {
        background-color: CanvasText
    }
}

.slider-counter__link--dots:not(.slider-counter__link--active):hover .dot {
    border-color: rgb(var(--color-foreground))
}

.slider-counter__link--dots .dot,
.slider-counter__link--numbers {
    transition: transform .2s ease-in-out
}

.slider-counter__link--active.slider-counter__link--numbers,
.slider-counter__link--dots:not(.slider-counter__link--active):hover .dot,
.slider-counter__link--numbers:hover {
    transform: scale(1.1)
}

.slider-counter__link--numbers {
    color: rgba(var(--color-foreground), .5);
    text-decoration: none
}

.slider-counter__link--numbers:hover {
    color: rgb(var(--color-foreground))
}

.slider-counter__link--active.slider-counter__link--numbers {
    text-decoration: underline;
    color: rgb(var(--color-foreground))
}

.slider-buttons {
    display: flex;
    align-items: center;
    justify-content: center
}

@media screen and (min-width: 990px) {
    .slider:not(.slider--everywhere):not(.slider--desktop)+.slider-buttons {
        display: none
    }
}

@media screen and (max-width: 989px) {
    .slider--desktop:not(.slider--tablet)+.slider-buttons {
        display: none
    }
}

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

.slider-button {
    color: rgba(var(--color-foreground), .75);
    background: transparent;
    border: none;
    cursor: pointer;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center
}

.slider-button:not([disabled]):hover {
    color: rgb(var(--color-foreground))
}

.slider-button .icon {
    height: .6rem
}

.slider-button[disabled] .icon {
    color: rgba(var(--color-foreground), .3);
    cursor: not-allowed
}

.slider-button--next .icon {
    transform: rotate(-90deg)
}

.slider-button--prev .icon {
    transform: rotate(90deg)
}

.slider-button--next:not([disabled]):hover .icon {
    transform: rotate(-90deg) scale(1.1)
}

.slider-button--prev:not([disabled]):hover .icon {
    transform: rotate(90deg) scale(1.1)
}

.card-wrapper {
    color: inherit;
    height: 100%;
    position: relative;
    text-decoration: none
}

.card {
    text-align: var(--card-text-alignment);
    text-decoration: none
}

.card:not(.ratio) {
    display: flex;
    flex-direction: column;
    height: 100%
}

.card--card {
    height: 100%
}

.card--card,
.card--standard .card__inner {
    border-radius: var(--card-corner-radius);
    border: var(--card-border-width) solid rgba(var(--color-foreground), var(--card-border-opacity));
    position: relative;
    box-sizing: border-box
}

.card--card:after,
.card--standard .card__inner:after {
    content: "";
    position: absolute;
    width: calc(var(--card-border-width) * 2 + 100%);
    height: calc(var(--card-border-width) * 2 + 100%);
    top: calc(var(--card-border-width) * -1);
    left: calc(var(--card-border-width) * -1);
    z-index: -1;
    border-radius: var(--card-corner-radius);
    box-shadow: var(--card-shadow-horizontal-offset) var(--card-shadow-vertical-offset) var(--card-shadow-blur-radius) rgba(var(--color-shadow), var(--card-shadow-opacity))
}

.card .card__inner .card__media {
    overflow: hidden;
    z-index: 0;
    border-radius: calc(var(--card-corner-radius) - var(--card-border-width) - var(--card-image-padding))
}

.card--card .card__inner .card__media {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0
}

.card--standard.card--text {
    background-color: transparent
}

.card-information {
    text-align: var(--card-text-alignment)
}

.card__media,
.card .media {
    bottom: 0;
    position: absolute;
    top: 0
}

.card .media {
    width: 100%
}

.card__media {
    margin: var(--card-image-padding);
    width: calc(100% - 2 * var(--card-image-padding))
}

.card--standard .card__media {
    margin: var(--card-image-padding)
}

.card__inner {
    width: 100%
}

.card--media .card__inner .card__content {
    padding: calc(var(--card-image-padding) + 1rem);
    position: relative
}

.card__content {
    display: grid;
    grid-template-rows: minmax(0, 1fr) max-content minmax(0, 1fr);
    padding: 1rem;
    width: 100%;
    flex-grow: 1
}

.card__content--auto-margins {
    grid-template-rows: minmax(0, auto) max-content minmax(0, auto)
}

.card__information {
    grid-row-start: 2;
    padding: 1.3rem 1rem
}

.card:not(.ratio)>.card__content {
    grid-template-rows: max-content minmax(0, 1fr) max-content auto
}

@media screen and (min-width: 750px) {
    .card__information {
        padding-bottom: 1.7rem;
        padding-top: 1.7rem
    }
}

.card__badge {
    align-self: flex-end;
    grid-row-start: 3;
    justify-self: flex-start
}

.card__badge.top {
    align-self: flex-start;
    grid-row-start: 1
}

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

.card>.card__content>.card__badge {
    margin: 1.3rem
}

.card__media .media img {
    height: 100%;
    object-fit: cover;
    object-position: center center;
    width: 100%
}

.card__inner:not(.ratio)>.card__content {
    height: 100%
}

.card__heading {
    margin-top: 0;
    margin-bottom: 0
}

.card__heading:last-child {
    margin-bottom: 0
}

.card--card.card--media>.card__content {
    margin-top: calc(0rem - var(--card-image-padding))
}

.card--standard.card--text a:after,
.card--card .card__heading a:after {
    bottom: calc(var(--card-border-width) * -1);
    left: calc(var(--card-border-width) * -1);
    right: calc(var(--card-border-width) * -1);
    top: calc(var(--card-border-width) * -1)
}

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

.card__heading a:after {
    outline-offset: .3rem
}

.card__heading a:focus:after {
    box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3);
    outline: .2rem solid rgba(var(--color-foreground), .5)
}

.card__heading a:focus-visible:after {
    box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3);
    outline: .2rem solid rgba(var(--color-foreground), .5)
}

.card__heading a:focus:not(:focus-visible):after {
    box-shadow: none;
    outline: 0
}

.card__heading a:focus {
    box-shadow: none;
    outline: 0
}

@media screen and (min-width: 990px) {

    .card .media.media--hover-effect>img:only-child,
    .card-wrapper .media.media--hover-effect>img:only-child {
        transition: transform var(--duration-long) ease
    }

    .card:hover .media.media--hover-effect>img:first-child:only-child,
    .card-wrapper:hover .media.media--hover-effect>img:first-child:only-child {
        transform: scale(1.03)
    }

    .card-wrapper:hover .media.media--hover-effect>img:first-child:not(:only-child) {
        opacity: 0
    }

    .card-wrapper:hover .media.media--hover-effect>img+img {
        opacity: 1;
        transition: transform var(--duration-long) ease;
        transform: scale(1.03)
    }

    .underline-links-hover:hover a {
        text-decoration: underline;
        text-underline-offset: .3rem
    }
}

.card--standard.card--media .card__inner .card__information,
.card--standard.card--text>.card__content .card__heading,
.card--standard>.card__content .card__badge,
.card--standard.card--text.article-card>.card__content .card__information,
.card--standard>.card__content .card__caption {
    display: none
}

.card--standard>.card__content {
    padding: 0
}

.card--standard>.card__content .card__information {
    padding-left: 0;
    padding-right: 0
}

.card--card.card--media .card__inner .card__information,
.card--card.card--text .card__inner,
.card--card.card--media>.card__content .card__badge {
    display: none
}

.card--extend-height {
    height: 100%
}

.card--extend-height.card--standard.card--text,
.card--extend-height.card--media {
    display: flex;
    flex-direction: column
}

.card--extend-height.card--standard.card--text .card__inner,
.card--extend-height.card--media .card__inner {
    flex-grow: 1
}

.card .icon-wrap {
    margin-left: .8rem;
    white-space: nowrap;
    transition: transform var(--duration-short) ease;
    overflow: hidden
}

.card-information>*+* {
    margin-top: .5rem
}

.card-information {
    width: 100%
}

.card-information>* {
    line-height: calc(1 + .4 / var(--font-body-scale));
    color: rgb(var(--color-foreground))
}

.card-information>.price {
    color: rgb(var(--color-foreground))
}

.card-information>.rating {
    margin-top: .4rem
}

.card-information>*:not(.visually-hidden:first-child)+*:not(.rating) {
    margin-top: .7rem
}

.card-information .caption {
    letter-spacing: .07rem
}

.card-article-info {
    margin-top: 1rem
}

@media screen and (max-width: 749px) {
    .articles-wrapper .article {
        width: 100%
    }
}

.article {
    display: flex;
    align-items: center
}

.article.grid__item {
    padding: 0
}

.grid--peek .article-card {
    box-sizing: border-box
}

.article-card__image-wrapper>a {
    display: block
}

.article-card__title {
    text-decoration: none;
    word-break: break-word
}

.article-card__title a:after {
    bottom: 0;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 1
}

.article-card__link.link {
    padding: 0
}

.article-card__link {
    text-underline-offset: .3rem
}

.article-card .card__heading {
    margin-bottom: .6rem
}

.blog-articles .article-card .card__information,
.blog__posts .article-card .card__information {
    padding-left: 2rem;
    padding-right: 2rem
}

.article-card__info {
    padding-top: .4rem
}

.article-card__footer {
    letter-spacing: .1rem;
    font-size: 1.4rem
}

.article-card__footer:not(:last-child) {
    margin-bottom: 1rem
}

.article-card__footer:last-child {
    margin-top: auto
}

.article-card__excerpt {
    width: 100%;
    margin-top: 1.2rem
}

.article-card__link:not(:only-child) {
    margin-right: 3rem
}

@media screen and (min-width: 990px) {
    .article-card__link:not(:only-child) {
        margin-right: 4rem
    }
}

.article-card__image--small .ratio:before {
    padding-bottom: 11rem
}

.article-card__image--medium .ratio:before {
    padding-bottom: 22rem
}

.article-card__image--large .ratio:before {
    padding-bottom: 33rem
}

@media screen and (min-width: 750px) {
    .article-card__image--small .ratio:before {
        padding-bottom: 14.3rem
    }

    .article-card__image--medium .ratio:before {
        padding-bottom: 21.9rem
    }

    .article-card__image--large .ratio:before {
        padding-bottom: 27.5rem
    }
}

@media screen and (min-width: 990px) {
    .article-card__image--small .ratio:before {
        padding-bottom: 17.7rem
    }

    .article-card__image--medium .ratio:before {
        padding-bottom: 30.7rem
    }

    .article-card__image--large .ratio:before {
        padding-bottom: 40.7rem
    }
}

@supports not (inset: 10px) {
    .articles-wrapper.grid {
        margin: 0 0 5rem
    }

    @media screen and (min-width: 750px) {
        .articles-wrapper.grid {
            margin-bottom: 7rem
        }
    }
}

.blog-placeholder {
    margin: 0 1.5rem;
    background: rgb(var(--color-background))
}

@media screen and (min-width: 750px) {
    .blog-placeholder {
        text-align: center;
        width: 50%;
        margin: 0
    }
}

.blog-placeholder__content {
    padding: 3rem;
    background: rgba(var(--color-foreground), .04)
}

.blog-placeholder .placeholder {
    position: relative
}

.blog-placeholder h2 {
    margin: 0
}

.blog-placeholder .rte-width {
    margin-top: 1.2rem;
    color: rgba(var(--color-foreground), .75)
}

@media screen and (min-width: 990px) {
    .grid--1-col-desktop .article-card .card__content {
        text-align: center
    }
}

.blog__title {
    margin: 0
}

.blog__posts.articles-wrapper {
    margin-bottom: 1rem
}

@media screen and (min-width: 990px) {
    .blog__posts.articles-wrapper {
        margin-bottom: 0
    }
}

.blog__posts.articles-wrapper .article {
    scroll-snap-align: start
}

@media screen and (max-width: 749px) {
    .blog__post.article {
        width: calc(100% - 3rem)
    }
}

.background-secondary .blog-placeholder__content {
    background-color: rgb(var(--color-background))
}

.blog__posts .card-wrapper {
    width: 100%
}

.blog__button {
    margin-top: 3rem
}

@media screen and (min-width: 750px) {
    .blog__button {
        margin-top: 5rem
    }
}

@supports not (inset: 10px) {
    @media screen and (min-width: 750px) {
        .blog__posts .article+.article {
            margin-left: var(--grid-desktop-horizontal-spacing)
        }
    }
}

.blog-placeholder {
    margin: 0 1.5rem;
    background: rgb(var(--color-background))
}

@media screen and (min-width: 750px) {
    .blog-placeholder {
        text-align: center;
        width: 50%;
        margin: 0
    }
}

.blog-placeholder__content {
    padding: 3rem;
    background: rgba(var(--color-foreground), .04)
}

.blog-placeholder .placeholder {
    position: relative
}

.blog-placeholder h2 {
    margin: 0
}

.blog-placeholder .rte-width {
    margin-top: 1.2rem;
    color: rgba(var(--color-foreground), .75)
}

@media screen and (min-width: 990px) {
    .grid--1-col-desktop .article-card .card__content {
        text-align: center
    }
}

.blog__title {
    margin: 0
}

.blog__posts.articles-wrapper {
    margin-bottom: 1rem
}

@media screen and (min-width: 990px) {
    .blog__posts.articles-wrapper {
        margin-bottom: 0
    }
}

.blog__posts.articles-wrapper .article {
    scroll-snap-align: start
}

@media screen and (max-width: 749px) {
    .blog__post.article {
        width: calc(100% - 3rem)
    }
}

.background-secondary .blog-placeholder__content {
    background-color: rgb(var(--color-background))
}

.blog__posts .card-wrapper {
    width: 100%
}

.blog__button {
    margin-top: 3rem
}

@media screen and (min-width: 750px) {
    .blog__button {
        margin-top: 5rem
    }
}

@supports not (inset: 10px) {
    @media screen and (min-width: 750px) {
        .blog__posts .article+.article {
            margin-left: var(--grid-desktop-horizontal-spacing)
        }
    }
}

ul.features {
    list-style: none;
    margin: 2rem 0 0;
    padding: 0;
    display: flex;
    justify-content: flex-start;
    white-space: normal !important
}

ul.features li a {
    text-decoration: none
}

ul.features li {
    white-space: normal !important;
    padding: 0;
    margin: 1rem;
    display: flex;
    box-sizing: border-box;
    align-items: center;
    flex-direction: column;
    width: 300px;
    justify-content: flex-start
}

ul.features li .date {
    font-size: .8rem;
    font-weight: 400
}

ul.features li h3 {
    padding: 0;
    width: 100%;
    box-sizing: border-box;
    margin: .8rem 0 0
}

ul.features li img {
    width: 100%;
    height: auto;
    margin-bottom: .5rem;
    border-radius: .3rem
}

.marquee-wrapper {
    overflow: hidden;
    width: 100%;
    white-space: nowrap
}

.marquee-wrapper .marquee-2,
.marquee-wrapper .marquee-1 {
    overflow: hidden;
    display: inline-block;
    animation: marquee 60s linear infinite
}

@keyframes marquee {
    0% {
        transform: translate(0)
    }

    to {
        transform: translate(-100%)
    }
}

.section-template--16304371630323__1661228063865ed12c-padding {
    padding-top: 27px;
    padding-bottom: 27px;
}

@media screen and (min-width: 750px) {
    .section-template--16304371630323__1661228063865ed12c-padding {
        padding-top: 36px;
        padding-bottom: 36px;
    }
}