@charset "UTF-8";
/*!
  Impulse, by Archetype Themes
  http://archetypethemes.co
*/
:root {
    --colorBtnPrimary: #d291b5;
    --colorBtnPrimaryLight: #d291b5;
    --colorBtnPrimaryDim: #cb186d;
    --colorBtnPrimaryText: #fbf5e7;
    --colorCartDot: #ffffff;
    --colorLink: #2a317d;
    --colorTextBody: #2a317d;
    --colorPrice: #1c1d1d;
    --colorTextSavings: #C20000;
    --colorSaleTag: #1c1d1d;
    --colorSaleTagText: #ffffff;
    --colorBody: #fbf5e7;
    --colorBodyDim: #f7ecd1;
    --colorFooter: #2a317d;
    --colorFooterText: #ffffff;
    --colorBorder: #e8e8e1;
    --colorNav: #fbf5e7;
    --colorNavText: #000000;
    --colorAnnouncement: #2a317d;
    --colorAnnouncementText: #fbf5e7;
    --colorHeroText: #ffffff;
    --colorModalBg: #353b76;
    --colorImageOverlay: rgba(0, 0, 0, 0);
    --colorImageOverlayOpacity: .1;
    --colorImageOverlayTextShadow: 0;
    --colorSmallImageBg: #ffffff;
    --colorLargeImageBg: #fbf5e7;
    --colorGridOverlay: #000000;
    --colorGridOverlayOpacity: .1;
    --colorDrawers: #fbf5e7;
    --colorDrawersDim: #f7ecd1;
    --colorDrawerBorder: rgba(0, 0, 0, 0);
    --colorDrawerText: #2a317d;
    --colorDrawerTextDark: #171b44;
    --colorDrawerButton: #e21b79;
    --colorDrawerButtonText: #ffffff;
    --grid-gutter: 17px;
    --drawer-gutter: 20px;
    --sizeChartMargin: 25px 0;
    --sizeChartIconMargin: 5px;
    --newsletterReminderPadding: 40px;
    --color-body-text: #2a317d;
    --color-body: #fbf5e7;
    --color-bg: #fbf5e7
}

@media only screen and (min-width: 769px) {
    :root {
        --grid-gutter: 22px;
        --drawer-gutter: 30px
    }
}

@keyframes spin {
    0% {
        transform: rotate(0)
    }
    to {
        transform: rotate(360deg)
    }
}

@keyframes preloading {
    0% {
        transform-origin: 0 50%;
        transform: scaleX(0);
        opacity: 0
    }
    40% {
        transform-origin: 0 50%;
        transform: scaleX(1);
        opacity: 1
    }
    41% {
        transform-origin: 100% 50%;
        transform: scaleX(1);
        opacity: 1
    }
    to {
        transform-origin: 100% 50%;
        transform: scaleX(0);
        opacity: 1
    }
}

@keyframes slideshowBars {
    0% {
        transform: translate(-100%)
    }
    to {
        transform: translate(0)
    }
}

@keyframes grid-product__loading {
    0% {
        opacity: 1
    }
    60% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@keyframes shine {
    to {
        left: -200%
    }
}

@keyframes overlay-on {
    0% {
        opacity: 0
    }
    to {
        opacity: .6
    }
}

@keyframes overlay-off {
    0% {
        opacity: .6
    }
    to {
        opacity: 0
    }
}

@keyframes full-overlay-on {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@keyframes full-overlay-off {
    0% {
        opacity: 1
    }
    to {
        opacity: 0
    }
}

@keyframes modal-open {
    0% {
        opacity: 0;
        transform: translateY(30px)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes modal-closing {
    0% {
        opacity: 1;
        transform: scale(1)
    }
    to {
        opacity: 0;
        transform: scale(.9)
    }
}

@keyframes rise-up {
    0% {
        opacity: 1;
        transform: translateY(120%)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes rise-up-out {
    0% {
        opacity: 1;
        transform: translateY(0)
    }
    to {
        opacity: 1;
        transform: translateY(-120%)
    }
}

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

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

@keyframes zoom-fade {
    0% {
        opacity: 0;
        transform: scale(1.3)
    }
    to {
        opacity: 1;
        transform: scale(1)
    }
}

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

.hero[data-arrows=true] {
    overflow: visible;
    z-index: 5
}

*, :after, :before {
    box-sizing: border-box
}

body, html {
    padding: 0;
    margin: 0
}

footer, header, main, section {
    display: block
}

video {
    display: inline-block;
    vertical-align: baseline
}

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

@media only screen and (max-width: 768px) {
    .grid {
        margin-left: -17px
    }

    html[dir=rtl] .grid {
        margin-left: 0;
        margin-right: -17px
    }
}

html[dir=rtl] .grid {
    margin-left: 0;
    margin-right: -22px
}

.grid--small {
    margin-left: -10px
}

.grid--small .grid__item {
    padding-left: 10px
}

.grid__item {
    float: left;
    padding-left: 22px;
    width: 100%;
    min-height: 1px
}

@media only screen and (max-width: 768px) {
    .grid__item {
        padding-left: 17px
    }

    html[dir=rtl] .grid__item {
        padding-left: 0;
        padding-right: 17px
    }
}

html[dir=rtl] .grid__item {
    float: right;
    padding-left: 0;
    padding-right: 22px
}

.grid--flush-bottom {
    margin-bottom: -22px;
    overflow: auto
}

.grid--flush-bottom > .grid__item {
    margin-bottom: 45px
}

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

.grid--center .grid__item {
    float: none;
    display: inline-block;
    vertical-align: top;
    text-align: left
}

html[dir=rtl] .grid--center .grid__item {
    text-align: right
}

.grid--full {
    margin-left: 0
}

.grid--full > .grid__item {
    padding-left: 0
}

@media only screen and (max-width: 768px) {
    .small--grid--flush {
        margin-left: -2px
    }

    .page-width .small--grid--flush {
        margin-left: -17px;
        margin-right: -15px
    }

    .small--grid--flush > .grid__item {
        padding-left: 2px
    }
}

.one-whole {
    width: 100%
}

.one-half {
    width: 50%
}

.one-third {
    width: 33.33333%
}

@media only screen and (max-width: 768px) {
    .small--one-whole {
        width: 100%
    }

    .small--one-half {
        width: 50%
    }

    .small--one-third {
        width: 33.33333%
    }

    .grid--uniform .small--one-half:nth-of-type(odd), .grid--uniform .small--one-third:nth-of-type(3n+1) {
        clear: both
    }
}

@media only screen and (min-width: 769px) {
    .medium-up--one-whole {
        width: 100%
    }

    .medium-up--one-half {
        width: 50%
    }

    .medium-up--one-third {
        width: 33.33333%
    }

    .grid--uniform .medium-up--one-half:nth-of-type(odd), .grid--uniform .medium-up--one-third:nth-of-type(3n+1) {
        clear: both
    }
}

.hide {
    display: none !important
}

.text-left {
    text-align: left !important
}

.text-right {
    text-align: right !important
}

.text-center {
    text-align: center !important
}

@media only screen and (max-width: 768px) {
    .small--flex {
        display: flex !important
    }

    .small--hide {
        display: none !important
    }

    .small--text-left {
        text-align: left !important
    }

    .small--text-right {
        text-align: right !important
    }

    .small--text-center {
        text-align: center !important
    }
}

@media only screen and (min-width: 769px) {
    .medium-up--hide {
        display: none !important
    }

    .medium-up--text-left {
        text-align: left !important
    }

    .medium-up--text-right {
        text-align: right !important
    }

    .medium-up--text-center {
        text-align: center !important
    }
}

.flex-grid {
    display: flex;
    flex-wrap: wrap;
    flex: 1 1 100%
}

[data-center-text=true] .flex-grid {
    justify-content: center
}

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

.flex-grid__item {
    flex: 0 1 100%;
    display: flex;
    align-items: stretch
}

.flex-grid__item > * {
    flex: 1 1 100%
}

@media only screen and (min-width: 769px) {
    .flex-grid__item--33 {
        flex-basis: 33.33%
    }

    .flex-grid__item--50 {
        flex-basis: 50%
    }
}

html:not(.no-js):not(.tab-outline) :focus {
    outline: 0
}

html {
    touch-action: manipulation
}

html[dir=rtl] {
    direction: rtl
}



.page-width {
    max-width: 1620px;
    margin: 0 auto
}

.page-width--narrow {
    max-width: 1000px
}

@media only screen and (max-width: 768px) {
    .page-width--flush-small {
        padding: 0
    }
}

.page-content {
    padding-top: 40px;
    padding-bottom: 40px
}

@media only screen and (min-width: 769px) {
    .page-content {
        padding-top: 75px;
        padding-bottom: 75px
    }
}

.page-content--top {
    padding-bottom: 0
}

.page-content--bottom {
    padding-top: 0
}

.main-content {
    display: block;
    min-height: 300px
}

@media only screen and (min-width: 769px) {
    .main-content {
        min-height: 700px
    }
}



p {
    margin: 0 0 15px
}

p img {
    margin: 0
}

b {
    font-weight: 700
}

p[data-spam-detection-disclaimer], small {
    font-size: .85em
}

.label, label:not(.variant__button-label):not(.text-label) {
    text-transform: uppercase;
    font-weight: 500
}

label {
    display: block;
    margin-bottom: 10px
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    display: block;
    margin: 0 0 10px
}

@media only screen and (min-width: 769px) {
    .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
        margin: 0 0 15px
    }
}

@media (min-width: 769px) and (max-width: 1100px) {
    .h1, h1 {
        font-size: 58px
    }

    .h3, h3 {
        font-size: 38px
    }

    .h4, h4 {
        font-size: 28px
    }

    .h5, h5 {
        font-size: 26px
    }

    .h6, h6 {
        font-size: 24px
    }
}

.h5, .h6, h5, h6 {
    margin-bottom: 10px
}

@media only screen and (max-width: 768px) {
    .h5, .h6, h5, h6 {
        margin-bottom: 5px
    }
}

.text-spacing, .text-spacing.rte:last-child {
    margin-bottom: 15px
}

.index-section--footer h3 {
    font-size: 1.5em
}

html[dir=rtl] .text-left {
    text-align: right !important
}

html[dir=rtl] .text-right {
    text-align: left !important
}

.icon-and-text {
    display: flex;
    flex-wrap: nowrap;
    align-items: center
}

.icon-and-text .icon {
    flex: 0 0 auto
}

ul {
    margin: 0 0 15px 30px;
    padding: 0;
    text-rendering: optimizeLegibility
}

ul ul {
    margin: 4px 0 5px 20px
}

li {
    margin-bottom: .25em
}

.no-bullets {
    list-style: none outside;
    margin-left: 0
}

.inline-list {
    padding: 0;
    margin: 0
}

.inline-list li {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle
}

th {
    border: 0 none;
    text-align: left;
    padding: 10px 15px;
    background: #fbf5e7;
    background: var(--colorBody)
}

html[dir=rtl] th {
    text-align: right
}

th {
    font-weight: 700
}

.text-link:hover, a:hover {
    color: #2a317d;
    color: var(--colorTextBody)
}

.text-link {
    display: inline;
    border: 0 none;
    background: 0 0;
    padding: 0;
    margin: 0
}

.rte a {
    color: #2a317d;
    color: var(--colorLink)
}

@media (min-width: 769px) and (max-width: 1100px) {
    .btn {
        font-size: 18px
    }
}

@media only screen and (max-width: 768px) {
    .btn, .rte .btn {
        padding: 10px 28px;
        font-size: 16px
    }
}

.btn:hover, .rte .btn:hover {
    color: #fbf5e7;
    color: var(--colorBtnPrimaryText);
    background-color: #e21b79;
    background-color: var(--colorBtnPrimary)
}

.btn[disabled], .rte .btn[disabled] {
    cursor: default;
    color: #b6b6b6;
    background-color: #726c6f
}

.btn[disabled]:hover, .rte .btn[disabled]:hover {
    color: #b6b6b6;
    background-color: #f6f6f6
}

[data-button_style=angled] .btn[disabled]:after, [data-button_style=angled] .btn[disabled]:before, [data-button_style=angled] .rte .btn[disabled]:after, [data-button_style=angled] .rte .btn[disabled]:before {
    background-color: #f6f6f6;
    border-top: 1px solid;
    border-top-color: #b6b6b6;
    border-bottom: 1px solid;
    border-bottom-color: #b6b6b6
}

[data-button_style=angled] .btn, [data-button_style=angled] .rte .btn {
    position: relative;
    border: 0;
    margin-left: 10px;
    margin-right: 10px
}

[data-button_style=angled] .btn:after, [data-button_style=angled] .btn:before, [data-button_style=angled] .rte .btn:after, [data-button_style=angled] .rte .btn:before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    bottom: 0;
    width: 20px;
    transform: skew(-12deg);
    background-color: inherit
}

[data-button_style=angled] .btn:before, [data-button_style=angled] .rte .btn:before {
    left: -6px
}

[data-button_style=angled] .btn:after, [data-button_style=angled] .rte .btn:after {
    right: -6px
}

[data-button_style=angled] .btn.btn--small:before, [data-button_style=angled] .rte .btn.btn--small:before {
    left: -5px
}

[data-button_style=angled] .btn.btn--small:after, [data-button_style=angled] .rte .btn.btn--small:after {
    right: -5px
}

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static), [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static), [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static), [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static) {
    position: relative;
    overflow: hidden;
    transition: background .2s ease 0s
}

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after, [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after, [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after, [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after {
    content: "";
    position: absolute;
    top: 0;
    left: 150%;
    width: 200%;
    height: 100%;
    transform: skew(-20deg);
    background-image: linear-gradient(90deg, transparent, hsla(0, 0%, 100%, .25), transparent)
}

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after, [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after, [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after, [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after {
    animation: shine .75s cubic-bezier(.01, .56, 1, 1)
}

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover, [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover, [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover, [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover {
    background: #e94794;
    background: var(--colorBtnPrimaryLight);
    transition-delay: .25s
}

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active, [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active, [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active, [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active {
    background: #e21b79;
    background: var(--colorBtnPrimary);
    transition-delay: 0s
}

.btn--body, .btn--body:active, .btn--body:hover {
    border: 1px solid;
    border-color: #e8e8e1;
    border-color: var(--colorBorder);
    background-color: #fbf5e7;
    background-color: var(--colorBody);
    color: #2a317d;
    color: var(--colorTextBody)
}

.btn--small {
    padding: 8px 14px;
    background-position: 150% 45%;
    min-width: 90px;
    font-size: calc(var(--typeBaseSize) - 6px);
    font-size: max(calc(var(--typeBaseSize) - 6px), 12px)
}

[data-button_style=angled] .btn--small {
    margin-left: 10px;
    padding-left: 16px;
    padding-right: 16px
}

.btn--full {
    width: 100%;
    transition: none;
    padding: 16px 18px
}

[data-button_style=angled] .btn--full {
    max-width: 94%
}

.btn--loading {
    position: relative;
    text-indent: -9999px;
    background-color: #cb186d;
    background-color: var(--colorBtnPrimaryDim);
    color: #cb186d;
    color: var(--colorBtnPrimaryDim)
}

.btn--loading:active, .btn--loading:hover {
    background-color: #cb186d;
    background-color: var(--colorBtnPrimaryDim);
    color: #cb186d;
    color: var(--colorBtnPrimaryDim)
}

.btn--loading:before {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -12px;
    margin-top: -12px;
    border-radius: 50%;
    border: 3px solid;
    border-color: #fbf5e7;
    border-color: var(--colorBtnPrimaryText);
    border-top-color: transparent;
    animation: spin 1s linear infinite
}

[data-button_style=angled] .btn--loading:before {
    left: 50%;
    top: 50%;
    width: 24px;
    height: 24px;
    transform: none;
    border: 3px solid;
    border-color: #fbf5e7 !important;
    border-color: var(--colorBtnPrimaryText) !important;
    border-top-color: transparent !important
}

[data-button_style=angled] .btn--loading:after {
    background-color: #cb186d;
    background-color: var(--colorBtnPrimaryDim)
}

@media only screen and (max-width: 768px) {
    .btn--full {
        padding: 13px 15px 10px
    }
}

img {
    border: 0 none;
    display: block
}

svg:not(:root) {
    overflow: hidden
}

img {
    max-width: 100%
}

img[data-sizes=auto] {
    display: block;
    width: 100%
}

.video-wrapper {
    position: relative;
    overflow: hidden;
    max-width: 100%;
    padding-bottom: 56.25%;
    height: 0;
    height: auto
}

.video-wrapper video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.inline {
    display: inline
}

.hidden-label {
    clip: rect(0, 0, 0, 0);
    overflow: hidden;
    position: absolute;
    height: 1px;
    width: 1px
}

label[for] {
    cursor: pointer
}

small {
    display: block
}

.selector-wrapper label {
    margin-right: 10px
}

.selector-wrapper + .selector-wrapper {
    margin-top: 15px
}

.icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    fill: currentColor
}

.no-svg .icon {
    display: none
}

.icon--full-color {
    fill: initial
}

svg.icon:not(.icon--full-color) g, svg.icon:not(.icon--full-color) path {
    fill: inherit;
    stroke: inherit
}

.icon-email g, .icon-email path, .icon-ribbon g, .icon-ribbon path, .icon-tag g, .icon-tag path {
    fill: none !important;
    stroke-width: var(--iconWeight);
    stroke: currentColor !important;
    stroke-linecap: var(--iconLinecaps);
    stroke-linejoin: var(--iconLinecaps)
}

.animation-delay-20 {
    animation-delay: 1.2s
}

.animation-delay-19 {
    animation-delay: 1.14s
}

.animation-delay-18 {
    animation-delay: 1.08s
}

.animation-delay-17 {
    animation-delay: 1.02s
}

.animation-delay-16 {
    animation-delay: .96s
}

.animation-delay-15 {
    animation-delay: .9s
}

.animation-delay-14 {
    animation-delay: .84s
}

.animation-delay-13 {
    animation-delay: .78s
}

.animation-delay-12 {
    animation-delay: .72s
}

.animation-delay-11 {
    animation-delay: .66s
}

.animation-delay-10 {
    animation-delay: .6s
}

.animation-delay-9 {
    animation-delay: .54s
}

.animation-delay-8 {
    animation-delay: .48s
}

.animation-delay-7 {
    animation-delay: .42s
}

.animation-delay-6 {
    animation-delay: .36s
}

.animation-delay-5 {
    animation-delay: .3s
}

.animation-delay-4 {
    animation-delay: .24s
}

.animation-delay-3 {
    animation-delay: .18s
}

.animation-delay-2 {
    animation-delay: .12s
}

.appear-delay-20 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) 1.3s, opacity 1s cubic-bezier(.165, .84, .44, 1) 1.4s
}

.appear-delay-19 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) 1.24s, opacity 1s cubic-bezier(.165, .84, .44, 1) 1.34s
}

.appear-delay-18 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) 1.18s, opacity 1s cubic-bezier(.165, .84, .44, 1) 1.28s
}

.appear-delay-17 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) 1.12s, opacity 1s cubic-bezier(.165, .84, .44, 1) 1.22s
}

.appear-delay-16 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) 1.06s, opacity 1s cubic-bezier(.165, .84, .44, 1) 1.16s
}

.appear-delay-15 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) 1s, opacity 1s cubic-bezier(.165, .84, .44, 1) 1.1s
}

.appear-delay-14 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .94s, opacity 1s cubic-bezier(.165, .84, .44, 1) 1.04s
}

.appear-delay-13 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .88s, opacity 1s cubic-bezier(.165, .84, .44, 1) .98s
}

.appear-delay-12 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .82s, opacity 1s cubic-bezier(.165, .84, .44, 1) .92s
}

.appear-delay-11 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .76s, opacity 1s cubic-bezier(.165, .84, .44, 1) .86s
}

.appear-delay-10 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .7s, opacity 1s cubic-bezier(.165, .84, .44, 1) .8s
}

.appear-delay-9 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .64s, opacity 1s cubic-bezier(.165, .84, .44, 1) .74s
}

.appear-delay-8 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .58s, opacity 1s cubic-bezier(.165, .84, .44, 1) .68s
}

.appear-delay-7 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .52s, opacity 1s cubic-bezier(.165, .84, .44, 1) .62s
}

.appear-delay-6 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .46s, opacity 1s cubic-bezier(.165, .84, .44, 1) .56s
}

.appear-delay-5 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .4s, opacity 1s cubic-bezier(.165, .84, .44, 1) .5s
}

.appear-delay-4 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .34s, opacity 1s cubic-bezier(.165, .84, .44, 1) .44s
}

.appear-delay-3 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .28s, opacity 1s cubic-bezier(.165, .84, .44, 1) .38s
}

.appear-delay-2 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .22s, opacity 1s cubic-bezier(.165, .84, .44, 1) .32s
}

.appear-delay-1 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .1s, opacity 1s cubic-bezier(.165, .84, .44, 1) .2s
}

.image-wrap {
    overflow: hidden
}

.image-wrap img:not([role=presentation]) {
    display: block
}

.image-wrap img:not([role=presentation]), .image-wrap svg {
    opacity: 0
}

.no-js .image-wrap img:not([role=presentation]), .no-js .image-wrap svg {
    opacity: 1
}

.aos-animate .image-wrap svg {
    animation: fade-in 1s cubic-bezier(.26, .54, .32, 1) 0s forwards
}

[data-aos=row-of-3].aos-animate:nth-child(3n+2) .image-wrap img {
    animation-delay: .15s
}

[data-aos=row-of-3].aos-animate:nth-child(3n+3) .image-wrap img {
    animation-delay: .3s
}

[data-aos=row-of-4].aos-animate:nth-child(4n+2) .image-wrap img {
    animation-delay: .12s
}

[data-aos=row-of-4].aos-animate:nth-child(4n+3) .image-wrap img {
    animation-delay: .24s
}

[data-aos=row-of-4].aos-animate:nth-child(4n+4) .image-wrap img {
    animation-delay: .36s
}

[data-aos=row-of-5].aos-animate:nth-child(5n+2) .image-wrap img {
    animation-delay: 75ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+3) .image-wrap img {
    animation-delay: .15s
}

[data-aos=row-of-5].aos-animate:nth-child(5n+4) .image-wrap img {
    animation-delay: 225ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+5) .image-wrap img {
    animation-delay: .3s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+2) .image-wrap img {
    animation-delay: 50ms
}

[data-aos=row-of-6].aos-animate:nth-child(6n+3) .image-wrap img {
    animation-delay: .1s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+4) .image-wrap img {
    animation-delay: .15s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+5) .image-wrap img {
    animation-delay: .2s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+6) .image-wrap img {
    animation-delay: .25s
}

[data-aos=row-of-3].aos-animate:nth-child(3n+2) .collection-image {
    animation-delay: .15s
}

[data-aos=row-of-3].aos-animate:nth-child(3n+3) .collection-image {
    animation-delay: .3s
}

[data-aos=row-of-4].aos-animate:nth-child(4n+2) .collection-image {
    animation-delay: .12s
}

[data-aos=row-of-4].aos-animate:nth-child(4n+3) .collection-image {
    animation-delay: .24s
}

[data-aos=row-of-4].aos-animate:nth-child(4n+4) .collection-image {
    animation-delay: .36s
}

[data-aos=row-of-5].aos-animate:nth-child(5n+2) .collection-image {
    animation-delay: 75ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+3) .collection-image {
    animation-delay: .15s
}

[data-aos=row-of-5].aos-animate:nth-child(5n+4) .collection-image {
    animation-delay: 225ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+5) .collection-image {
    animation-delay: .3s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+2) .collection-image {
    animation-delay: 50ms
}

[data-aos=row-of-6].aos-animate:nth-child(6n+3) .collection-image {
    animation-delay: .1s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+4) .collection-image {
    animation-delay: .15s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+5) .collection-image {
    animation-delay: .2s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+6) .collection-image {
    animation-delay: .25s
}

.loading:after, .loading:before {
    content: "";
    position: absolute;
    width: 100px;
    height: 3px;
    background: #fbf5e7;
    background: var(--colorBody);
    left: 50%;
    top: 50%;
    margin: -1px 0 0 -50px;
    z-index: 4;
    opacity: 0
}

.no-js .loading:after, .no-js .loading:before {
    display: none
}

.loading:before {
    background: #2a317d;
    background: var(--colorTextBody);
    opacity: 1
}

.loading:after {
    opacity: 0;
    animation: preloading .5s ease .3s infinite
}

.appear-animation {
    opacity: 0;
    transform: translateY(60px)
}

[data-disable-animations=true] .appear-animation {
    opacity: 1;
    transform: none
}

.site-footer .footer__collapsible .footer_btn .btn {
    padding: 10px 35px !important
}

.site-footer .footer__collapsible {
    font-family: Rubik, sans-serif;
    font-weight: 300;
    font-size: 18px
}

@media only screen and (min-width: 769px) {
    .site-footer {
        padding-top: 60px;
        padding-bottom: 60px
    }

    .site-footer .footer__collapsible {
        font-size: 20px
    }
}

@media only screen and (max-width: 768px) {
    [data-center-text=true] .site-footer {
        text-align: center
    }

    .site-footer {
        padding-bottom: 0
    }

    .site-footer .grid__item {
        padding-bottom: 15px
    }

    .site-footer .grid__item:first-child {
        padding-top: 7.5px
    }

    .site-footer .grid__item:last-child:after {
        display: none
    }
}

.site-footer a {
    color: #fff;
    color: var(--colorFooterText)
}

.footer__small-text {
    font-size: max(calc(var(--typeBaseSize) * .7), 12px);
    padding: 7.5px 0;
    margin: 0;
    text-align: center
}

ul + .footer__small-text {
    padding-top: 15px
}

.footer__section {
    margin-bottom: 15px
}

@media only screen and (min-width: 769px) {
    .footer__section {
        margin-top: 30px;
        margin-bottom: 0
    }
}

@media only screen and (min-width: 769px) {
    .footer__item-padding {
        padding-right: 60px
    }
}

.footer__title {
    font-family: Rubik, sans-serif;
    font-weight: 600;
    font-size: 20px;
    text-transform: uppercase
}

@media only screen and (min-width: 769px) {
    .footer__title {
        font-size: 25px;
        margin-bottom: 20px
    }
}

@media only screen and (max-width: 768px) {
    [data-center-text=true] .footer__title {
        text-align: left
    }
}

.site-footer__linklist {
    margin: 0
}

.site-footer__linklist a {
    color: currentColor;
    display: inline-block;
    padding: 4px 0
}

.footer__logo {
    margin: 15px 0
}

@media only screen and (min-width: 769px) {
    .footer__logo {
        margin: 0 0 20px
    }
}

.footer__logo a {
    display: block
}

.footer__social li {
    display: inline-block;
    margin: 0 15px 15px 0
}

.footer__social a {
    display: block
}

.footer__social .icon {
    width: 22px;
    height: 22px
}

@media only screen and (min-width: 769px) {
    .footer__social .icon {
        width: 24px;
        height: 24px
    }
}

.collapsible-content__inner p a:after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0%;
    border-bottom: 2px solid;
    border-bottom-color: #fff;
    border-bottom-color: var(--colorFooterText);
    transition: width .5s ease
}

.collapsible-content__inner p a {
    position: relative;
    text-decoration: none;
    border-bottom: 2px solid;
    border-color: #ffffff1a
}

.collapsible-content__inner p a:focus:after, .collapsible-content__inner p a:hover:after {
    width: 100%
}

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

.rte {
    margin-bottom: 7.5px
}

@media only screen and (min-width: 769px) {
    .rte {
        margin-bottom: 15px
    }
}

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

.rte + .rte {
    margin-top: 30px
}

.rte p, .rte ul {
    margin-bottom: 15px
}

.rte p:last-child, .rte ul:last-child {
    margin-bottom: 0
}

.rte ul ul {
    margin-bottom: 0
}

.rte h1, .rte h2, .rte h3, .rte h4, .rte h5, .rte h6 {
    margin-top: 60px;
    margin-bottom: 25px
}

.rte h1:first-child, .rte h2:first-child, .rte h3:first-child, .rte h4:first-child, .rte h5:first-child, .rte h6:first-child {
    margin-top: 0
}

.rte h1 a, .rte h2 a, .rte h3 a, .rte h4 a, .rte h5 a, .rte h6 a {
    text-decoration: none
}

.rte meta:first-child + h1, .rte meta:first-child + h2, .rte meta:first-child + h3, .rte meta:first-child + h4, .rte meta:first-child + h5, .rte meta:first-child + h6 {
    margin-top: 0
}

.rte > div {
    margin-bottom: 15px
}

.rte > div:last-child {
    margin-bottom: 0
}

.rte li {
    margin-bottom: 0
}

.rte--block {
    margin-bottom: 8px
}

@media only screen and (min-width: 769px) {
    .rte--block {
        margin-bottom: 12px
    }
}

.rte-setting > p:last-child {
    margin-bottom: 0
}

.rte a, .rte-setting a {
    text-decoration: none
}

.rte img, .rte-setting img {
    height: auto
}

.rte a:not(.rte__image):not(.btn):not(.spr-summary-actions-newreview), .rte-setting a:not(.rte__image):not(.btn):not(.spr-summary-actions-newreview) {
    text-decoration: none;
    border-bottom: 1px solid;
    border-bottom-color: #2a317d26;
    position: relative;
    display: inline-block
}

.rte a:not(.btn):focus:after, .rte a:not(.btn):hover:after, .rte-setting a:not(.btn):focus:after, .rte-setting a:not(.btn):hover:after {
    width: 100%
}

.rte a.rte__image:after, .rte-setting a.rte__image:after {
    content: none
}

.text-center .rte ul, .text-center.rte ul {
    list-style-position: inside;
    margin-left: 0
}

.header-item {
    display: flex;
    align-items: center;
    justify-content: center
}

.header-item--logo-split .header-item {
    width: 33.33%
}

.header-item--logo-split {
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex: 1 1 100%
}

.header-item--logo-split .header-item:not(.header-item--logo) {
    text-align: center
}

.header-item--split-left {
    justify-content: flex-end
}

.site-header {
    position: relative;
    background: #fbf5e7;
    background: var(--colorNav);
    padding: 16px 0
}

.site-header__logo {
    position: relative;
    margin: 0;
    display: block;
    font-size: 30px;
    z-index: 6
}

@media only screen and (min-width: 769px) {
    .text-center .site-header__logo {
        padding-right: 0;
        margin: 10px auto
    }
}

.site-header__logo a {
    max-width: 100%
}

.site-header__logo a, .site-header__logo a:hover {
    text-decoration: none
}

.site-header__logo img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.site-header__logo-link {
    display: flex;
    position: relative;
    align-items: center;
    color: #000;
    color: var(--colorNavText)
}

.site-header__logo-link:hover {
    color: #000;
    color: var(--colorNavText)
}

@media only screen and (max-width: 768px) {
    .site-header__logo a {
        width: 150px !important
    }

    .site-header__logo-link {
        margin: 0 auto
    }
}

.header-sticky-wrapper {
    position: relative;
    z-index: 28
}

.section-header {
    margin-bottom: 30px
}

@media only screen and (min-width: 769px) {
    .section-header {
        margin-bottom: 50px
    }
}

[data-type_headers_align_text=true] .section-header {
    text-align: center
}

.section-header--flush {
    margin-bottom: 0
}

.section-header--with-link {
    display: flex;
    align-items: center
}

.section-header--hero {
    position: relative;
    flex: 1 1 100%;
    color: #fff;
    color: var(--colorHeroText);
    margin-bottom: 0
}

.section-header--hero a {
    color: #fff;
    color: var(--colorHeroText)
}

.section-header__title {
    margin-bottom: 0
}

.section-header--with-link .section-header__title {
    flex: 1 1 auto
}

@media only screen and (min-width: 769px) {
    .section-header--hero .section-header__title {
        font-size: calc(var(--typeHeaderSize) * 1.45)
    }
}

.section-header__link {
    flex: 0 1 auto;
    margin-top: 15px
}

.section-header--with-link .section-header__link {
    margin-top: 0
}

.section-header--404 {
    padding-top: 80px
}

.section-header p {
    margin: 10px 0
}

.collapsible-content {
    transition: opacity .3s cubic-bezier(.25, .46, .45, .94), height .3s cubic-bezier(.25, .46, .45, .94)
}

.collapsible-content--all {
    visibility: hidden;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    opacity: 0;
    height: 0
}

.collapsible-content--all .collapsible-content__inner {
    transform: translateY(40px)
}

@media only screen and (max-width: 768px) {
    .collapsible-content--small {
        visibility: hidden;
        overflow: hidden;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        opacity: 0;
        height: 0
    }

    .collapsible-content--small .collapsible-content__inner {
        transform: translateY(40px)
    }
}

.collapsible-content__inner {
    transition: transform .3s cubic-bezier(.25, .46, .45, .94)
}

.collapsible-content--sidebar {
    visibility: hidden;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    opacity: 0;
    height: 0
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: .5
}

:-moz-placeholder {
    color: inherit;
    opacity: .5
}

:-ms-input-placeholder {
    color: inherit;
    opacity: .5
}

::-ms-input-placeholder {
    color: inherit;
    opacity: 1
}

.index-section--small {
    margin: 18px 0
}

.index-section + .index-section, .index-section + .index-section--hidden, .main-content + .index-section {
    margin-top: 0
}

.index-section--flush {
    margin: 0
}

@media only screen and (min-width: 769px) {
    .index-section--small {
        margin: 30px 0
    }
}

.feature-row-wrapper {
    overflow: hidden;
    direction: ltr
}

.feature-row {
    margin: 0 auto;
    display: flex;
    justify-content: space-between
}

@media only screen and (min-width: 1050px) {
    .feature-row {
        margin: 0 6%
    }
}

@media only screen and (max-width: 768px) {
    .feature-row {
        flex-direction: column;
        margin: 0
    }
}

@media only screen and (max-width: 768px) {
    .feature-row__item {
        flex: 1 1 auto;
        max-width: 100%;
        min-width: 100%
    }
}

.feature-row__image {
    display: block;
    margin: 0 auto;
    order: 1
}

@media only screen and (min-width: 769px) {
    .feature-row__image {
        order: 2
    }
}

.feature-row__text {
    flex: 0 1 43%;
    padding: 0
}

@media only screen and (max-width: 768px) {
    .feature-row__text {
        order: 2;
        margin-top: 0;
        padding: 30px 20px 0
    }
}

.feature-row__text .rte {
    margin: 0
}

.feature-row__text .btn {
    margin-top: 25px
}

@media only screen and (min-width: 769px) {
    .feature-row__text--left {
        padding-left: 60px
    }

    .feature-row__text--right {
        padding-right: 60px
    }
}

.product-block {
    margin-bottom: 10px
}

.product-block--header + .product-block--price {
    margin-top: -20px
}

.product_description {
    margin-top: 10px;
    margin-bottom: 30px
}

.theme-block {
    margin-bottom: 30px
}

.theme-block:last-child {
    margin-bottom: 0
}

.slideshow-wrapper {
    position: relative
}

.slideshow__slide {
    display: none;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden
}

.slideshow__slide:first-child {
    display: block
}

.hero {
    position: relative;
    overflow: hidden;
    background: #fbf5e7;
    background: var(--colorLargeImageBg)
}

.hero__image-wrapper, .hero__media, .hero__media-container {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%
}

.hero__image {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    -o-object-fit: cover;
    object-fit: cover
}

.hero__media {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top;
    z-index: 1
}

.hero__image-wrapper--no-overlay:before {
    content: none
}

.hero__media video {
    width: 100%;
    height: 100%;
    pointer-events: none
}

.hero__media video {
    position: relative;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover"
}

.hero__slide-link {
    display: block;
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: 5
}

.hero__slide-link:hover ~ .hero__text-wrap .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse) {
    background: #e94794;
    background: var(--colorBtnPrimaryLight);
    transition-delay: .25s
}

.hero__slide-link:hover ~ .hero__text-wrap .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):after {
    animation: shine .75s cubic-bezier(.01, .56, 1, 1)
}

[data-button_style=angled] .hero__slide-link:hover ~ .hero__text-wrap .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):after {
    animation: none
}

.hero__text-wrap {
    position: relative;
    height: 100%;
    color: #fff;
    color: var(--colorHeroText)
}

.hero__text-wrap .page-width {
    display: table;
    width: 100%;
    height: 100%
}

.hero__text-content {
    position: relative;
    padding: 15px 0;
    z-index: 4
}

@media only screen and (min-width: 769px) {
    .hero__text-content {
        padding: 45px 0
    }
}

[data-dots=true] .hero__text-content {
    padding-bottom: 40px
}

.hero__title {
    display: block;
    margin-bottom: 0
}

.hero__link {
    position: relative;
    display: block
}

.hero__link .btn {
    margin: 4px 3px 2px 0
}

@media only screen and (min-width: 769px) {
    .hero__link .btn {
        margin-right: 5px;
        margin-top: 0
    }
}

[data-button_style=angled] .hero__link .btn {
    margin-left: 12px
}

.hero__link .btn + .btn {
    margin-left: 2px
}

@media only screen and (min-width: 769px) {
    .hero__link .btn + .btn {
        margin-left: 10px
    }
}

[data-button_style=angled] .hero__link .btn + .btn {
    margin-left: 12px
}

.hero__text-content {
    display: table-cell
}

.hero__text-content .hero__link {
    margin-top: 7.5px
}

@media only screen and (min-width: 769px) {
    .hero__text-content .hero__link {
        margin-top: 15px
    }
}

.hero--450px {
    height: 292.5px
}

.hero--550px {
    height: 357.5px
}

.hero--650px {
    height: 422.5px
}

.hero--750px {
    height: 487.5px
}

@media only screen and (min-width: 769px) {
    .hero--450px {
        height: 450px
    }

    .hero--550px {
        height: 550px
    }

    .hero--650px {
        height: 650px
    }

    .hero--750px {
        height: 750px
    }
}

@media only screen and (max-width: 768px) {
    .hero--mobile--auto[data-mobile-natural=true] {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        height: auto
    }

    .hero--mobile--250px[data-mobile-natural=false] {
        height: 250px
    }

    .hero--mobile--300px[data-mobile-natural=false] {
        height: 300px
    }

    .hero--mobile--400px[data-mobile-natural=false] {
        height: 400px
    }

    .hero--mobile--500px[data-mobile-natural=false] {
        height: 500px
    }
}

.slideshow__slide:not(.animate-out) .hero__image, [data-aos=hero__animation]:not(.animate-out) .hero__image {
    opacity: 0;
    transition: none
}

.slideshow__slide .hero__image-wrapper, [data-aos=hero__animation] .hero__image-wrapper {
    transform: translate(200px);
    opacity: 0;
    transition: none
}

.no-js .hero__image, .no-js .hero__image-wrapper {
    opacity: 1 !important;
    transform: none
}

.collection-content {
    padding-top: 22.5px
}

@media only screen and (min-width: 769px) {
    .collection-content {
        padding-top: 45px
    }
}

.rte.collection__description {
    margin-bottom: 45px
}

.collection-hero {
    position: relative;
    width: 100%;
    height: 250px;
    overflow: hidden;
    background: #fbf5e7;
    background: var(--colorLargeImageBg)
}

@media only screen and (min-width: 769px) {
    .collection-hero {
        height: 420px
    }
}

.collection-hero__content {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    display: flex;
    align-items: flex-end;
    padding: 15px 0;
    z-index: 1
}

@media only screen and (min-width: 769px) {
    .collection-hero__content {
        padding: 30px 0
    }
}

[data-type_headers_align_text=true] .collection-hero__content {
    align-items: center
}

.collection-hero__content .page-width {
    width: 100%
}

.collection-hero__content:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: auto;
    background-color: #0000;
    background-color: var(--colorImageOverlay);
    opacity: .1;
    opacity: var(--colorImageOverlayOpacity);
    display: block
}

.collection-hero__content .section-header {
    opacity: 0;
    animation: fade-in .5s 1s forwards
}

[data-disable-animations=true] .collection-hero__content .section-header {
    opacity: 1;
    animation: none
}

.collection-hero__image {
    opacity: 0
}

.no-js .collection-hero__image {
    opacity: 1
}

.collection-sidebar {
    padding-right: 10px;
    margin-bottom: 20px
}

@media only screen and (min-width: 769px) {
    .grid__item--sidebar {
        position: sticky;
        top: 10px;
        max-height: 90vh;
        overflow-y: auto
    }
}

@media only screen and (min-width: 769px) {
    .site-header__logo {
        text-align: left
    }
}

.header-logo a, .site-header__logo a {
    color: #000;
    color: var(--colorNavText)
}

.tag-list__header {
    text-align: left
}

.tag-list .tag-list {
    margin-left: 15px
}

.tag-list a, .tag-list label {
    cursor: pointer;
    display: block;
    line-height: 1.4
}

.tag-list label:hover {
    text-decoration: underline;
    text-underline-offset: 2px
}

.grid-product {
    margin-bottom: 15px
}

@media only screen and (min-width: 769px) {
    .grid-product {
        margin-bottom: 30px
    }
}

@media only screen and (max-width: 768px) {
    .grid-overflow-wrapper .grid-product {
        margin-bottom: 0
    }
}

.grid-product__content {
    position: relative;
    text-align: left
}

html[dir=rtl] .grid-product__content {
    text-align: right
}

.grid-product__title--heading {
    font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
    font-weight: var(--typeHeaderWeight);
    letter-spacing: var(--typeHeaderSpacing);
    line-height: var(--typeHeaderLineHeight)
}

[data-type_header_capitalize=true] .grid-product__title--heading {
    text-transform: uppercase
}

.grid-product__title--heading {
    font-size: calc(var(--typeBaseSize) + 2px);
    line-height: 1
}

[data-type_product_capitalize=true] .grid-product__title {
    text-transform: uppercase;
    font-size: calc(var(--typeBaseSize) - 2px)
}

@media only screen and (max-width: 768px) {
    [data-type_product_capitalize=true] .grid-product__title {
        font-size: calc(var(--typeBaseSize) - 3px)
    }
}

.grid-product__title {
    word-break: break-word;
    -webkit-hyphens: auto;
    hyphens: auto
}

.grid-product__link {
    display: block
}

.grid-product__link--inline {
    display: flex
}

.grid-product__link--inline .grid-product__meta {
    text-align: left
}

.grid-product__image {
    display: block;
    margin: 0 auto;
    width: 100%
}

.grid-product__color-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50%;
    opacity: 0;
    transition: opacity .4s ease;
    background-color: #fbf5e7;
    background-color: var(--colorBody)
}

[data-center-text=true] .grid-product__meta {
    text-align: center
}

.grid-product__meta {
    position: relative;
    padding: 10px 0 6px;
    line-height: 1
}

@media only screen and (max-width: 768px) {
    .small--grid--flush .grid-product__meta {
        padding-left: 10px;
        padding-right: 10px
    }
}

.grid-product__price {
    font-size: calc(var(--typeBaseSize) * .85);
    color: #1c1d1d;
    color: var(--colorPrice);
    margin-top: 5px
}

.grid-product__price--original {
    text-decoration: line-through;
    margin-right: 5px
}

.grid-product__tag {
    font-size: calc(var(--typeBaseSize) * .65);
    position: absolute;
    top: 0;
    right: 0;
    line-height: 1;
    padding: 6px 5px 6px 7px;
    background-color: #e21b79;
    background-color: var(--colorBtnPrimary);
    color: #fbf5e7;
    color: var(--colorBtnPrimaryText);
    z-index: 2;
    transition: opacity .4s ease
}

@media only screen and (min-width: 769px) {
    .grid-product__tag {
        font-size: calc(var(--typeBaseSize) * .85);
        padding: 7px 7px 7px 9px
    }
}

@media only screen and (max-width: 768px) {
    .grid-overflow-wrapper {
        overflow: hidden;
        overflow-x: scroll;
        -webkit-overflow-scrolling: touch
    }

    .grid-overflow-wrapper .grid {
        white-space: nowrap;
        display: flex
    }

    .grid-overflow-wrapper .grid__item {
        width: 39vw;
        flex: 0 0 39vw;
        display: inline-block;
        float: none;
        white-space: normal
    }

    .grid-overflow-wrapper .grid__item:first-child {
        margin-left: 17px
    }

    .grid-overflow-wrapper .grid__item:last-child:after {
        content: "";
        display: inline-block;
        width: 100%;
        margin-right: 17px
    }

    .grid-overflow-wrapper .grid__item--view-all {
        align-self: center
    }

    .grid-overflow-wrapper .grid-product__price, .grid-overflow-wrapper .grid__item {
        font-size: .75rem
    }

    [data-aos=overflow__animation] {
        transform: translate(100vw);
        transition: all .8s cubic-bezier(.25, .46, .45, .94)
    }

    [data-aos=overflow__animation].aos-animate {
        transform: translate(0)
    }

    [data-disable-animations=true] [data-aos=overflow__animation] {
        transform: none;
        transition: none
    }
}

@keyframes inventory-pulse {
    0% {
        opacity: .5
    }
    to {
        transform: scale(2.5);
        opacity: 0
    }
}

.collection-item {
    position: relative;
    display: block;
    margin-bottom: 17px;
    overflow: hidden
}

@media only screen and (min-width: 769px) {
    .collection-item {
        margin-bottom: 22px
    }
}

.collection-item:hover .collection-image {
    transform: scale(1.03);
    transition: all .8s ease
}

[data-disable-animations=true] .collection-item:hover .collection-image {
    transform: none;
    transition: none
}

.collection-item:not(.collection-item--below):after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: auto;
    background-color: #000;
    background-color: var(--colorGridOverlay);
    opacity: .1;
    opacity: var(--colorGridOverlayOpacity);
    transition: opacity .8s ease
}

.collection-item:not(.collection-item--below):hover:after {
    opacity: .25;
    opacity: calc(var(--colorGridOverlayOpacity) + .15)
}

.collection-image {
    position: relative;
    transition: transform .3s ease
}

.collection-image img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.collection-item__title {
    display: block;
    z-index: 2;
    font-size: calc(var(--typeCollectionTitle) * .8);
    line-height: 1em
}

@media only screen and (min-width: 769px) {
    .collection-item__title {
        font-size: var(--typeCollectionTitle)
    }
}

[data-type_product_capitalize=true] .collection-item__title span {
    text-transform: uppercase;
    font-size: .8em
}

.collection-item__title--heading {
    font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
    font-weight: var(--typeHeaderWeight);
    letter-spacing: var(--typeHeaderSpacing);
    line-height: var(--typeHeaderLineHeight)
}

[data-type_header_capitalize=true] .collection-item__title--heading {
    text-transform: uppercase
}

.collection-item__title--bottom-center, .collection-item__title--center, .collection-item__title--top-center {
    text-align: center
}

.collection-item__title--bottom-right, .collection-item__title--top-right .collection-item__title--right {
    text-align: right
}

.collection-item__title--center[class*=collection-item__title--overlaid], .collection-item__title--left[class*=collection-item__title--overlaid], .collection-item__title--right[class*=collection-item__title--overlaid] {
    top: 50%;
    transform: translateY(-50%)
}

.collection-item__title--top-center[class*=collection-item__title--overlaid], .collection-item__title--top-left[class*=collection-item__title--overlaid], .collection-item__title--top-right[class*=collection-item__title--overlaid] {
    top: 10px
}

@media only screen and (min-width: 769px) {
    .collection-item__title--top-center[class*=collection-item__title--overlaid], .collection-item__title--top-left[class*=collection-item__title--overlaid], .collection-item__title--top-right[class*=collection-item__title--overlaid] {
        top: 18px
    }
}

.collection-item__title--bottom-center[class*=collection-item__title--overlaid], .collection-item__title--bottom-left[class*=collection-item__title--overlaid], .collection-item__title--bottom-right[class*=collection-item__title--overlaid] {
    bottom: 10px
}

@media only screen and (min-width: 769px) {
    .collection-item__title--bottom-center[class*=collection-item__title--overlaid], .collection-item__title--bottom-left[class*=collection-item__title--overlaid], .collection-item__title--bottom-right[class*=collection-item__title--overlaid] {
        bottom: 18px
    }
}

.custom-content {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    width: auto;
    margin-bottom: -22px;
    margin-left: -22px
}

@media only screen and (max-width: 768px) {
    .custom-content {
        margin-bottom: -17px;
        margin-left: -17px
    }
}

.custom__item {
    flex: 0 0 auto;
    margin-bottom: 22px;
    padding-left: 22px;
    max-width: 100%
}

@media only screen and (max-width: 768px) {
    .custom__item {
        flex: 0 0 auto;
        padding-left: 17px;
        margin-bottom: 17px
    }

    .custom__item.small--one-half {
        flex: 1 0 50%;
        max-width: 400px;
        margin-left: auto;
        margin-right: auto
    }
}

.custom__item img {
    display: block
}

.custom__item-inner {
    position: relative;
    display: inline-block;
    text-align: left;
    max-width: 100%;
    width: 100%
}

.custom__item-inner--html, .custom__item-inner--video {
    display: block
}

.custom__item-inner--image {
    width: 100%
}

.custom__item-inner--html img {
    display: block;
    margin: 0 auto
}

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

.align--center {
    align-self: center;
    text-align: center
}

.align--bottom-left {
    align-self: flex-end
}

.align--bottom-right {
    align-self: flex-end;
    text-align: right
}

@media only screen and (min-width: 769px) {
    .logo__bar .logo-bar {
        flex-wrap: unset
    }

    .logo-bar__item {
        flex: 0 1 160px;
        margin: 0 20px 30px
    }
}

@media (max-width: 768px) {
    .logo__bar .logo-bar__item_title .title {
        font-size: 16px
    }

    .logo__bar .logo-bar__item {
        flex: unset;
        width: 33.33%;
        margin: 0 0 30px
    }

    .logo__bar .logo-bar__item_image {
        max-width: 50px
    }
}

.logo-bar__image {
    display: block;
    margin: 0 auto
}

.logo-bar__link {
    display: block
}

[data-aos=logo__animation] .logo-bar__item {
    opacity: 0
}

[data-aos=logo__animation].aos-animate .logo-bar__item {
    animation: fade-in .5s ease 0s forwards
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(2) {
    animation-delay: .2s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(3) {
    animation-delay: .4s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(4) {
    animation-delay: .6s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(5) {
    animation-delay: .8s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(6) {
    animation-delay: 1s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(7) {
    animation-delay: 1.2s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(8) {
    animation-delay: 1.4s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(9) {
    animation-delay: 1.6s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(10) {
    animation-delay: 1.8s
}

.background-media-text {
    position: absolute;
    width: 100%;
    overflow: hidden;
    background-size: cover
}

.background-media-text__video {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    z-index: 0
}

@media only screen and (max-width: 768px) {
    .background-media-text__video {
        width: 300%;
        left: -100%
    }
}

.background-media-text__video video {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    pointer-events: none
}

@media only screen and (min-width: 769px) {
    .background-media-text__video video {
        height: 120%;
        max-width: none;
        left: -100%;
        height: 150%;
        width: 300%
    }
}

@media screen and (min-width: 1140px) {
    .background-media-text__video video {
        width: 100%;
        height: 300%;
        left: auto;
        top: -100%
    }
}

.background-media-text__inner {
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%
}

.background-media-text__text {
    text-align: left;
    font-size: 1.1em;
    background: #fbf5e7;
    background: var(--colorBody);
    padding: 30px;
    width: 380px
}

html[dir=rtl] .background-media-text__text {
    text-align: right
}

@media only screen and (max-width: 768px) {
    .background-media-text__text {
        text-align: center
    }
}

.background-media-text__text .btn {
    margin-top: 15px
}

.background-media-text__container {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

@media only screen and (max-width: 768px) {
    .background-media-text, .background-media-text__inner {
        position: relative
    }

    .background-media-text__container, .background-media-text__video {
        position: relative;
        height: 240px
    }

    .background-media-text__text {
        padding: 22.5px;
        width: auto
    }

    .background-media-text.loading:after, .background-media-text.loading:before {
        top: 117px
    }
}

@media only screen and (min-width: 769px) {
    .background-media-text--450, .background-media-text--450 .background-media-text__video {
        min-height: 450px
    }

    .background-media-text--550, .background-media-text--550 .background-media-text__video {
        min-height: 550px
    }

    .background-media-text--650, .background-media-text--650 .background-media-text__video {
        min-height: 650px
    }

    .background-media-text--750, .background-media-text--750 .background-media-text__video {
        min-height: 750px
    }

    .background-media-text--850, .background-media-text--850 .background-media-text__video {
        min-height: 850px
    }

    .background-media-text--950, .background-media-text--950 .background-media-text__video {
        min-height: 950px
    }

    .background-media-text--1050, .background-media-text--1050 .background-media-text__video {
        min-height: 1050px
    }

    .background-media-text--1150, .background-media-text--1150 .background-media-text__video {
        min-height: 1150px
    }

    .background-media-text--1250, .background-media-text--1250 .background-media-text__video {
        min-height: 1250px
    }
}

.background-media-text--99, .background-media-text--99 .background-media-text__video {
    min-height: 99vh
}

@media (max-width: 768px) {
    .background-media-text--99, .background-media-text--99 .background-media-text__video {
        min-height: 95vh
    }
}

[data-aos=background-media-text__animation] .background-media-text__image, [data-aos=background-media-text__animation] .background-media-text__image svg, [data-aos=background-media-text__animation] .background-media-text__video {
    opacity: 0
}

.no-js [data-aos=background-media-text__animation] .background-media-text__image, .no-js [data-aos=background-media-text__animation] .background-media-text__image svg, .no-js [data-aos=background-media-text__animation] .background-media-text__video {
    animation: none;
    opacity: 1
}

[data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__image, [data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__image svg, [data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__video {
    animation: none;
    opacity: 1
}

[data-aos=background-media-text__animation].aos-animate .background-media-text__image svg {
    animation: zoom-fade 2.5s cubic-bezier(.26, .54, .32, 1) 0s forwards;
    transition: none
}

[data-disable-animations=true] [data-aos=background-media-text__animation].aos-animate .background-media-text__image svg {
    animation: none
}

.image-row:after {
    content: "";
    display: table;
    clear: both
}

.image-row__image {
    position: relative;
    min-height: 1px;
    float: left
}

.image-row__image:after {
    content: "";
    display: block;
    height: 0;
    width: 100%
}

.image-row__image img {
    display: block;
    position: absolute;
    top: 0;
    left: 0
}

.type-image .image-wrap, .type-image a, .type-image img {
    width: 100%
}

.type-banner {
    flex: 1 0 100%
}

.type-banner p {
    margin: 5px 10px;
    display: inline-block;
    vertical-align: middle;
    line-height: 1.2
}

.type-banner__link {
    display: block;
    flex: 1 1 100%
}

.type-banner__content {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px
}

.type-banner__text {
    position: relative;
    flex: 0 1 auto;
    z-index: 3;
    padding: 10px 20px
}

.type-banner__image {
    flex: 0 0 45%
}

@media only screen and (min-width: 769px) {
    .type-banner__image {
        flex: 0 0 200px
    }
}

.type-product__wrapper {
    flex: 1 1 100%;
    align-self: center;
    position: relative;
    padding: 2em 0;
    z-index: 4
}

@media only screen and (max-width: 768px) {
    .type-product__content {
        margin-top: 15px
    }
}

.type-product__image {
    position: relative
}

.type-product__image:first-child {
    width: 100%;
    max-width: 75%
}

.type-product__image:nth-child(2) {
    position: absolute;
    bottom: 40px;
    right: 0;
    width: 100%;
    max-width: 30%
}

.type-product__label {
    padding: 4px 12px;
    background-color: #e21b79;
    background-color: var(--colorBtnPrimary);
    color: #fbf5e7;
    color: var(--colorBtnPrimaryText);
    float: right;
    clear: both
}

.page-content--product {
    padding-top: 15px
}

.page-content--product .page-width {
    max-width: 1180px
}

@media only screen and (min-width: 769px) {
    .page-content--product {
        padding-bottom: 0
    }
}

@media only screen and (max-width: 768px) {
    .page-content--product {
        padding-top: 0
    }
}

.product-image-main {
    position: relative
}

[data-button_style=angled] .product-image-main .btn {
    display: inline-block;
    top: 50%;
    position: absolute
}

.product__video-wrapper {
    position: relative;
    overflow: hidden;
    border-radius: 30px;
    max-width: 100%;
    padding-bottom: 100%;
    height: auto;
    background-color: #fff;
    background-color: var(--colorSmallImageBg)
}

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

.product-main-slide:not(.is-selected) video {
    display: none
}

.product-main-slide {
    display: none;
    width: 100%;
    overflow: hidden
}

.product-main-slide:first-child {
    display: block
}

.product__price {
    margin-right: 5px;
    font-size: 28px;
    font-weight: 600
}

@media (min-width: 769px) and (max-width: 1100px) {
    .product__price {
        font-size: 24px
    }
}

@media (max-width: 768px) {
    .product__price {
        font-size: 20px
    }
}

.icon-shopify-logo {
    width: 60px;
    height: 20px
}

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

.m-0 {
    margin: 0
}

.w-100 {
    width: 100%
}

.text-uppercase {
    text-transform: uppercase
}

.text-center {
    text-align: center
}

.homepage_banner .background-media-text__text {
    background: 0 0;
    padding: 0;
    text-align: left;
    width: 100%
}

.homepage_banner .background-media-text__text .btn {
    margin-top: 0;
    color: #fff
}

.homepage_banner:not(.collection_banner) .homepage_banner_logo_img {
    max-width: 100%;
    margin-bottom: 15px;
    width: 100%
}

.homepage_banner.collection_banner .homepage_banner_logo_img {
    max-width: 260px;
    margin-bottom: 24px;
    width: 100%
}

.custom_content_btn {
    margin-top: 50px;
    text-transform: none
}

.three_columns_img .grid {
    margin-left: -4%
}

.three_columns_img .grid__item {
    padding-left: 4%
}

.three_columns_img .three_columns_content {
    padding: 25px 0 30px;
    border-radius: 30px
}

.three_columns_img .three_columns_content .h5 {
    margin: 0 auto;
    padding: 0 25px;
    line-height: 1.2
}

.three_columns_img .three_columns_content .image-wrap.text-spacing {
    margin-bottom: 25px
}

.three_columns_img .three_columns_inner .btn {
    margin-top: 40px
}

.three_columns_img .three_columns_inner h4 {
    padding: 0 25px 25px;
    font-weight: 700;
    margin: 0;
    text-transform: uppercase
}

.three_columns_img .three_columns_inner {
    height: calc(100% - 104px)
}

.homepage_logolist .page-width {
    max-width: 1500px
}

.homepage_logolist {
    padding-top: 11%
}

.homepage_logolist .logo-bar__item {
    margin: 0 auto
}

.animation_bar .animation_bar_wrapper .animation_bar_inner {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    float: left
}

.animation_bar .animation_bar_wrapper .js-marquee-wrapper:after, .animation_bar .animation_bar_wrapper .js-marquee:after {
    content: "";
    clear: both;
    display: table
}

.animation_bar .animation_bar_wrapper .image_wrapper {
    max-width: 40px;
    height: 40px;
    margin: 0 30px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex
}

.animation_bar .animation_bar_wrapper .image_wrapper img {
    width: auto
}

.animation_bar .animation_bar_wrapper .animation_text_heading {
    margin: 0;
    line-height: 1
}

.full_w_image_w_text.index-section {
    margin: 0
}

@media (max-width: 1100px) {
    .full_w_image_w_text.index-section {
        margin: 40px 0 0
    }
}

.full_w_image_w_text .feature-row {
    margin: 0
}

.full_w_image_w_text .full_w_image_w_text_img {
    max-width: 900px !important;
    margin: 0 0 0 30px
}

.full_w_image_w_text .feature-row__text--right .image_w_text_title {
    margin-bottom: 40px
}

.full_w_image_w_text .feature-row__text--right .btn {
    margin-top: 50px
}

.product_with_text_inner .product_with_text_content .title {
    margin-bottom: 50px
}

.product_with_text_inner .product_with_text_content .text {
    max-width: 700px;
    margin: 0 auto 50px;
    line-height: 1.3
}

.product_with_text_inner .product_with_text_content .btn {
    margin-top: 50px;
    max-width: 300px;
    width: 100%
}

.product_with_text_inner .product_block {
    max-width: 430px;
    position: relative
}

.product_block .product_imag_wrapper {
    position: relative;
    margin-bottom: 20px
}

.product_block .product_imag_wrapper .img {
    border-radius: 30px
}

.product_block .product_block_price {
    font-weight: 600;
    margin: 0
}

.product_with_text_inner {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    flex-wrap: wrap
}

.product_block .product_sales_label {
    background: #2a317d;
    color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 110px;
    height: 110px;
    text-align: center;
    border-radius: 100%;
    position: absolute;
    top: -50px;
    left: 30px;
    transform: rotate(335deg)
}

.product_block .product_sales_label p {
    font-family: Rubik, sans-serif;
    font-size: 18px;
    font-weight: 500;
    margin: 0;
    padding: 0 10px
}

.wavy_image_main .top_wavy_img .wavy_text_wrapper {
    position: relative
}

.wavy_image_main .wavy_back_img img {
    display: block;
    width: 100%
}

.homepage_featured_collection .grid_overflow_wrapper {
    overflow: hidden;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    padding-top: 90px;
    padding-bottom: 50px;
    scrollbar-width: none
}

.homepage_featured_collection .home_featured_products .grid {
    white-space: nowrap;
    display: flex;
    transition: all .8s cubic-bezier(.25, .46, .45, .94);
    transform: translate(0)
}

.homepage_featured_collection .home_featured_products .grid__item {
    width: 33.33%;
    flex: 0 0 33.33%;
    display: inline-block;
    float: none;
    white-space: normal;
    padding-left: 20px
}

.homepage_featured_collection .home_featured_products_no_text .grid__item {
    width: 25%;
    flex: 0 0 25%
}

.homepage_featured_collection .left_content_text p {
    margin: 0
}

.homepage_featured_collection .left_content_text .left_content_text_inner {
    padding: 50px 42px;
    background: #2a317d;
    color: #fff;
    border-radius: 0 0 30px 30px
}

.homepage_featured_collection .left_content_img img {
    border-radius: 30px 30px 0 0;
    width: 100%
}

.homepage_featured_collection .left_content_product .product_price_wrapper {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 15px;
    margin-bottom: 30px
}

.homepage_featured_collection .left_content_product .product_price {
    position: relative
}

.homepage_featured_collection .left_content_product .product_price:after {
    content: "";
    position: absolute;
    top: 50%;
    height: 3px;
    background: #042181;
    width: 100%;
    left: 0;
    transform: rotate(339deg)
}

.homepage_featured_collection .left_content_product .left_content_img img {
    border: 3px solid #042181
}

.homepage_featured_collection .left_content_product .left_content_text {
    padding: 20px;
    background: #c3e8f1;
    border-radius: 0 0 30px 30px;
    border: 3px solid #042181;
    border-top: 0
}

.homepage_featured_collection .left_content_product {
    border-radius: 30px;
    box-shadow: 10px 10px #2a317d;
    margin-right: 12px;
    margin-bottom: 12px;
    position: relative
}

.homepage_featured_collection ::-webkit-scrollbar {
    height: 8px
}

.homepage_featured_collection ::-webkit-scrollbar-track {
    background: #70707020;
    border-radius: 10px
}

.homepage_featured_collection ::-webkit-scrollbar-thumb {
    background: #2a317d;
    border-radius: 10px
}

.homepage_featured_collection .product_block .product_sales_label {
    width: 90px;
    height: 90px
}

.logo_bar_cover.logo__bar .logo-bar__item {
    flex: 0 1 170px
}

.logo_bar_cover.logo__bar .logo-bar__item_image {
    max-width: 80px
}

.logo_bar_cover.logo__bar .logo-bar__item_title {
    margin-top: 30px
}

.logo_bar_cover.logo__bar .logo-bar__item_title .title {
    font-size: 22px
}

.homepage_featured_collection_inner .product_block .product_content {
    max-width: 400px;
    margin: 0 auto
}

.homepage_featured_collection .section-header {
    margin-bottom: 0
}

.animate_curve {
    position: relative
}

.animate_curve .upper_svg {
    position: absolute;
    width: 100%;
    bottom: 60px;
    left: 0
}

.curve_text_svg path {
    fill: transparent
}

.curve_text_svg text {
    fill: #fff;
    font-size: 60px;
    font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
    text-transform: uppercase;
    letter-spacing: 2px
}

.product_list .product_list_inner {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px 10px
}

.product_list {
    margin-bottom: 15px
}

.product_list .product_list_inner .product_list_image_wrapper {
    width: 84px;
    height: 84px;
    border-radius: 15px;
    overflow: hidden;
    padding: 0
}

.product_list .product_list_inner .product_list_image_wrapper img {
    position: absolute;
    left: 0;
    top: 13%;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform: scale(1.05)
}

.product_list .product_list_title_wrapper .product_list_title {
    display: inline-block;
    margin-bottom: 0
}

.product_list .product_list_title_wrapper .product_list_title:first-child {
    margin-right: 10px
}

.product_list .product_list_title_wrapper {
    margin-bottom: 15px
}

.page_learn .index-section:last-child {
    margin-bottom: 0
}

.page_learn .slideshow-wrapper .hero__title {
    margin-bottom: 40px
}

.icon_with_text .icon_svg_wrapper svg {
    width: 110px;
    height: 110px;
    margin-bottom: 15px
}

.icon_with_text .icon_inner .icon_title {
    font-weight: 600;
    max-width: 130px;
    margin: 0 auto
}

.icon_with_text .icon_wrapper {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    max-width: 500px;
    margin: 0 auto -30px
}

.icon_with_text .icon_inner {
    width: 50%;
    margin-bottom: 30px
}

.icon_with_text .icon_with_text_wrapper {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    align-items: center
}

.subscription_product_list {
    position: relative
}

.subscription_product_list .subscription_product_title {
    color: #e21b79;
    font-weight: 500
}

.collection_product_list .collection_product_list_header {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin: 0;
    border: 3px solid #2a317d;
    border-radius: 22px;
    display: inline-block;
    position: relative
}

.collection_product_list .collection_product_list_header label {
    margin: 0;
    background-color: transparent;
    font-weight: 700;
    font-size: 24px;
    transition: .4s;
    padding: 14px 40px;
    display: inline-block
}

.collection_product_list .product_block .product_imag_wrapper {
    width: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    overflow: hidden;
    justify-content: center;
    margin-bottom: 15px
}

.collection_product_list .product_block .product_imag_wrapper.no_hover_img .original_image, .homepage_featured_collection .product_block .no_hover_img .original_image {
    opacity: 1 !important;
    visibility: visible !important
}

.collection_product_list .product_block .product_imag_wrapper .original_image, .homepage_featured_collection .product_block .product_imag_wrapper .original_image {
    transition: .2s
}

.collection_product_list .product_block .product_imag_wrapper .hover_image, .homepage_featured_collection .product_block .product_imag_wrapper .hover_image {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 0;
    visibility: hidden;
    transition: .2s
}

.collection_product_list .product_block .product_imag_wrapper:hover .hover_image, .homepage_featured_collection .product_block .product_imag_wrapper:hover .hover_image {
    opacity: 1;
    visibility: visible;
    z-index: 0
}

.collection_product_list .product_block_wrapper {
    margin: 0 0 -70px -40px;
    transition: .4s
}

.collection_product_list .product_block_wrapper .product_block {
    padding-left: 40px;
    margin-bottom: 70px
}

.collection_product_list .product_block_wrapper .product_title {
    margin-bottom: 30px
}

.collection_product_list .product_block_wrapper .product_block .btn {
    padding: 12px 18px;
    font-size: 16px
}

.collection_product_list .collection_products {
    position: relative
}

.content_hidden {
    opacity: 0;
    visibility: hidden;
    height: 0;
    position: absolute !important
}

.overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #353b76;
    z-index: 99;
    animation: overlay-on .5s forwards;
    cursor: pointer
}

@media (min-width: 1351px) {
    .homepage_featured_collection .home_featured_products .grid {
        margin: 0 0 0 -20px
    }
}

@media (min-width: 1101px) {
    .product_with_text .page-width {
        padding: 0 6%
    }
}

@media (min-width: 769px) and (max-width: 1230px) {
    .collection_product_list .product_block_wrapper {
        margin: 0 0 -50px -22px
    }

    .collection_product_list .product_block_wrapper .product_block {
        width: 33.33%;
        padding-left: 22px
    }

    .collection_product_list .product_block_wrapper .product_block:nth-of-type(4n+1) {
        clear: unset
    }

    .collection_product_list .product_block_wrapper .product_block:nth-of-type(3n+1) {
        clear: both
    }

    .collection_product_list .product_block_wrapper .product_block {
        margin-bottom: 50px
    }

    .collection_product_list .product_block_wrapper .product_title {
        margin-bottom: 20px
    }

    .collection_product_list .product_block_wrapper .product_block .btn {
        font-size: 14px
    }

    .collection_product_list .collection_product_list_header label {
        padding: 14px 35px
    }
}

@media (min-width: 769px) and (max-width: 1119px) {
    .homepage_featured_collection .home_featured_products .grid__item {
        width: 310px;
        flex: 0 0 310px;
        padding-left: 22px
    }

    .homepage_featured_collection .home_featured_products_no_text .grid__item {
        width: 300px;
        flex: 0 0 300px;
        padding-left: 22px
    }

    .homepage_featured_collection .left_content_wrapper {
        width: 45%
    }

    .homepage_featured_collection .right_product_wrapper {
        width: 55%
    }

    .homepage_featured_collection .product_block .product_sales_label {
        width: 80px;
        height: 80px;
        top: -40px
    }

    .homepage_featured_collection .product_block .product_sales_label p {
        font-size: 16px
    }
}

@media (min-width: 1120px) and (max-width: 1350px) {
    .homepage_featured_collection .home_featured_products .grid__item {
        width: 45%;
        flex: 0 0 45%;
        padding-left: 22px
    }

    .homepage_featured_collection .home_featured_products_no_text .grid__item {
        width: 28%;
        flex: 0 0 28%;
        padding-left: 22px
    }

    .homepage_featured_collection .left_content_wrapper {
        width: 40%
    }

    .homepage_featured_collection .right_product_wrapper {
        width: 60%
    }

    .homepage_featured_collection .product_block .product_sales_label {
        width: 80px;
        height: 80px;
        top: -40px
    }

    .homepage_featured_collection .product_block .product_sales_label p {
        font-size: 16px
    }
}

@media (min-width: 769px) and (max-width: 1100px) {
    .full_w_image_w_text .feature-row__text--right {
        margin-left: 0;
        padding-left: 40px;
        margin-right: 20px
    }

    .full_w_image_w_text .feature-row__text--right .image_w_text_title {
        margin-bottom: 20px
    }

    .full_w_image_w_text .feature-row__text--right .btn {
        margin-top: 30px
    }

    .product_with_text_inner .product_block .product_sales_label {
        width: 100px;
        height: 100px;
        top: -45px
    }

    .product_with_text_inner .product_block .product_sales_label p {
        font-size: 16px
    }

    .icon_with_text .icon_svg_wrapper svg {
        width: 90px;
        height: 90px;
        margin-bottom: 10px
    }

    .icon_with_text .icon_wrapper {
        max-width: 400px;
        margin: 0 auto -20px
    }

    .icon_with_text .icon_inner {
        margin-bottom: 20px
    }

    .wavy_image_main .wavy_text.bottom_wavy_img.homepage_bottom_wavy_img {
        margin-top: -8%
    }
}

@media (min-width: 769px) and (max-width: 1023px) {
    .full_w_image_w_text .feature-row__text--right .image_w_text_title {
        font-size: 48px
    }

    .full_w_image_w_text .feature-row__text--right .rte {
        font-size: 22px
    }

    .full_w_image_w_text .feature-row__text--right .btn {
        font-size: 16px;
        padding: 14px 38px;
        margin-top: 20px
    }

    .full_w_image_w_text .full_w_image_w_text_img {
        margin: 0
    }

    .homepage_logolist {
        padding-top: 12%
    }
}

@media (min-width: 769px) and (max-width: 1010px) {
    .page_product .page-content--product .grid__item {
        width: 50% !important
    }
}

@media (min-width: 769px) {
    .three_columns_img .grid {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex
    }

    .three_columns_img .three_columns_inner .btn {
        max-width: 100%
    }

    .three_columns_img .grid__item {
        margin-bottom: 0
    }
}

@media (max-width: 768px) {
    .top_bottom_padding {
        padding: 40px 0
    }

    .homepage_banner .background-media-text__text {
        text-align: center;
        margin: 0 auto
    }

    .homepage_banner .background-media-text__inner {
        position: absolute;
        top: 180px;
        text-align: center
    }

    .homepage_banner .background-media-text__container {
        height: 95vh
    }

    .homepage_banner .background-media-text__text .homepage_banner_title {
        margin-bottom: 20px;
        line-height: 1.2
    }

    .homepage_banner_main .background-media-text__text h4 {
        max-width: 260px;
        margin: 0 auto 30px !important
    }

    .homepage_banner .background-media-text__text .btn {
        padding: 10px 20px;
        font-size: 16px;
        background: #e21b79;
        color: #fff
    }

    .homepage_banner .homepage_banner_logo_img {
        max-width: 250px;
        margin: 0 auto 10px
    }

    .homepage_banner.collection_banner .homepage_banner_logo_img {
        max-width: 200px;
        margin: 0 auto 40px
    }

    .three_columns_img .three_columns_inner {
        max-width: 500px;
        margin: 0 auto
    }

    .three_columns_img .three_columns_inner .btn {
        margin-top: 25px
    }

    .three_columns_img .three_columns_inner .columns_img_wrapper {
        max-width: 100% !important
    }

    .three_columns_img .three_columns_content .image-wrap.text-spacing {
        margin-bottom: 20px
    }

    .three_columns_img .three_columns_content {
        padding: 20px 0 25px
    }

    .three_columns_img .grid {
        margin-left: -17px
    }

    .three_columns_img .grid__item {
        padding-left: 17px
    }

    .three_columns_img .three_columns_inner h4 {
        padding-bottom: 20px
    }

    .animation_bar .animation_bar_wrapper {
        padding: 10px 0
    }

    .animation_bar .animation_bar_wrapper .image_wrapper {
        max-width: 30px;
        height: 30px;
        margin: 0 15px
    }

    .full_w_image_w_text .full_w_image_w_text_img {
        order: 2
    }

    .full_w_image_w_text .feature-row__text--right {
        margin: 0 auto;
        padding: 0 30px
    }

    .full_w_image_w_text .feature-row__text--right .image_w_text_title {
        margin-bottom: 30px
    }

    .full_w_image_w_text .feature-row__text--right .btn {
        margin-top: 30px
    }

    .full_w_image_w_text .full_w_image_w_text_img {
        margin: 0 0 0 60px
    }

    .homepage_logolist {
        padding-top: 80px
    }

    .product_with_text_inner .product_block {
        margin: 0 auto 40px
    }

    .product_with_text_inner .product_block .product_sales_label {
        width: 80px;
        height: 80px;
        top: -35px;
        left: 25px
    }

    .product_with_text_inner .product_block .product_sales_label p {
        font-size: 14px
    }

    .product_with_text .product_block .product_block_price {
        font-size: 20px
    }

    .product_with_text_inner .product_with_text_content .title {
        margin-bottom: 25px
    }

    .product_with_text_inner .product_with_text_content .btn {
        margin-top: 40px;
        max-width: 210px
    }

    .product_with_text_inner .product_with_text_content .text {
        margin: 0 auto 65px
    }

    .homepage_featured_collection .home_featured_products .grid__item, .homepage_featured_collection .home_featured_products_no_text .grid__item {
        width: 280px;
        flex: 0 0 280px;
        padding-left: 25px
    }

    .homepage_featured_collection .grid_overflow_wrapper {
        padding-top: 70px;
        padding-bottom: 40px
    }

    .homepage_featured_collection .product_block .product_sales_label {
        width: 80px;
        height: 80px;
        top: -40px
    }

    .homepage_featured_collection .product_block .product_sales_label p {
        font-size: 16px
    }

    #shopify-section-template--15735263199421__1659354191bf1dd67d .grid_overflow_wrapper {
        padding-top: 40px
    }

    .homepage_featured_collection .product_block .product_block_price {
        font-size: 16px
    }

    .homepage_featured_collection .left_content_product .product_price_wrapper {
        margin-bottom: 20px;
        justify-content: center
    }

    .homepage_featured_collection .homepage_featured_collection_product {
        padding-top: 45px
    }

    .homepage_featured_collection .left_content_product .left_content_text {
        text-align: center
    }

    .homepage_featured_collection .home_featured_products .grid {
        margin-left: -25px
    }

    .wavy_image_main .wavy_text.top_wavy_img {
        margin-bottom: -12%;
        margin-top: -15%
    }

    .wavy_image_main .wavy_text_wrapper {
        overflow: hidden
    }

    .wavy_image_main .top_wavy_img .wavy_text_wrapper {
        padding: 23% 0 0
    }

    .wavy_image_main .wavy_text.bottom_wavy_img .wavy_text_wrapper {
        padding-top: 13%;
        width: 100%
    }

    .wavy_image_main .animate_curve {
        transform: scale(2.2)
    }

    .animate_curve .upper_svg {
        bottom: 0
    }

    .wavy_image_main .wavy_text_wrapper .wavy_top_img {
        top: 0;
        left: 50%;
        width: 80%;
        transform: translate(-50%)
    }

    .homepage_logolist {
        padding-top: 16%
    }

    .wavy_image_main .wavy_text.bottom_wavy_img.homepage_bottom_wavy_img {
        margin-top: -3%
    }

    .product_list .product_list_inner {
        gap: 8px 5px
    }

    .product_list .product_list_inner .product_list_image_wrapper {
        width: 62px;
        height: 62px
    }

    .product_list .product_list_title_wrapper {
        text-align: left
    }

    .page_learn .hero__text-content {
        display: block;
        top: 120px;
        text-align: center;
        left: 0;
        padding: 0
    }

    .page_learn .slideshow-wrapper .hero__title {
        margin-bottom: 20px
    }

    .icon_with_text .icon_with_text_wrapper {
        flex-wrap: wrap
    }

    .icon_with_text .icon_svg_wrapper svg {
        width: 80px;
        height: 80px;
        margin-bottom: 10px
    }

    .icon_with_text .icon_wrapper {
        max-width: 400px;
        margin: 0 auto -20px
    }

    .icon_with_text .icon_inner {
        margin-bottom: 20px
    }

    .collection_product_list .collection_product_list_header label {
        padding: 12px 22px;
        font-size: 20px
    }

    .collection_product_list .product_block_wrapper {
        margin: 0 0 -40px -22px
    }

    .collection_product_list .product_block_wrapper .product_block {
        padding-left: 22px;
        margin-bottom: 40px
    }

    .collection_product_list .product_block_wrapper .product_title {
        margin-bottom: 20px
    }

    .collection_product_list .product_block_wrapper .product_block .btn {
        padding: 10px 18px 8px;
        font-size: 14px
    }
}

@media (max-width: 600px) {
    .collection_product_list .collection_product_list_header {
        border-radius: 14px
    }

    .collection_product_list .collection_product_list_header label {
        padding: 9px 7px;
        font-size: 16px;
        border-radius: 10px
    }

    .collection_product_list .page-width {
        text-align: center
    }
}

@media (max-width: 500px) {
    .homepage_featured_collection .home_featured_products .grid__item, .homepage_featured_collection .home_featured_products_no_text .grid__item {
        width: 270px;
        flex: 0 0 270px
    }
}

@media (max-width: 390px) {
    .product_block .product_content .product_title {
        font-size: 22px
    }
}

.learn_image_with_text_cover {
    max-width: 1100px
}

.learn_img_text {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap
}

@media (min-width: 769px) {
    .page_learn .hero__image-wrapper .hero__image {
        object-position: right !important
    }

    .feature-row__text--left.learn_img_text_right_text_cover {
        padding-left: 100px
    }

    .feature-row__text--right.learn_img_text_right_text_cover {
        padding-right: 100px
    }
}

@media (max-width: 768px) {
    .learn_img_text_cover_image {
        margin: 0 auto 40px;
        max-width: 200px
    }

    .learn_img_text_right_image {
        order: 1
    }

    .learn_img_text_right_text_cover.feature-row__text--right {
        order: 2
    }

    .learn_wavy_img {
        margin-top: -16%
    }

    .wavy_image_main .wavy_text.learn_wavy_img .wavy_text_wrapper {
        padding-top: 13%
    }

    .learn_img_w_text_text_width {
        max-width: 450px;
        text-align: center !important
    }

    .logo_text {
        margin: 0 auto 40px
    }
}

@media (max-width: 405px) {
    .homepage_banner_main .background-media-text__text .homepage_banner_title {
        font-size: 40px
    }
}

@media (max-width: 380px) {
    .logo_bar_cover.logo__bar .logo-bar__item {
        flex: 0 1 150px
    }
}

.video_list .video_list_inner .video_list_wrapper {
    margin-bottom: 22px
}

.video_list ::-webkit-scrollbar {
    height: 6px
}

.video_list .video_list_wrapper .video-div {
    border: 1px solid #707070;
    border-radius: 16px
}

@media (max-width: 1250px) {
    .video_list .video_list_inner {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        transition: all .8s cubic-bezier(.25, .46, .45, .94);
        transform: translate(0);
        overflow: hidden;
        overflow-x: scroll;
        -webkit-overflow-scrolling: touch;
        margin-bottom: 0;
        padding-bottom: 30px
    }

    .video_list .video_list_inner .video_list_wrapper {
        width: 315px;
        flex: 0 0 315px;
        margin-bottom: 0
    }
}

@media (max-width: 768px) {
    .video_list .video_list_inner .video_list_wrapper {
        width: 250px;
        flex: 0 0 250px
    }
}

.featured_product .product__price {
    font-size: 28px
}

.featured_product .product-block--price {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center
}

@media only screen and (max-width: 600px) {
    .video_list h2 {
        font-size: 32px
    }
}

@media only screen and (min-width: 769px) {
    .featured_product .product__price {
        font-size: 32px
    }

    .featured_product .product-block {
        margin-bottom: 15px
    }
}

.relative {
    position: relative
}

.product_description, .product_list_title {
    font-size: 20px
}

@media screen and (min-width: 768px) {
    .product_description, .product_list_title {
        font-size: 23px
    }

    .product-purchase-options {
        margin-top: 25px;
        display: block
    }
}

.sticky-10 {
    position: sticky;
    top: 100px
}

@media only screen and (max-width: 768px) {
    .header-logo {
        font-size: 2em
    }
}

@media screen and (max-height: 800px) {
    .header-logo img {
        max-height: 90px
    }
}

@media print {
    @page {
        margin: .5cm
    }

    h2, h3, p {
        orphans: 3;
        widows: 3
    }

    h2, h3 {
        page-break-after: avoid
    }

    body, html {
        background-color: #fff
    }

    .site-header__logo-link img:nth-child(2) {
        display: none
    }
}

@media (min-width: 769px) and (max-width: 959px) {
    .footer__item--1494301487049 {
        padding-top: 0 !important
    }
}

@media (min-width: 960px) and (max-width: 1350px) {
    .site-footer .grid {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        flex-wrap: wrap
    }

    .footer__item--1494301487048 {
        padding-top: 40px
    }
}

.full_w_image_w_text .feature-row__text--right.impact_full_w_image_w_text {
    padding-bottom: 0
}

.right_image_text_cover {
    margin-left: 30px
}

.right_image_bottom_text {
    margin: 30px 0 0
}

.top_bottom_padding.impact_top_bottom_padding {
    padding-top: 150px
}

.logo_text {
    color: #fbf5e7;
    text-align: center;
    max-width: 1070px;
    margin: 0 auto 80px
}

.learn_wavy_img {
    margin-top: -12%;
    margin-bottom: -5%
}

.slideshow-wrapper .slideshow__slide .hero__image-wrapper {
    opacity: 1;
    transform: translate(0);
    transition: transform .7s ease, opacity .7s ease
}

@media (max-width: 768px) {
    .full_w_image_w_text .full_w_image_w_text_img.impact_full_w_image_w_text_img {
        margin: 0
    }

    .full_w_image_w_text .feature-row__text--right.impact_full_w_image_w_text {
        padding-bottom: 30px
    }

    .right_image_text_cover {
        margin: 30px 0 0
    }

    .top_bottom_padding.impact_top_bottom_padding {
        padding-top: 80px
    }
}

@media (max-width: 768px) {
    .template-index .site-header:not(.site-header--stuck) .site-header__logo .logo_mobile {
        display: none
    }
}

.blog_banner {
    position: relative
}

.blog_banner .blog_banner_main_image img {
    width: 100%
}

@charset "UTF-8";
/*!
  Impulse, by Archetype Themes
  http://archetypethemes.co
*/
:root {
    --colorBtnPrimary: #d291b5;
    --colorBtnPrimaryLight: #d291b5;
    --colorBtnPrimaryDim: #cb186d;
    --colorBtnPrimaryText: #fbf5e7;
    --colorCartDot: #ffffff;
    --colorLink: #2a317d;
    --colorTextBody: #2a317d;
    --colorPrice: #1c1d1d;
    --colorTextSavings: #C20000;
    --colorSaleTag: #1c1d1d;
    --colorSaleTagText: #ffffff;
    --colorBody: #fbf5e7;
    --colorBodyDim: #f7ecd1;
    --colorFooter: #2a317d;
    --colorFooterText: #ffffff;
    --colorBorder: #e8e8e1;
    --colorNav: #fbf5e7;
    --colorNavText: #000000;
    --colorAnnouncement: #2a317d;
    --colorAnnouncementText: #fbf5e7;
    --colorHeroText: #ffffff;
    --colorModalBg: #353b76;
    --colorImageOverlay: rgba(0, 0, 0, 0);
    --colorImageOverlayOpacity: .1;
    --colorImageOverlayTextShadow: 0;
    --colorSmallImageBg: #ffffff;
    --colorLargeImageBg: #fbf5e7;
    --colorGridOverlay: #000000;
    --colorGridOverlayOpacity: .1;
    --colorDrawers: #fbf5e7;
    --colorDrawersDim: #f7ecd1;
    --colorDrawerBorder: rgba(0, 0, 0, 0);
    --colorDrawerText: #2a317d;
    --colorDrawerTextDark: #171b44;
    --colorDrawerButton: #e21b79;
    --colorDrawerButtonText: #ffffff;
    --grid-gutter: 17px;
    --drawer-gutter: 20px;
    --sizeChartMargin: 25px 0;
    --sizeChartIconMargin: 5px;
    --newsletterReminderPadding: 40px;
    --color-body-text: #2a317d;
    --color-body: #fbf5e7;
    --color-bg: #fbf5e7
}

@media only screen and (min-width: 769px) {
    :root {
        --grid-gutter: 22px;
        --drawer-gutter: 30px
    }
}

@keyframes spin {
    0% {
        transform: rotate(0)
    }
    to {
        transform: rotate(360deg)
    }
}

@keyframes preloading {
    0% {
        transform-origin: 0 50%;
        transform: scaleX(0);
        opacity: 0
    }
    40% {
        transform-origin: 0 50%;
        transform: scaleX(1);
        opacity: 1
    }
    41% {
        transform-origin: 100% 50%;
        transform: scaleX(1);
        opacity: 1
    }
    to {
        transform-origin: 100% 50%;
        transform: scaleX(0);
        opacity: 1
    }
}

@keyframes slideshowBars {
    0% {
        transform: translate(-100%)
    }
    to {
        transform: translate(0)
    }
}

@keyframes grid-product__loading {
    0% {
        opacity: 1
    }
    60% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@keyframes shine {
    to {
        left: -200%
    }
}

@keyframes overlay-on {
    0% {
        opacity: 0
    }
    to {
        opacity: .6
    }
}

@keyframes overlay-off {
    0% {
        opacity: .6
    }
    to {
        opacity: 0
    }
}

@keyframes full-overlay-on {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@keyframes full-overlay-off {
    0% {
        opacity: 1
    }
    to {
        opacity: 0
    }
}

@keyframes modal-open {
    0% {
        opacity: 0;
        transform: translateY(30px)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes modal-closing {
    0% {
        opacity: 1;
        transform: scale(1)
    }
    to {
        opacity: 0;
        transform: scale(.9)
    }
}

@keyframes rise-up {
    0% {
        opacity: 1;
        transform: translateY(120%)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes rise-up-out {
    0% {
        opacity: 1;
        transform: translateY(0)
    }
    to {
        opacity: 1;
        transform: translateY(-120%)
    }
}

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

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

@keyframes zoom-fade {
    0% {
        opacity: 0;
        transform: scale(1.3)
    }
    to {
        opacity: 1;
        transform: scale(1)
    }
}

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

.hero[data-arrows=true] {
    overflow: visible;
    z-index: 5
}

*, :after, :before {
    box-sizing: border-box
}


video {
    display: inline-block;
    vertical-align: baseline
}

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

@media only screen and (max-width: 768px) {
    .grid {
        margin-left: -17px
    }

    html[dir=rtl] .grid {
        margin-left: 0;
        margin-right: -17px
    }
}

html[dir=rtl] .grid {
    margin-left: 0;
    margin-right: -22px
}

.grid--small {
    margin-left: -10px
}

.grid--small .grid__item {
    padding-left: 10px
}

.grid__item {
    float: left;
    padding-left: 22px;
    width: 100%;
    min-height: 1px
}

@media only screen and (max-width: 768px) {
    .grid__item {
        padding-left: 17px
    }

    html[dir=rtl] .grid__item {
        padding-left: 0;
        padding-right: 17px
    }
}

html[dir=rtl] .grid__item {
    float: right;
    padding-left: 0;
    padding-right: 22px
}

.grid--flush-bottom {
    margin-bottom: -22px;
    overflow: auto
}

.grid--flush-bottom > .grid__item {
    margin-bottom: 45px
}

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

.grid--center .grid__item {
    float: none;
    display: inline-block;
    vertical-align: top;
    text-align: left
}

html[dir=rtl] .grid--center .grid__item {
    text-align: right
}

.grid--full {
    margin-left: 0
}

.grid--full > .grid__item {
    padding-left: 0
}

@media only screen and (max-width: 768px) {
    .small--grid--flush {
        margin-left: -2px
    }

    .page-width .small--grid--flush {
        margin-left: -17px;
        margin-right: -15px
    }

    .small--grid--flush > .grid__item {
        padding-left: 2px
    }
}

.one-whole {
    width: 100%
}

.one-half {
    width: 50%
}

.one-third {
    width: 33.33333%
}

@media only screen and (max-width: 768px) {
    .small--one-whole {
        width: 100%
    }

    .small--one-half {
        width: 50%
    }

    .small--one-third {
        width: 33.33333%
    }

    .grid--uniform .small--one-half:nth-of-type(odd), .grid--uniform .small--one-third:nth-of-type(3n+1) {
        clear: both
    }
}

@media only screen and (min-width: 769px) {
    .medium-up--one-whole {
        width: 100%
    }

    .medium-up--one-half {
        width: 50%
    }

    .medium-up--one-third {
        width: 33.33333%
    }

    .grid--uniform .medium-up--one-half:nth-of-type(odd), .grid--uniform .medium-up--one-third:nth-of-type(3n+1) {
        clear: both
    }
}

.hide {
    display: none !important
}

.text-left {
    text-align: left !important
}

.text-right {
    text-align: right !important
}

.text-center {
    text-align: center !important
}

@media only screen and (max-width: 768px) {
    .small--flex {
        display: flex !important
    }

    .small--hide {
        display: none !important
    }

    .small--text-left {
        text-align: left !important
    }

    .small--text-right {
        text-align: right !important
    }

    .small--text-center {
        text-align: center !important
    }
}

@media only screen and (min-width: 769px) {
    .medium-up--hide {
        display: none !important
    }

    .medium-up--text-left {
        text-align: left !important
    }

    .medium-up--text-right {
        text-align: right !important
    }

    .medium-up--text-center {
        text-align: center !important
    }
}

.flex-grid {
    display: flex;
    flex-wrap: wrap;
    flex: 1 1 100%
}

[data-center-text=true] .flex-grid {
    justify-content: center
}

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

.flex-grid__item {
    flex: 0 1 100%;
    display: flex;
    align-items: stretch
}

.flex-grid__item > * {
    flex: 1 1 100%
}

@media only screen and (min-width: 769px) {
    .flex-grid__item--33 {
        flex-basis: 33.33%
    }

    .flex-grid__item--50 {
        flex-basis: 50%
    }
}

html:not(.no-js):not(.tab-outline) :focus {
    outline: 0
}

html {
    touch-action: manipulation
}

html[dir=rtl] {
    direction: rtl
}


.page-width {
    max-width: 1620px;
    margin: 0 auto
}

.page-width--narrow {
    max-width: 1000px
}

@media only screen and (max-width: 768px) {
    .page-width--flush-small {
        padding: 0
    }
}

.page-content {
    padding-top: 40px;
    padding-bottom: 40px
}

@media only screen and (min-width: 769px) {
    .page-content {
        padding-top: 75px;
        padding-bottom: 75px
    }
}

.page-content--top {
    padding-bottom: 0
}

.page-content--bottom {
    padding-top: 0
}

.main-content {
    display: block;
    min-height: 300px
}

@media only screen and (min-width: 769px) {
    .main-content {
        min-height: 700px
    }
}



p {
    margin: 0 0 15px
}

p img {
    margin: 0
}

b {
    font-weight: 700
}

p[data-spam-detection-disclaimer], small {
    font-size: .85em
}

.label, label:not(.variant__button-label):not(.text-label) {
    text-transform: uppercase;
    font-weight: 500
}

label {
    display: block;
    margin-bottom: 10px
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    display: block;
    margin: 0 0 10px
}

@media only screen and (min-width: 769px) {
    .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
        margin: 0 0 15px
    }
}

@media (min-width: 769px) and (max-width: 1100px) {
    .h1, h1 {
        font-size: 58px
    }

    .h3, h3 {
        font-size: 38px
    }

    .h4, h4 {
        font-size: 28px
    }

    .h5, h5 {
        font-size: 26px
    }

    .h6, h6 {
        font-size: 24px
    }
}

.h5, .h6, h5, h6 {
    margin-bottom: 10px
}

@media only screen and (max-width: 768px) {
    .h5, .h6, h5, h6 {
        margin-bottom: 5px
    }
}

.text-spacing, .text-spacing.rte:last-child {
    margin-bottom: 15px
}

.index-section--footer h3 {
    font-size: 1.5em
}

html[dir=rtl] .text-left {
    text-align: right !important
}

html[dir=rtl] .text-right {
    text-align: left !important
}

.icon-and-text {
    display: flex;
    flex-wrap: nowrap;
    align-items: center
}

.icon-and-text .icon {
    flex: 0 0 auto
}

ul {
    margin: 0 0 15px 30px;
    padding: 0;
    text-rendering: optimizeLegibility
}

ul ul {
    margin: 4px 0 5px 20px
}

li {
    margin-bottom: .25em
}

.no-bullets {
    list-style: none outside;
    margin-left: 0
}

.inline-list {
    padding: 0;
    margin: 0
}

.inline-list li {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle
}

th {
    border: 0 none;
    text-align: left;
    padding: 10px 15px;
    background: #fbf5e7;
    background: var(--colorBody)
}

html[dir=rtl] th {
    text-align: right
}

th {
    font-weight: 700
}

.text-link:hover, a:hover {
    color: #2a317d;
    color: var(--colorTextBody)
}

.text-link {
    display: inline;
    border: 0 none;
    background: 0 0;
    padding: 0;
    margin: 0
}

.rte a {
    color: #2a317d;
    color: var(--colorLink)
}

@media (min-width: 769px) and (max-width: 1100px) {
    .btn {
        font-size: 18px
    }
}

@media only screen and (max-width: 768px) {
    .btn, .rte .btn {
        padding: 10px 28px;
        font-size: 16px
    }
}

.btn:hover, .rte .btn:hover {
    color: #fbf5e7;
    color: var(--colorBtnPrimaryText);
    background-color: #e21b79;
    background-color: var(--colorBtnPrimary)
}

.btn[disabled], .rte .btn[disabled] {
    cursor: default;
    color: #b6b6b6;
    background-color: #726c6f
}

.btn[disabled]:hover, .rte .btn[disabled]:hover {
    color: #b6b6b6;
    background-color: #f6f6f6
}

[data-button_style=angled] .btn[disabled]:after, [data-button_style=angled] .btn[disabled]:before, [data-button_style=angled] .rte .btn[disabled]:after, [data-button_style=angled] .rte .btn[disabled]:before {
    background-color: #f6f6f6;
    border-top: 1px solid;
    border-top-color: #b6b6b6;
    border-bottom: 1px solid;
    border-bottom-color: #b6b6b6
}

[data-button_style=angled] .btn, [data-button_style=angled] .rte .btn {
    position: relative;
    border: 0;
    margin-left: 10px;
    margin-right: 10px
}

[data-button_style=angled] .btn:after, [data-button_style=angled] .btn:before, [data-button_style=angled] .rte .btn:after, [data-button_style=angled] .rte .btn:before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    bottom: 0;
    width: 20px;
    transform: skew(-12deg);
    background-color: inherit
}

[data-button_style=angled] .btn:before, [data-button_style=angled] .rte .btn:before {
    left: -6px
}

[data-button_style=angled] .btn:after, [data-button_style=angled] .rte .btn:after {
    right: -6px
}

[data-button_style=angled] .btn.btn--small:before, [data-button_style=angled] .rte .btn.btn--small:before {
    left: -5px
}

[data-button_style=angled] .btn.btn--small:after, [data-button_style=angled] .rte .btn.btn--small:after {
    right: -5px
}

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static), [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static), [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static), [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static) {
    position: relative;
    overflow: hidden;
    transition: background .2s ease 0s
}

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after, [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after, [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after, [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after {
    content: "";
    position: absolute;
    top: 0;
    left: 150%;
    width: 200%;
    height: 100%;
    transform: skew(-20deg);
    background-image: linear-gradient(90deg, transparent, hsla(0, 0%, 100%, .25), transparent)
}

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after, [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after, [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after, [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after {
    animation: shine .75s cubic-bezier(.01, .56, 1, 1)
}

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover, [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover, [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover, [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover {
    background: #e94794;
    background: var(--colorBtnPrimaryLight);
    transition-delay: .25s
}

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active, [data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active, [data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active, [data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active {
    background: #e21b79;
    background: var(--colorBtnPrimary);
    transition-delay: 0s
}

.btn--body, .btn--body:active, .btn--body:hover {
    border: 1px solid;
    border-color: #e8e8e1;
    border-color: var(--colorBorder);
    background-color: #fbf5e7;
    background-color: var(--colorBody);
    color: #2a317d;
    color: var(--colorTextBody)
}

.btn--small {
    padding: 8px 14px;
    background-position: 150% 45%;
    min-width: 90px;
    font-size: calc(var(--typeBaseSize) - 6px);
    font-size: max(calc(var(--typeBaseSize) - 6px), 12px)
}

[data-button_style=angled] .btn--small {
    margin-left: 10px;
    padding-left: 16px;
    padding-right: 16px
}

.btn--full {
    width: 100%;
    transition: none;
    padding: 16px 18px
}

[data-button_style=angled] .btn--full {
    max-width: 94%
}

.btn--loading {
    position: relative;
    text-indent: -9999px;
    background-color: #cb186d;
    background-color: var(--colorBtnPrimaryDim);
    color: #cb186d;
    color: var(--colorBtnPrimaryDim)
}

.btn--loading:active, .btn--loading:hover {
    background-color: #cb186d;
    background-color: var(--colorBtnPrimaryDim);
    color: #cb186d;
    color: var(--colorBtnPrimaryDim)
}

.btn--loading:before {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -12px;
    margin-top: -12px;
    border-radius: 50%;
    border: 3px solid;
    border-color: #fbf5e7;
    border-color: var(--colorBtnPrimaryText);
    border-top-color: transparent;
    animation: spin 1s linear infinite
}

[data-button_style=angled] .btn--loading:before {
    left: 50%;
    top: 50%;
    width: 24px;
    height: 24px;
    transform: none;
    border: 3px solid;
    border-color: #fbf5e7 !important;
    border-color: var(--colorBtnPrimaryText) !important;
    border-top-color: transparent !important
}

[data-button_style=angled] .btn--loading:after {
    background-color: #cb186d;
    background-color: var(--colorBtnPrimaryDim)
}

@media only screen and (max-width: 768px) {
    .btn--full {
        padding: 13px 15px 10px
    }
}

img {
    border: 0 none;
    display: block
}

svg:not(:root) {
    overflow: hidden
}

img {
    max-width: 100%
}

img[data-sizes=auto] {
    display: block;
    width: 100%
}

.video-wrapper {
    position: relative;
    overflow: hidden;
    max-width: 100%;
    padding-bottom: 56.25%;
    height: 0;
    height: auto
}

.video-wrapper video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.inline {
    display: inline
}

.hidden-label {
    clip: rect(0, 0, 0, 0);
    overflow: hidden;
    position: absolute;
    height: 1px;
    width: 1px
}

label[for] {
    cursor: pointer
}

small {
    display: block
}

.selector-wrapper label {
    margin-right: 10px
}

.selector-wrapper + .selector-wrapper {
    margin-top: 15px
}

.icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    fill: currentColor
}

.no-svg .icon {
    display: none
}

.icon--full-color {
    fill: initial
}

svg.icon:not(.icon--full-color) g, svg.icon:not(.icon--full-color) path {
    fill: inherit;
    stroke: inherit
}

.icon-email g, .icon-email path, .icon-ribbon g, .icon-ribbon path, .icon-tag g, .icon-tag path {
    fill: none !important;
    stroke-width: var(--iconWeight);
    stroke: currentColor !important;
    stroke-linecap: var(--iconLinecaps);
    stroke-linejoin: var(--iconLinecaps)
}

.animation-delay-20 {
    animation-delay: 1.2s
}

.animation-delay-19 {
    animation-delay: 1.14s
}

.animation-delay-18 {
    animation-delay: 1.08s
}

.animation-delay-17 {
    animation-delay: 1.02s
}

.animation-delay-16 {
    animation-delay: .96s
}

.animation-delay-15 {
    animation-delay: .9s
}

.animation-delay-14 {
    animation-delay: .84s
}

.animation-delay-13 {
    animation-delay: .78s
}

.animation-delay-12 {
    animation-delay: .72s
}

.animation-delay-11 {
    animation-delay: .66s
}

.animation-delay-10 {
    animation-delay: .6s
}

.animation-delay-9 {
    animation-delay: .54s
}

.animation-delay-8 {
    animation-delay: .48s
}

.animation-delay-7 {
    animation-delay: .42s
}

.animation-delay-6 {
    animation-delay: .36s
}

.animation-delay-5 {
    animation-delay: .3s
}

.animation-delay-4 {
    animation-delay: .24s
}

.animation-delay-3 {
    animation-delay: .18s
}

.animation-delay-2 {
    animation-delay: .12s
}

.appear-delay-20 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) 1.3s, opacity 1s cubic-bezier(.165, .84, .44, 1) 1.4s
}

.appear-delay-19 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) 1.24s, opacity 1s cubic-bezier(.165, .84, .44, 1) 1.34s
}

.appear-delay-18 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) 1.18s, opacity 1s cubic-bezier(.165, .84, .44, 1) 1.28s
}

.appear-delay-17 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) 1.12s, opacity 1s cubic-bezier(.165, .84, .44, 1) 1.22s
}

.appear-delay-16 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) 1.06s, opacity 1s cubic-bezier(.165, .84, .44, 1) 1.16s
}

.appear-delay-15 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) 1s, opacity 1s cubic-bezier(.165, .84, .44, 1) 1.1s
}

.appear-delay-14 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .94s, opacity 1s cubic-bezier(.165, .84, .44, 1) 1.04s
}

.appear-delay-13 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .88s, opacity 1s cubic-bezier(.165, .84, .44, 1) .98s
}

.appear-delay-12 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .82s, opacity 1s cubic-bezier(.165, .84, .44, 1) .92s
}

.appear-delay-11 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .76s, opacity 1s cubic-bezier(.165, .84, .44, 1) .86s
}

.appear-delay-10 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .7s, opacity 1s cubic-bezier(.165, .84, .44, 1) .8s
}

.appear-delay-9 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .64s, opacity 1s cubic-bezier(.165, .84, .44, 1) .74s
}

.appear-delay-8 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .58s, opacity 1s cubic-bezier(.165, .84, .44, 1) .68s
}

.appear-delay-7 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .52s, opacity 1s cubic-bezier(.165, .84, .44, 1) .62s
}

.appear-delay-6 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .46s, opacity 1s cubic-bezier(.165, .84, .44, 1) .56s
}

.appear-delay-5 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .4s, opacity 1s cubic-bezier(.165, .84, .44, 1) .5s
}

.appear-delay-4 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .34s, opacity 1s cubic-bezier(.165, .84, .44, 1) .44s
}

.appear-delay-3 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .28s, opacity 1s cubic-bezier(.165, .84, .44, 1) .38s
}

.appear-delay-2 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .22s, opacity 1s cubic-bezier(.165, .84, .44, 1) .32s
}

.appear-delay-1 {
    transition: transform 1s cubic-bezier(.165, .84, .44, 1) .1s, opacity 1s cubic-bezier(.165, .84, .44, 1) .2s
}

.image-wrap {
    overflow: hidden
}

.image-wrap img:not([role=presentation]) {
    display: block
}

.image-wrap img:not([role=presentation]), .image-wrap svg {
    opacity: 0
}

.no-js .image-wrap img:not([role=presentation]), .no-js .image-wrap svg {
    opacity: 1
}

.aos-animate .image-wrap svg {
    animation: fade-in 1s cubic-bezier(.26, .54, .32, 1) 0s forwards
}

[data-aos=row-of-3].aos-animate:nth-child(3n+2) .image-wrap img {
    animation-delay: .15s
}

[data-aos=row-of-3].aos-animate:nth-child(3n+3) .image-wrap img {
    animation-delay: .3s
}

[data-aos=row-of-4].aos-animate:nth-child(4n+2) .image-wrap img {
    animation-delay: .12s
}

[data-aos=row-of-4].aos-animate:nth-child(4n+3) .image-wrap img {
    animation-delay: .24s
}

[data-aos=row-of-4].aos-animate:nth-child(4n+4) .image-wrap img {
    animation-delay: .36s
}

[data-aos=row-of-5].aos-animate:nth-child(5n+2) .image-wrap img {
    animation-delay: 75ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+3) .image-wrap img {
    animation-delay: .15s
}

[data-aos=row-of-5].aos-animate:nth-child(5n+4) .image-wrap img {
    animation-delay: 225ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+5) .image-wrap img {
    animation-delay: .3s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+2) .image-wrap img {
    animation-delay: 50ms
}

[data-aos=row-of-6].aos-animate:nth-child(6n+3) .image-wrap img {
    animation-delay: .1s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+4) .image-wrap img {
    animation-delay: .15s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+5) .image-wrap img {
    animation-delay: .2s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+6) .image-wrap img {
    animation-delay: .25s
}

[data-aos=row-of-3].aos-animate:nth-child(3n+2) .collection-image {
    animation-delay: .15s
}

[data-aos=row-of-3].aos-animate:nth-child(3n+3) .collection-image {
    animation-delay: .3s
}

[data-aos=row-of-4].aos-animate:nth-child(4n+2) .collection-image {
    animation-delay: .12s
}

[data-aos=row-of-4].aos-animate:nth-child(4n+3) .collection-image {
    animation-delay: .24s
}

[data-aos=row-of-4].aos-animate:nth-child(4n+4) .collection-image {
    animation-delay: .36s
}

[data-aos=row-of-5].aos-animate:nth-child(5n+2) .collection-image {
    animation-delay: 75ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+3) .collection-image {
    animation-delay: .15s
}

[data-aos=row-of-5].aos-animate:nth-child(5n+4) .collection-image {
    animation-delay: 225ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+5) .collection-image {
    animation-delay: .3s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+2) .collection-image {
    animation-delay: 50ms
}

[data-aos=row-of-6].aos-animate:nth-child(6n+3) .collection-image {
    animation-delay: .1s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+4) .collection-image {
    animation-delay: .15s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+5) .collection-image {
    animation-delay: .2s
}

[data-aos=row-of-6].aos-animate:nth-child(6n+6) .collection-image {
    animation-delay: .25s
}

.loading:after, .loading:before {
    content: "";
    position: absolute;
    width: 100px;
    height: 3px;
    background: #fbf5e7;
    background: var(--colorBody);
    left: 50%;
    top: 50%;
    margin: -1px 0 0 -50px;
    z-index: 4;
    opacity: 0
}

.no-js .loading:after, .no-js .loading:before {
    display: none
}

.loading:before {
    background: #2a317d;
    background: var(--colorTextBody);
    opacity: 1
}

.loading:after {
    opacity: 0;
    animation: preloading .5s ease .3s infinite
}

.appear-animation {
    opacity: 0;
    transform: translateY(60px)
}

[data-disable-animations=true] .appear-animation {
    opacity: 1;
    transform: none
}

.site-footer .footer__collapsible .footer_btn .btn {
    padding: 10px 35px !important
}

.site-footer .footer__collapsible {
    font-family: Rubik, sans-serif;
    font-weight: 300;
    font-size: 18px
}

@media only screen and (min-width: 769px) {
    .site-footer {
        padding-top: 60px;
        padding-bottom: 60px
    }

    .site-footer .footer__collapsible {
        font-size: 20px
    }
}

@media only screen and (max-width: 768px) {
    [data-center-text=true] .site-footer {
        text-align: center
    }

    .site-footer {
        padding-bottom: 0
    }

    .site-footer .grid__item {
        padding-bottom: 15px
    }

    .site-footer .grid__item:first-child {
        padding-top: 7.5px
    }

    .site-footer .grid__item:last-child:after {
        display: none
    }
}

.site-footer a {
    color: #fff;
    color: var(--colorFooterText)
}

.footer__small-text {
    font-size: max(calc(var(--typeBaseSize) * .7), 12px);
    padding: 7.5px 0;
    margin: 0;
    text-align: center
}

ul + .footer__small-text {
    padding-top: 15px
}

.footer__section {
    margin-bottom: 15px
}

@media only screen and (min-width: 769px) {
    .footer__section {
        margin-top: 30px;
        margin-bottom: 0
    }
}

@media only screen and (min-width: 769px) {
    .footer__item-padding {
        padding-right: 60px
    }
}

.footer__title {
    font-family: Rubik, sans-serif;
    font-weight: 600;
    font-size: 20px;
    text-transform: uppercase
}

@media only screen and (min-width: 769px) {
    .footer__title {
        font-size: 25px;
        margin-bottom: 20px
    }
}

@media only screen and (max-width: 768px) {
    [data-center-text=true] .footer__title {
        text-align: left
    }
}

.site-footer__linklist {
    margin: 0
}

.site-footer__linklist a {
    color: currentColor;
    display: inline-block;
    padding: 4px 0
}

.footer__logo {
    margin: 15px 0
}

@media only screen and (min-width: 769px) {
    .footer__logo {
        margin: 0 0 20px
    }
}

.footer__logo a {
    display: block
}

.footer__social li {
    display: inline-block;
    margin: 0 15px 15px 0
}

.footer__social a {
    display: block
}

.footer__social .icon {
    width: 22px;
    height: 22px
}

@media only screen and (min-width: 769px) {
    .footer__social .icon {
        width: 24px;
        height: 24px
    }
}

.collapsible-content__inner p a:after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0%;
    border-bottom: 2px solid;
    border-bottom-color: #fff;
    border-bottom-color: var(--colorFooterText);
    transition: width .5s ease
}

.collapsible-content__inner p a {
    position: relative;
    text-decoration: none;
    border-bottom: 2px solid;
    border-color: #ffffff1a
}

.collapsible-content__inner p a:focus:after, .collapsible-content__inner p a:hover:after {
    width: 100%
}

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

.rte {
    margin-bottom: 7.5px
}

@media only screen and (min-width: 769px) {
    .rte {
        margin-bottom: 15px
    }
}

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

.rte + .rte {
    margin-top: 30px
}

.rte p, .rte ul {
    margin-bottom: 15px
}

.rte p:last-child, .rte ul:last-child {
    margin-bottom: 0
}

.rte ul ul {
    margin-bottom: 0
}

.rte h1, .rte h2, .rte h3, .rte h4, .rte h5, .rte h6 {
    margin-top: 60px;
    margin-bottom: 25px
}

.rte h1:first-child, .rte h2:first-child, .rte h3:first-child, .rte h4:first-child, .rte h5:first-child, .rte h6:first-child {
    margin-top: 0
}

.rte h1 a, .rte h2 a, .rte h3 a, .rte h4 a, .rte h5 a, .rte h6 a {
    text-decoration: none
}

.rte meta:first-child + h1, .rte meta:first-child + h2, .rte meta:first-child + h3, .rte meta:first-child + h4, .rte meta:first-child + h5, .rte meta:first-child + h6 {
    margin-top: 0
}

.rte > div {
    margin-bottom: 15px
}

.rte > div:last-child {
    margin-bottom: 0
}

.rte li {
    margin-bottom: 0
}

.rte--block {
    margin-bottom: 8px
}

@media only screen and (min-width: 769px) {
    .rte--block {
        margin-bottom: 12px
    }
}

.rte-setting > p:last-child {
    margin-bottom: 0
}

.rte a, .rte-setting a {
    text-decoration: none
}

.rte img, .rte-setting img {
    height: auto
}

.rte a:not(.rte__image):not(.btn):not(.spr-summary-actions-newreview), .rte-setting a:not(.rte__image):not(.btn):not(.spr-summary-actions-newreview) {
    text-decoration: none;
    border-bottom: 1px solid;
    border-bottom-color: #2a317d26;
    position: relative;
    display: inline-block
}

.rte a:not(.btn):focus:after, .rte a:not(.btn):hover:after, .rte-setting a:not(.btn):focus:after, .rte-setting a:not(.btn):hover:after {
    width: 100%
}

.rte a.rte__image:after, .rte-setting a.rte__image:after {
    content: none
}

.text-center .rte ul, .text-center.rte ul {
    list-style-position: inside;
    margin-left: 0
}

.header-item {
    display: flex;
    align-items: center;
    justify-content: center
}

.header-item--logo-split .header-item {
    width: 33.33%
}

.header-item--logo-split {
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex: 1 1 100%
}

.header-item--logo-split .header-item:not(.header-item--logo) {
    text-align: center
}

.header-item--split-left {
    justify-content: flex-end
}

.site-header {
    position: relative;
    background: #fbf5e7;
    background: var(--colorNav);
    padding: 16px 0
}

.site-header__logo {
    position: relative;
    margin: 0;
    display: block;
    font-size: 30px;
    z-index: 6
}

@media only screen and (min-width: 769px) {
    .text-center .site-header__logo {
        padding-right: 0;
        margin: 10px auto
    }
}

.site-header__logo a {
    max-width: 100%
}

.site-header__logo a, .site-header__logo a:hover {
    text-decoration: none
}

.site-header__logo img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.site-header__logo-link {
    display: flex;
    position: relative;
    align-items: center;
    color: #000;
    color: var(--colorNavText)
}

.site-header__logo-link:hover {
    color: #000;
    color: var(--colorNavText)
}

@media only screen and (max-width: 768px) {
    .site-header__logo a {
        width: 150px !important
    }

    .site-header__logo-link {
        margin: 0 auto
    }
}

.header-sticky-wrapper {
    position: relative;
    z-index: 28
}

.section-header {
    margin-bottom: 30px
}

@media only screen and (min-width: 769px) {
    .section-header {
        margin-bottom: 50px
    }
}

[data-type_headers_align_text=true] .section-header {
    text-align: center
}

.section-header--flush {
    margin-bottom: 0
}

.section-header--with-link {
    display: flex;
    align-items: center
}

.section-header--hero {
    position: relative;
    flex: 1 1 100%;
    color: #fff;
    color: var(--colorHeroText);
    margin-bottom: 0
}

.section-header--hero a {
    color: #fff;
    color: var(--colorHeroText)
}

.section-header__title {
    margin-bottom: 0
}

.section-header--with-link .section-header__title {
    flex: 1 1 auto
}

@media only screen and (min-width: 769px) {
    .section-header--hero .section-header__title {
        font-size: calc(var(--typeHeaderSize) * 1.45)
    }
}

.section-header__link {
    flex: 0 1 auto;
    margin-top: 15px
}

.section-header--with-link .section-header__link {
    margin-top: 0
}

.section-header--404 {
    padding-top: 80px
}

.section-header p {
    margin: 10px 0
}

.collapsible-content {
    transition: opacity .3s cubic-bezier(.25, .46, .45, .94), height .3s cubic-bezier(.25, .46, .45, .94)
}

.collapsible-content--all {
    visibility: hidden;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    opacity: 0;
    height: 0
}

.collapsible-content--all .collapsible-content__inner {
    transform: translateY(40px)
}

@media only screen and (max-width: 768px) {
    .collapsible-content--small {
        visibility: hidden;
        overflow: hidden;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        opacity: 0;
        height: 0
    }

    .collapsible-content--small .collapsible-content__inner {
        transform: translateY(40px)
    }
}

.collapsible-content__inner {
    transition: transform .3s cubic-bezier(.25, .46, .45, .94)
}

.collapsible-content--sidebar {
    visibility: hidden;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    opacity: 0;
    height: 0
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: .5
}

:-moz-placeholder {
    color: inherit;
    opacity: .5
}

:-ms-input-placeholder {
    color: inherit;
    opacity: .5
}

::-ms-input-placeholder {
    color: inherit;
    opacity: 1
}

.index-section--small {
    margin: 18px 0
}

.index-section + .index-section, .index-section + .index-section--hidden, .main-content + .index-section {
    margin-top: 0
}

.index-section--flush {
    margin: 0
}

@media only screen and (min-width: 769px) {
    .index-section--small {
        margin: 30px 0
    }
}

.feature-row-wrapper {
    overflow: hidden;
    direction: ltr
}

.feature-row {
    margin: 0 auto;
    display: flex;
    justify-content: space-between
}

@media only screen and (min-width: 1050px) {
    .feature-row {
        margin: 0 6%
    }
}

@media only screen and (max-width: 768px) {
    .feature-row {
        flex-direction: column;
        margin: 0
    }
}

@media only screen and (max-width: 768px) {
    .feature-row__item {
        flex: 1 1 auto;
        max-width: 100%;
        min-width: 100%
    }
}

.feature-row__image {
    display: block;
    margin: 0 auto;
    order: 1
}

@media only screen and (min-width: 769px) {
    .feature-row__image {
        order: 2
    }
}

.feature-row__text {
    flex: 0 1 43%;
    padding: 0
}

@media only screen and (max-width: 768px) {
    .feature-row__text {
        order: 2;
        margin-top: 0;
        padding: 30px 20px 0
    }
}

.feature-row__text .rte {
    margin: 0
}

.feature-row__text .btn {
    margin-top: 25px
}

@media only screen and (min-width: 769px) {
    .feature-row__text--left {
        padding-left: 60px
    }

    .feature-row__text--right {
        padding-right: 60px
    }
}

.product-block {
    margin-bottom: 10px
}

.product-block--header + .product-block--price {
    margin-top: -20px
}

.product_description {
    margin-top: 10px;
    margin-bottom: 30px
}

.theme-block {
    margin-bottom: 30px
}

.theme-block:last-child {
    margin-bottom: 0
}

.slideshow-wrapper {
    position: relative
}

.slideshow__slide {
    display: none;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden
}

.slideshow__slide:first-child {
    display: block
}

.hero {
    position: relative;
    overflow: hidden;
    background: #fbf5e7;
    background: var(--colorLargeImageBg)
}

.hero__image-wrapper, .hero__media, .hero__media-container {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%
}

.hero__image {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    -o-object-fit: cover;
    object-fit: cover
}

.hero__media {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top;
    z-index: 1
}

.hero__image-wrapper--no-overlay:before {
    content: none
}

.hero__media video {
    width: 100%;
    height: 100%;
    pointer-events: none
}

.hero__media video {
    position: relative;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover"
}

.hero__slide-link {
    display: block;
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: 5
}

.hero__slide-link:hover ~ .hero__text-wrap .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse) {
    background: #e94794;
    background: var(--colorBtnPrimaryLight);
    transition-delay: .25s
}

.hero__slide-link:hover ~ .hero__text-wrap .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):after {
    animation: shine .75s cubic-bezier(.01, .56, 1, 1)
}

[data-button_style=angled] .hero__slide-link:hover ~ .hero__text-wrap .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):after {
    animation: none
}

.hero__text-wrap {
    position: relative;
    height: 100%;
    color: #fff;
    color: var(--colorHeroText)
}

.hero__text-wrap .page-width {
    display: table;
    width: 100%;
    height: 100%
}

.hero__text-content {
    position: relative;
    padding: 15px 0;
    z-index: 4
}

@media only screen and (min-width: 769px) {
    .hero__text-content {
        padding: 45px 0
    }
}

[data-dots=true] .hero__text-content {
    padding-bottom: 40px
}

.hero__title {
    display: block;
    margin-bottom: 0
}

.hero__link {
    position: relative;
    display: block
}

.hero__link .btn {
    margin: 4px 3px 2px 0
}

@media only screen and (min-width: 769px) {
    .hero__link .btn {
        margin-right: 5px;
        margin-top: 0
    }
}

[data-button_style=angled] .hero__link .btn {
    margin-left: 12px
}

.hero__link .btn + .btn {
    margin-left: 2px
}

@media only screen and (min-width: 769px) {
    .hero__link .btn + .btn {
        margin-left: 10px
    }
}

[data-button_style=angled] .hero__link .btn + .btn {
    margin-left: 12px
}

.hero__text-content {
    display: table-cell
}

.hero__text-content .hero__link {
    margin-top: 7.5px
}

@media only screen and (min-width: 769px) {
    .hero__text-content .hero__link {
        margin-top: 15px
    }
}

.hero--450px {
    height: 292.5px
}

.hero--550px {
    height: 357.5px
}

.hero--650px {
    height: 422.5px
}

.hero--750px {
    height: 487.5px
}

@media only screen and (min-width: 769px) {
    .hero--450px {
        height: 450px
    }

    .hero--550px {
        height: 550px
    }

    .hero--650px {
        height: 650px
    }

    .hero--750px {
        height: 750px
    }
}

@media only screen and (max-width: 768px) {
    .hero--mobile--auto[data-mobile-natural=true] {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        height: auto
    }

    .hero--mobile--250px[data-mobile-natural=false] {
        height: 250px
    }

    .hero--mobile--300px[data-mobile-natural=false] {
        height: 300px
    }

    .hero--mobile--400px[data-mobile-natural=false] {
        height: 400px
    }

    .hero--mobile--500px[data-mobile-natural=false] {
        height: 500px
    }
}

.slideshow__slide:not(.animate-out) .hero__image, [data-aos=hero__animation]:not(.animate-out) .hero__image {
    opacity: 0;
    transition: none
}

.slideshow__slide .hero__image-wrapper, [data-aos=hero__animation] .hero__image-wrapper {
    transform: translate(200px);
    opacity: 0;
    transition: none
}

.no-js .hero__image, .no-js .hero__image-wrapper {
    opacity: 1 !important;
    transform: none
}

.collection-content {
    padding-top: 22.5px
}

@media only screen and (min-width: 769px) {
    .collection-content {
        padding-top: 45px
    }
}

.rte.collection__description {
    margin-bottom: 45px
}

.collection-hero {
    position: relative;
    width: 100%;
    height: 250px;
    overflow: hidden;
    background: #fbf5e7;
    background: var(--colorLargeImageBg)
}

@media only screen and (min-width: 769px) {
    .collection-hero {
        height: 420px
    }
}

.collection-hero__content {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    display: flex;
    align-items: flex-end;
    padding: 15px 0;
    z-index: 1
}

@media only screen and (min-width: 769px) {
    .collection-hero__content {
        padding: 30px 0
    }
}

[data-type_headers_align_text=true] .collection-hero__content {
    align-items: center
}

.collection-hero__content .page-width {
    width: 100%
}

.collection-hero__content:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: auto;
    background-color: #0000;
    background-color: var(--colorImageOverlay);
    opacity: .1;
    opacity: var(--colorImageOverlayOpacity);
    display: block
}

.collection-hero__content .section-header {
    opacity: 0;
    animation: fade-in .5s 1s forwards
}

[data-disable-animations=true] .collection-hero__content .section-header {
    opacity: 1;
    animation: none
}

.collection-hero__image {
    opacity: 0
}

.no-js .collection-hero__image {
    opacity: 1
}

.collection-sidebar {
    padding-right: 10px;
    margin-bottom: 20px
}

@media only screen and (min-width: 769px) {
    .grid__item--sidebar {
        position: sticky;
        top: 10px;
        max-height: 90vh;
        overflow-y: auto
    }
}

@media only screen and (min-width: 769px) {
    .site-header__logo {
        text-align: left
    }
}

.header-logo a, .site-header__logo a {
    color: #000;
    color: var(--colorNavText)
}

.tag-list__header {
    text-align: left
}

.tag-list .tag-list {
    margin-left: 15px
}

.tag-list a, .tag-list label {
    cursor: pointer;
    display: block;
    line-height: 1.4
}

.tag-list label:hover {
    text-decoration: underline;
    text-underline-offset: 2px
}

.grid-product {
    margin-bottom: 15px
}

@media only screen and (min-width: 769px) {
    .grid-product {
        margin-bottom: 30px
    }
}

@media only screen and (max-width: 768px) {
    .grid-overflow-wrapper .grid-product {
        margin-bottom: 0
    }
}

.grid-product__content {
    position: relative;
    text-align: left
}

html[dir=rtl] .grid-product__content {
    text-align: right
}

.grid-product__title--heading {
    font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
    font-weight: var(--typeHeaderWeight);
    letter-spacing: var(--typeHeaderSpacing);
    line-height: var(--typeHeaderLineHeight)
}

[data-type_header_capitalize=true] .grid-product__title--heading {
    text-transform: uppercase
}

.grid-product__title--heading {
    font-size: calc(var(--typeBaseSize) + 2px);
    line-height: 1
}

[data-type_product_capitalize=true] .grid-product__title {
    text-transform: uppercase;
    font-size: calc(var(--typeBaseSize) - 2px)
}

@media only screen and (max-width: 768px) {
    [data-type_product_capitalize=true] .grid-product__title {
        font-size: calc(var(--typeBaseSize) - 3px)
    }
}

.grid-product__title {
    word-break: break-word;
    -webkit-hyphens: auto;
    hyphens: auto
}

.grid-product__link {
    display: block
}

.grid-product__link--inline {
    display: flex
}

.grid-product__link--inline .grid-product__meta {
    text-align: left
}

.grid-product__image {
    display: block;
    margin: 0 auto;
    width: 100%
}

.grid-product__color-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50%;
    opacity: 0;
    transition: opacity .4s ease;
    background-color: #fbf5e7;
    background-color: var(--colorBody)
}

[data-center-text=true] .grid-product__meta {
    text-align: center
}

.grid-product__meta {
    position: relative;
    padding: 10px 0 6px;
    line-height: 1
}

@media only screen and (max-width: 768px) {
    .small--grid--flush .grid-product__meta {
        padding-left: 10px;
        padding-right: 10px
    }
}

.grid-product__price {
    font-size: calc(var(--typeBaseSize) * .85);
    color: #1c1d1d;
    color: var(--colorPrice);
    margin-top: 5px
}

.grid-product__price--original {
    text-decoration: line-through;
    margin-right: 5px
}

.grid-product__tag {
    font-size: calc(var(--typeBaseSize) * .65);
    position: absolute;
    top: 0;
    right: 0;
    line-height: 1;
    padding: 6px 5px 6px 7px;
    background-color: #e21b79;
    background-color: var(--colorBtnPrimary);
    color: #fbf5e7;
    color: var(--colorBtnPrimaryText);
    z-index: 2;
    transition: opacity .4s ease
}

@media only screen and (min-width: 769px) {
    .grid-product__tag {
        font-size: calc(var(--typeBaseSize) * .85);
        padding: 7px 7px 7px 9px
    }
}

@media only screen and (max-width: 768px) {
    .grid-overflow-wrapper {
        overflow: hidden;
        overflow-x: scroll;
        -webkit-overflow-scrolling: touch
    }

    .grid-overflow-wrapper .grid {
        white-space: nowrap;
        display: flex
    }

    .grid-overflow-wrapper .grid__item {
        width: 39vw;
        flex: 0 0 39vw;
        display: inline-block;
        float: none;
        white-space: normal
    }

    .grid-overflow-wrapper .grid__item:first-child {
        margin-left: 17px
    }

    .grid-overflow-wrapper .grid__item:last-child:after {
        content: "";
        display: inline-block;
        width: 100%;
        margin-right: 17px
    }

    .grid-overflow-wrapper .grid__item--view-all {
        align-self: center
    }

    .grid-overflow-wrapper .grid-product__price, .grid-overflow-wrapper .grid__item {
        font-size: .75rem
    }

    [data-aos=overflow__animation] {
        transform: translate(100vw);
        transition: all .8s cubic-bezier(.25, .46, .45, .94)
    }

    [data-aos=overflow__animation].aos-animate {
        transform: translate(0)
    }

    [data-disable-animations=true] [data-aos=overflow__animation] {
        transform: none;
        transition: none
    }
}

@keyframes inventory-pulse {
    0% {
        opacity: .5
    }
    to {
        transform: scale(2.5);
        opacity: 0
    }
}

.collection-item {
    position: relative;
    display: block;
    margin-bottom: 17px;
    overflow: hidden
}

@media only screen and (min-width: 769px) {
    .collection-item {
        margin-bottom: 22px
    }
}

.collection-item:hover .collection-image {
    transform: scale(1.03);
    transition: all .8s ease
}

[data-disable-animations=true] .collection-item:hover .collection-image {
    transform: none;
    transition: none
}

.collection-item:not(.collection-item--below):after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: auto;
    background-color: #000;
    background-color: var(--colorGridOverlay);
    opacity: .1;
    opacity: var(--colorGridOverlayOpacity);
    transition: opacity .8s ease
}

.collection-item:not(.collection-item--below):hover:after {
    opacity: .25;
    opacity: calc(var(--colorGridOverlayOpacity) + .15)
}

.collection-image {
    position: relative;
    transition: transform .3s ease
}

.collection-image img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.collection-item__title {
    display: block;
    z-index: 2;
    font-size: calc(var(--typeCollectionTitle) * .8);
    line-height: 1em
}

@media only screen and (min-width: 769px) {
    .collection-item__title {
        font-size: var(--typeCollectionTitle)
    }
}

[data-type_product_capitalize=true] .collection-item__title span {
    text-transform: uppercase;
    font-size: .8em
}

.collection-item__title--heading {
    font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
    font-weight: var(--typeHeaderWeight);
    letter-spacing: var(--typeHeaderSpacing);
    line-height: var(--typeHeaderLineHeight)
}

[data-type_header_capitalize=true] .collection-item__title--heading {
    text-transform: uppercase
}

.collection-item__title--bottom-center, .collection-item__title--center, .collection-item__title--top-center {
    text-align: center
}

.collection-item__title--bottom-right, .collection-item__title--top-right .collection-item__title--right {
    text-align: right
}

.collection-item__title--center[class*=collection-item__title--overlaid], .collection-item__title--left[class*=collection-item__title--overlaid], .collection-item__title--right[class*=collection-item__title--overlaid] {
    top: 50%;
    transform: translateY(-50%)
}

.collection-item__title--top-center[class*=collection-item__title--overlaid], .collection-item__title--top-left[class*=collection-item__title--overlaid], .collection-item__title--top-right[class*=collection-item__title--overlaid] {
    top: 10px
}

@media only screen and (min-width: 769px) {
    .collection-item__title--top-center[class*=collection-item__title--overlaid], .collection-item__title--top-left[class*=collection-item__title--overlaid], .collection-item__title--top-right[class*=collection-item__title--overlaid] {
        top: 18px
    }
}

.collection-item__title--bottom-center[class*=collection-item__title--overlaid], .collection-item__title--bottom-left[class*=collection-item__title--overlaid], .collection-item__title--bottom-right[class*=collection-item__title--overlaid] {
    bottom: 10px
}

@media only screen and (min-width: 769px) {
    .collection-item__title--bottom-center[class*=collection-item__title--overlaid], .collection-item__title--bottom-left[class*=collection-item__title--overlaid], .collection-item__title--bottom-right[class*=collection-item__title--overlaid] {
        bottom: 18px
    }
}

.custom-content {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    width: auto;
    margin-bottom: -22px;
    margin-left: -22px
}

@media only screen and (max-width: 768px) {
    .custom-content {
        margin-bottom: -17px;
        margin-left: -17px
    }
}

.custom__item {
    flex: 0 0 auto;
    margin-bottom: 22px;
    padding-left: 22px;
    max-width: 100%
}

@media only screen and (max-width: 768px) {
    .custom__item {
        flex: 0 0 auto;
        padding-left: 17px;
        margin-bottom: 17px
    }

    .custom__item.small--one-half {
        flex: 1 0 50%;
        max-width: 400px;
        margin-left: auto;
        margin-right: auto
    }
}

.custom__item img {
    display: block
}

.custom__item-inner {
    position: relative;
    display: inline-block;
    text-align: left;
    max-width: 100%;
    width: 100%
}

.custom__item-inner--html, .custom__item-inner--video {
    display: block
}

.custom__item-inner--image {
    width: 100%
}

.custom__item-inner--html img {
    display: block;
    margin: 0 auto
}

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

.align--center {
    align-self: center;
    text-align: center
}

.align--bottom-left {
    align-self: flex-end
}

.align--bottom-right {
    align-self: flex-end;
    text-align: right
}

@media only screen and (min-width: 769px) {
    .logo__bar .logo-bar {
        flex-wrap: unset
    }

    .logo-bar__item {
        flex: 0 1 160px;
        margin: 0 20px 30px
    }
}

@media (max-width: 768px) {
    .logo__bar .logo-bar__item_title .title {
        font-size: 16px
    }

    .logo__bar .logo-bar__item {
        flex: unset;
        width: 33.33%;
        margin: 0 0 30px
    }

    .logo__bar .logo-bar__item_image {
        max-width: 50px
    }
}

.logo-bar__image {
    display: block;
    margin: 0 auto
}

.logo-bar__link {
    display: block
}

[data-aos=logo__animation] .logo-bar__item {
    opacity: 0
}

[data-aos=logo__animation].aos-animate .logo-bar__item {
    animation: fade-in .5s ease 0s forwards
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(2) {
    animation-delay: .2s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(3) {
    animation-delay: .4s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(4) {
    animation-delay: .6s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(5) {
    animation-delay: .8s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(6) {
    animation-delay: 1s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(7) {
    animation-delay: 1.2s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(8) {
    animation-delay: 1.4s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(9) {
    animation-delay: 1.6s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(10) {
    animation-delay: 1.8s
}

.background-media-text {
    position: absolute;
    width: 100%;
    overflow: hidden;
    background-size: cover
}

.background-media-text__video {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    z-index: 0
}

@media only screen and (max-width: 768px) {
    .background-media-text__video {
        width: 300%;
        left: -100%
    }
}

.background-media-text__video video {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    pointer-events: none
}

@media only screen and (min-width: 769px) {
    .background-media-text__video video {
        height: 120%;
        max-width: none;
        left: -100%;
        height: 150%;
        width: 300%
    }
}

@media screen and (min-width: 1140px) {
    .background-media-text__video video {
        width: 100%;
        height: 300%;
        left: auto;
        top: -100%
    }
}

.background-media-text__inner {
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%
}

.background-media-text__text {
    text-align: left;
    font-size: 1.1em;
    background: #fbf5e7;
    background: var(--colorBody);
    padding: 30px;
    width: 380px
}

html[dir=rtl] .background-media-text__text {
    text-align: right
}

@media only screen and (max-width: 768px) {
    .background-media-text__text {
        text-align: center
    }
}

.background-media-text__text .btn {
    margin-top: 15px
}

.background-media-text__container {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

@media only screen and (max-width: 768px) {
    .background-media-text, .background-media-text__inner {
        position: relative
    }

    .background-media-text__container, .background-media-text__video {
        position: relative;
        height: 240px
    }

    .background-media-text__text {
        padding: 22.5px;
        width: auto
    }

    .background-media-text.loading:after, .background-media-text.loading:before {
        top: 117px
    }
}

@media only screen and (min-width: 769px) {
    .background-media-text--450, .background-media-text--450 .background-media-text__video {
        min-height: 450px
    }

    .background-media-text--550, .background-media-text--550 .background-media-text__video {
        min-height: 550px
    }

    .background-media-text--650, .background-media-text--650 .background-media-text__video {
        min-height: 650px
    }

    .background-media-text--750, .background-media-text--750 .background-media-text__video {
        min-height: 750px
    }

    .background-media-text--850, .background-media-text--850 .background-media-text__video {
        min-height: 850px
    }

    .background-media-text--950, .background-media-text--950 .background-media-text__video {
        min-height: 950px
    }

    .background-media-text--1050, .background-media-text--1050 .background-media-text__video {
        min-height: 1050px
    }

    .background-media-text--1150, .background-media-text--1150 .background-media-text__video {
        min-height: 1150px
    }

    .background-media-text--1250, .background-media-text--1250 .background-media-text__video {
        min-height: 1250px
    }
}

.background-media-text--99, .background-media-text--99 .background-media-text__video {
    min-height: 99vh
}

@media (max-width: 768px) {
    .background-media-text--99, .background-media-text--99 .background-media-text__video {
        min-height: 95vh
    }
}

[data-aos=background-media-text__animation] .background-media-text__image, [data-aos=background-media-text__animation] .background-media-text__image svg, [data-aos=background-media-text__animation] .background-media-text__video {
    opacity: 0
}

.no-js [data-aos=background-media-text__animation] .background-media-text__image, .no-js [data-aos=background-media-text__animation] .background-media-text__image svg, .no-js [data-aos=background-media-text__animation] .background-media-text__video {
    animation: none;
    opacity: 1
}

[data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__image, [data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__image svg, [data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__video {
    animation: none;
    opacity: 1
}

[data-aos=background-media-text__animation].aos-animate .background-media-text__image svg {
    animation: zoom-fade 2.5s cubic-bezier(.26, .54, .32, 1) 0s forwards;
    transition: none
}

[data-disable-animations=true] [data-aos=background-media-text__animation].aos-animate .background-media-text__image svg {
    animation: none
}

.image-row:after {
    content: "";
    display: table;
    clear: both
}

.image-row__image {
    position: relative;
    min-height: 1px;
    float: left
}

.image-row__image:after {
    content: "";
    display: block;
    height: 0;
    width: 100%
}

.image-row__image img {
    display: block;
    position: absolute;
    top: 0;
    left: 0
}

.type-image .image-wrap, .type-image a, .type-image img {
    width: 100%
}

.type-banner {
    flex: 1 0 100%
}

.type-banner p {
    margin: 5px 10px;
    display: inline-block;
    vertical-align: middle;
    line-height: 1.2
}

.type-banner__link {
    display: block;
    flex: 1 1 100%
}

.type-banner__content {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px
}

.type-banner__text {
    position: relative;
    flex: 0 1 auto;
    z-index: 3;
    padding: 10px 20px
}

.type-banner__image {
    flex: 0 0 45%
}

@media only screen and (min-width: 769px) {
    .type-banner__image {
        flex: 0 0 200px
    }
}

.type-product__wrapper {
    flex: 1 1 100%;
    align-self: center;
    position: relative;
    padding: 2em 0;
    z-index: 4
}

@media only screen and (max-width: 768px) {
    .type-product__content {
        margin-top: 15px
    }
}

.type-product__image {
    position: relative
}

.type-product__image:first-child {
    width: 100%;
    max-width: 75%
}

.type-product__image:nth-child(2) {
    position: absolute;
    bottom: 40px;
    right: 0;
    width: 100%;
    max-width: 30%
}

.type-product__label {
    padding: 4px 12px;
    background-color: #e21b79;
    background-color: var(--colorBtnPrimary);
    color: #fbf5e7;
    color: var(--colorBtnPrimaryText);
    float: right;
    clear: both
}

.page-content--product {
    padding-top: 15px
}

.page-content--product .page-width {
    max-width: 1180px
}

@media only screen and (min-width: 769px) {
    .page-content--product {
        padding-bottom: 0
    }
}

@media only screen and (max-width: 768px) {
    .page-content--product {
        padding-top: 0
    }
}

.product-image-main {
    position: relative
}

[data-button_style=angled] .product-image-main .btn {
    display: inline-block;
    top: 50%;
    position: absolute
}

.product__video-wrapper {
    position: relative;
    overflow: hidden;
    border-radius: 30px;
    max-width: 100%;
    padding-bottom: 100%;
    height: auto;
    background-color: #fff;
    background-color: var(--colorSmallImageBg)
}

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

.product-main-slide:not(.is-selected) video {
    display: none
}

.product-main-slide {
    display: none;
    width: 100%;
    overflow: hidden
}

.product-main-slide:first-child {
    display: block
}

.product__price {
    margin-right: 5px;
    font-size: 28px;
    font-weight: 600
}

@media (min-width: 769px) and (max-width: 1100px) {
    .product__price {
        font-size: 24px
    }
}

@media (max-width: 768px) {
    .product__price {
        font-size: 20px
    }
}

.icon-shopify-logo {
    width: 60px;
    height: 20px
}

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

.m-0 {
    margin: 0
}

.w-100 {
    width: 100%
}

.text-uppercase {
    text-transform: uppercase
}

.text-center {
    text-align: center
}

.homepage_banner .background-media-text__text {
    background: 0 0;
    padding: 0;
    text-align: left;
    width: 100%
}

.homepage_banner .background-media-text__text .btn {
    margin-top: 0;
    color: #fff
}

.homepage_banner:not(.collection_banner) .homepage_banner_logo_img {
    max-width: 100%;
    margin-bottom: 15px;
    width: 100%
}

.homepage_banner.collection_banner .homepage_banner_logo_img {
    max-width: 260px;
    margin-bottom: 24px;
    width: 100%
}

.custom_content_btn {
    margin-top: 50px;
    text-transform: none
}

.three_columns_img .grid {
    margin-left: -4%
}

.three_columns_img .grid__item {
    padding-left: 4%
}

.three_columns_img .three_columns_content {
    padding: 25px 0 30px;
    border-radius: 30px
}

.three_columns_img .three_columns_content .h5 {
    margin: 0 auto;
    padding: 0 25px;
    line-height: 1.2
}

.three_columns_img .three_columns_content .image-wrap.text-spacing {
    margin-bottom: 25px
}

.three_columns_img .three_columns_inner .btn {
    margin-top: 40px
}

.three_columns_img .three_columns_inner h4 {
    padding: 0 25px 25px;
    font-weight: 700;
    margin: 0;
    text-transform: uppercase
}

.three_columns_img .three_columns_inner {
    height: calc(100% - 104px)
}

.homepage_logolist .page-width {
    max-width: 1500px
}

.homepage_logolist {
    padding-top: 11%
}

.homepage_logolist .logo-bar__item {
    margin: 0 auto
}

.animation_bar .animation_bar_wrapper .animation_bar_inner {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    float: left
}

.animation_bar .animation_bar_wrapper .js-marquee-wrapper:after, .animation_bar .animation_bar_wrapper .js-marquee:after {
    content: "";
    clear: both;
    display: table
}

.animation_bar .animation_bar_wrapper .image_wrapper {
    max-width: 40px;
    height: 40px;
    margin: 0 30px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex
}

.animation_bar .animation_bar_wrapper .image_wrapper img {
    width: auto
}

.animation_bar .animation_bar_wrapper .animation_text_heading {
    margin: 0;
    line-height: 1
}

.full_w_image_w_text.index-section {
    margin: 0
}

@media (max-width: 1100px) {
    .full_w_image_w_text.index-section {
        margin: 40px 0 0
    }
}

.full_w_image_w_text .feature-row {
    margin: 0
}

.full_w_image_w_text .full_w_image_w_text_img {
    max-width: 900px !important;
    margin: 0 0 0 30px
}

.full_w_image_w_text .feature-row__text--right .image_w_text_title {
    margin-bottom: 40px
}

.full_w_image_w_text .feature-row__text--right .btn {
    margin-top: 50px
}

.product_with_text_inner .product_with_text_content .title {
    margin-bottom: 50px
}

.product_with_text_inner .product_with_text_content .text {
    max-width: 700px;
    margin: 0 auto 50px;
    line-height: 1.3
}

.product_with_text_inner .product_with_text_content .btn {
    margin-top: 50px;
    max-width: 300px;
    width: 100%
}

.product_with_text_inner .product_block {
    max-width: 430px;
    position: relative
}

.product_block .product_imag_wrapper {
    position: relative;
    margin-bottom: 20px
}

.product_block .product_imag_wrapper .img {
    border-radius: 30px
}

.product_block .product_block_price {
    font-weight: 600;
    margin: 0
}

.product_with_text_inner {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    flex-wrap: wrap
}

.product_block .product_sales_label {
    background: #2a317d;
    color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 110px;
    height: 110px;
    text-align: center;
    border-radius: 100%;
    position: absolute;
    top: -50px;
    left: 30px;
    transform: rotate(335deg)
}

.product_block .product_sales_label p {
    font-family: Rubik, sans-serif;
    font-size: 18px;
    font-weight: 500;
    margin: 0;
    padding: 0 10px
}

.wavy_image_main .top_wavy_img .wavy_text_wrapper {
    position: relative
}

.wavy_image_main .wavy_back_img img {
    display: block;
    width: 100%
}

.homepage_featured_collection .grid_overflow_wrapper {
    overflow: hidden;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    padding-top: 90px;
    padding-bottom: 50px;
    scrollbar-width: none
}

.homepage_featured_collection .home_featured_products .grid {
    white-space: nowrap;
    display: flex;
    transition: all .8s cubic-bezier(.25, .46, .45, .94);
    transform: translate(0)
}

.homepage_featured_collection .home_featured_products .grid__item {
    width: 33.33%;
    flex: 0 0 33.33%;
    display: inline-block;
    float: none;
    white-space: normal;
    padding-left: 20px
}

.homepage_featured_collection .home_featured_products_no_text .grid__item {
    width: 25%;
    flex: 0 0 25%
}

.homepage_featured_collection .left_content_text p {
    margin: 0
}

.homepage_featured_collection .left_content_text .left_content_text_inner {
    padding: 50px 42px;
    background: #2a317d;
    color: #fff;
    border-radius: 0 0 30px 30px
}

.homepage_featured_collection .left_content_img img {
    border-radius: 30px 30px 0 0;
    width: 100%
}

.homepage_featured_collection .left_content_product .product_price_wrapper {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 15px;
    margin-bottom: 30px
}

.homepage_featured_collection .left_content_product .product_price {
    position: relative
}

.homepage_featured_collection .left_content_product .product_price:after {
    content: "";
    position: absolute;
    top: 50%;
    height: 3px;
    background: #042181;
    width: 100%;
    left: 0;
    transform: rotate(339deg)
}

.homepage_featured_collection .left_content_product .left_content_img img {
    border: 3px solid #042181
}

.homepage_featured_collection .left_content_product .left_content_text {
    padding: 20px;
    background: #c3e8f1;
    border-radius: 0 0 30px 30px;
    border: 3px solid #042181;
    border-top: 0
}

.homepage_featured_collection .left_content_product {
    border-radius: 30px;
    box-shadow: 10px 10px #2a317d;
    margin-right: 12px;
    margin-bottom: 12px;
    position: relative
}

.homepage_featured_collection ::-webkit-scrollbar {
    height: 8px
}

.homepage_featured_collection ::-webkit-scrollbar-track {
    background: #70707020;
    border-radius: 10px
}

.homepage_featured_collection ::-webkit-scrollbar-thumb {
    background: #2a317d;
    border-radius: 10px
}

.homepage_featured_collection .product_block .product_sales_label {
    width: 90px;
    height: 90px
}

.logo_bar_cover.logo__bar .logo-bar__item {
    flex: 0 1 170px
}

.logo_bar_cover.logo__bar .logo-bar__item_image {
    max-width: 80px
}

.logo_bar_cover.logo__bar .logo-bar__item_title {
    margin-top: 30px
}

.logo_bar_cover.logo__bar .logo-bar__item_title .title {
    font-size: 22px
}

.homepage_featured_collection_inner .product_block .product_content {
    max-width: 400px;
    margin: 0 auto
}

.homepage_featured_collection .section-header {
    margin-bottom: 0
}

.animate_curve {
    position: relative
}

.animate_curve .upper_svg {
    position: absolute;
    width: 100%;
    bottom: 60px;
    left: 0
}

.curve_text_svg path {
    fill: transparent
}

.curve_text_svg text {
    fill: #fff;
    font-size: 60px;
    font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
    text-transform: uppercase;
    letter-spacing: 2px
}

.product_list .product_list_inner {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px 10px
}

.product_list {
    margin-bottom: 15px
}

.product_list .product_list_inner .product_list_image_wrapper {
    width: 84px;
    height: 84px;
    border-radius: 15px;
    overflow: hidden;
    padding: 0
}

.product_list .product_list_inner .product_list_image_wrapper img {
    position: absolute;
    left: 0;
    top: 13%;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform: scale(1.05)
}

.product_list .product_list_title_wrapper .product_list_title {
    display: inline-block;
    margin-bottom: 0
}

.product_list .product_list_title_wrapper .product_list_title:first-child {
    margin-right: 10px
}

.product_list .product_list_title_wrapper {
    margin-bottom: 15px
}

.page_learn .index-section:last-child {
    margin-bottom: 0
}

.page_learn .slideshow-wrapper .hero__title {
    margin-bottom: 40px
}

.icon_with_text .icon_svg_wrapper svg {
    width: 110px;
    height: 110px;
    margin-bottom: 15px
}

.icon_with_text .icon_inner .icon_title {
    font-weight: 600;
    max-width: 130px;
    margin: 0 auto
}

.icon_with_text .icon_wrapper {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    max-width: 500px;
    margin: 0 auto -30px
}

.icon_with_text .icon_inner {
    width: 50%;
    margin-bottom: 30px
}

.icon_with_text .icon_with_text_wrapper {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    align-items: center
}

.subscription_product_list {
    position: relative
}

.subscription_product_list .subscription_product_title {
    color: #e21b79;
    font-weight: 500
}

.collection_product_list .collection_product_list_header {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin: 0;
    border: 3px solid #2a317d;
    border-radius: 22px;
    display: inline-block;
    position: relative
}

.collection_product_list .collection_product_list_header label {
    margin: 0;
    background-color: transparent;
    font-weight: 700;
    font-size: 24px;
    transition: .4s;
    padding: 14px 40px;
    display: inline-block
}

.collection_product_list .product_block .product_imag_wrapper {
    width: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    overflow: hidden;
    justify-content: center;
    margin-bottom: 15px
}

.collection_product_list .product_block .product_imag_wrapper.no_hover_img .original_image, .homepage_featured_collection .product_block .no_hover_img .original_image {
    opacity: 1 !important;
    visibility: visible !important
}

.collection_product_list .product_block .product_imag_wrapper .original_image, .homepage_featured_collection .product_block .product_imag_wrapper .original_image {
    transition: .2s
}

.collection_product_list .product_block .product_imag_wrapper .hover_image, .homepage_featured_collection .product_block .product_imag_wrapper .hover_image {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 0;
    visibility: hidden;
    transition: .2s
}

.collection_product_list .product_block .product_imag_wrapper:hover .hover_image, .homepage_featured_collection .product_block .product_imag_wrapper:hover .hover_image {
    opacity: 1;
    visibility: visible;
    z-index: 0
}

.collection_product_list .product_block_wrapper {
    margin: 0 0 -70px -40px;
    transition: .4s
}

.collection_product_list .product_block_wrapper .product_block {
    padding-left: 40px;
    margin-bottom: 70px
}

.collection_product_list .product_block_wrapper .product_title {
    margin-bottom: 30px
}

.collection_product_list .product_block_wrapper .product_block .btn {
    padding: 12px 18px;
    font-size: 16px
}

.collection_product_list .collection_products {
    position: relative
}

.content_hidden {
    opacity: 0;
    visibility: hidden;
    height: 0;
    position: absolute !important
}

.overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #353b76;
    z-index: 99;
    animation: overlay-on .5s forwards;
    cursor: pointer
}

@media (min-width: 1351px) {
    .homepage_featured_collection .home_featured_products .grid {
        margin: 0 0 0 -20px
    }
}

@media (min-width: 1101px) {
    .product_with_text .page-width {
        padding: 0 6%
    }
}

@media (min-width: 769px) and (max-width: 1230px) {
    .collection_product_list .product_block_wrapper {
        margin: 0 0 -50px -22px
    }

    .collection_product_list .product_block_wrapper .product_block {
        width: 33.33%;
        padding-left: 22px
    }

    .collection_product_list .product_block_wrapper .product_block:nth-of-type(4n+1) {
        clear: unset
    }

    .collection_product_list .product_block_wrapper .product_block:nth-of-type(3n+1) {
        clear: both
    }

    .collection_product_list .product_block_wrapper .product_block {
        margin-bottom: 50px
    }

    .collection_product_list .product_block_wrapper .product_title {
        margin-bottom: 20px
    }

    .collection_product_list .product_block_wrapper .product_block .btn {
        font-size: 14px
    }

    .collection_product_list .collection_product_list_header label {
        padding: 14px 35px
    }
}

@media (min-width: 769px) and (max-width: 1119px) {
    .homepage_featured_collection .home_featured_products .grid__item {
        width: 310px;
        flex: 0 0 310px;
        padding-left: 22px
    }

    .homepage_featured_collection .home_featured_products_no_text .grid__item {
        width: 300px;
        flex: 0 0 300px;
        padding-left: 22px
    }

    .homepage_featured_collection .left_content_wrapper {
        width: 45%
    }

    .homepage_featured_collection .right_product_wrapper {
        width: 55%
    }

    .homepage_featured_collection .product_block .product_sales_label {
        width: 80px;
        height: 80px;
        top: -40px
    }

    .homepage_featured_collection .product_block .product_sales_label p {
        font-size: 16px
    }
}

@media (min-width: 1120px) and (max-width: 1350px) {
    .homepage_featured_collection .home_featured_products .grid__item {
        width: 45%;
        flex: 0 0 45%;
        padding-left: 22px
    }

    .homepage_featured_collection .home_featured_products_no_text .grid__item {
        width: 28%;
        flex: 0 0 28%;
        padding-left: 22px
    }

    .homepage_featured_collection .left_content_wrapper {
        width: 40%
    }

    .homepage_featured_collection .right_product_wrapper {
        width: 60%
    }

    .homepage_featured_collection .product_block .product_sales_label {
        width: 80px;
        height: 80px;
        top: -40px
    }

    .homepage_featured_collection .product_block .product_sales_label p {
        font-size: 16px
    }
}

@media (min-width: 769px) and (max-width: 1100px) {
    .full_w_image_w_text .feature-row__text--right {
        margin-left: 0;
        padding-left: 40px;
        margin-right: 20px
    }

    .full_w_image_w_text .feature-row__text--right .image_w_text_title {
        margin-bottom: 20px
    }

    .full_w_image_w_text .feature-row__text--right .btn {
        margin-top: 30px
    }

    .product_with_text_inner .product_block .product_sales_label {
        width: 100px;
        height: 100px;
        top: -45px
    }

    .product_with_text_inner .product_block .product_sales_label p {
        font-size: 16px
    }

    .icon_with_text .icon_svg_wrapper svg {
        width: 90px;
        height: 90px;
        margin-bottom: 10px
    }

    .icon_with_text .icon_wrapper {
        max-width: 400px;
        margin: 0 auto -20px
    }

    .icon_with_text .icon_inner {
        margin-bottom: 20px
    }

    .wavy_image_main .wavy_text.bottom_wavy_img.homepage_bottom_wavy_img {
        margin-top: -8%
    }
}

@media (min-width: 769px) and (max-width: 1023px) {
    .full_w_image_w_text .feature-row__text--right .image_w_text_title {
        font-size: 48px
    }

    .full_w_image_w_text .feature-row__text--right .rte {
        font-size: 22px
    }

    .full_w_image_w_text .feature-row__text--right .btn {
        font-size: 16px;
        padding: 14px 38px;
        margin-top: 20px
    }

    .full_w_image_w_text .full_w_image_w_text_img {
        margin: 0
    }

    .homepage_logolist {
        padding-top: 12%
    }
}

@media (min-width: 769px) and (max-width: 1010px) {
    .page_product .page-content--product .grid__item {
        width: 50% !important
    }
}

@media (min-width: 769px) {
    .three_columns_img .grid {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex
    }

    .three_columns_img .three_columns_inner .btn {
        max-width: 100%
    }

    .three_columns_img .grid__item {
        margin-bottom: 0
    }
}

@media (max-width: 768px) {
    .top_bottom_padding {
        padding: 40px 0
    }

    .homepage_banner .background-media-text__text {
        text-align: center;
        margin: 0 auto
    }

    .homepage_banner .background-media-text__inner {
        position: absolute;
        top: 180px;
        text-align: center
    }

    .homepage_banner .background-media-text__container {
        height: 95vh
    }

    .homepage_banner .background-media-text__text .homepage_banner_title {
        margin-bottom: 20px;
        line-height: 1.2
    }

    .homepage_banner_main .background-media-text__text h4 {
        max-width: 260px;
        margin: 0 auto 30px !important
    }

    .homepage_banner .background-media-text__text .btn {
        padding: 10px 20px;
        font-size: 16px;
        background: #e21b79;
        color: #fff
    }

    .homepage_banner .homepage_banner_logo_img {
        max-width: 250px;
        margin: 0 auto 10px
    }

    .homepage_banner.collection_banner .homepage_banner_logo_img {
        max-width: 200px;
        margin: 0 auto 40px
    }

    .three_columns_img .three_columns_inner {
        max-width: 500px;
        margin: 0 auto
    }

    .three_columns_img .three_columns_inner .btn {
        margin-top: 25px
    }

    .three_columns_img .three_columns_inner .columns_img_wrapper {
        max-width: 100% !important
    }

    .three_columns_img .three_columns_content .image-wrap.text-spacing {
        margin-bottom: 20px
    }

    .three_columns_img .three_columns_content {
        padding: 20px 0 25px
    }

    .three_columns_img .grid {
        margin-left: -17px
    }

    .three_columns_img .grid__item {
        padding-left: 17px
    }

    .three_columns_img .three_columns_inner h4 {
        padding-bottom: 20px
    }

    .animation_bar .animation_bar_wrapper {
        padding: 10px 0
    }

    .animation_bar .animation_bar_wrapper .image_wrapper {
        max-width: 30px;
        height: 30px;
        margin: 0 15px
    }

    .full_w_image_w_text .full_w_image_w_text_img {
        order: 2
    }

    .full_w_image_w_text .feature-row__text--right {
        margin: 0 auto;
        padding: 0 30px
    }

    .full_w_image_w_text .feature-row__text--right .image_w_text_title {
        margin-bottom: 30px
    }

    .full_w_image_w_text .feature-row__text--right .btn {
        margin-top: 30px
    }

    .full_w_image_w_text .full_w_image_w_text_img {
        margin: 0 0 0 60px
    }

    .homepage_logolist {
        padding-top: 80px
    }

    .product_with_text_inner .product_block {
        margin: 0 auto 40px
    }

    .product_with_text_inner .product_block .product_sales_label {
        width: 80px;
        height: 80px;
        top: -35px;
        left: 25px
    }

    .product_with_text_inner .product_block .product_sales_label p {
        font-size: 14px
    }

    .product_with_text .product_block .product_block_price {
        font-size: 20px
    }

    .product_with_text_inner .product_with_text_content .title {
        margin-bottom: 25px
    }

    .product_with_text_inner .product_with_text_content .btn {
        margin-top: 40px;
        max-width: 210px
    }

    .product_with_text_inner .product_with_text_content .text {
        margin: 0 auto 65px
    }

    .homepage_featured_collection .home_featured_products .grid__item, .homepage_featured_collection .home_featured_products_no_text .grid__item {
        width: 280px;
        flex: 0 0 280px;
        padding-left: 25px
    }

    .homepage_featured_collection .grid_overflow_wrapper {
        padding-top: 70px;
        padding-bottom: 40px
    }

    .homepage_featured_collection .product_block .product_sales_label {
        width: 80px;
        height: 80px;
        top: -40px
    }

    .homepage_featured_collection .product_block .product_sales_label p {
        font-size: 16px
    }

    #shopify-section-template--15735263199421__1659354191bf1dd67d .grid_overflow_wrapper {
        padding-top: 40px
    }

    .homepage_featured_collection .product_block .product_block_price {
        font-size: 16px
    }

    .homepage_featured_collection .left_content_product .product_price_wrapper {
        margin-bottom: 20px;
        justify-content: center
    }

    .homepage_featured_collection .homepage_featured_collection_product {
        padding-top: 45px
    }

    .homepage_featured_collection .left_content_product .left_content_text {
        text-align: center
    }

    .homepage_featured_collection .home_featured_products .grid {
        margin-left: -25px
    }

    .wavy_image_main .wavy_text.top_wavy_img {
        margin-bottom: -12%;
        margin-top: -15%
    }

    .wavy_image_main .wavy_text_wrapper {
        overflow: hidden
    }

    .wavy_image_main .top_wavy_img .wavy_text_wrapper {
        padding: 23% 0 0
    }

    .wavy_image_main .wavy_text.bottom_wavy_img .wavy_text_wrapper {
        padding-top: 13%;
        width: 100%
    }

    .wavy_image_main .animate_curve {
        transform: scale(2.2)
    }

    .animate_curve .upper_svg {
        bottom: 0
    }


    .homepage_logolist {
        padding-top: 16%
    }

    .wavy_image_main .wavy_text.bottom_wavy_img.homepage_bottom_wavy_img {
        margin-top: -3%
    }

    .product_list .product_list_inner {
        gap: 8px 5px
    }

    .product_list .product_list_inner .product_list_image_wrapper {
        width: 62px;
        height: 62px
    }

    .product_list .product_list_title_wrapper {
        text-align: left
    }

    .page_learn .hero__text-content {
        display: block;
        top: 120px;
        text-align: center;
        left: 0;
        padding: 0
    }

    .page_learn .slideshow-wrapper .hero__title {
        margin-bottom: 20px
    }

    .icon_with_text .icon_with_text_wrapper {
        flex-wrap: wrap
    }

    .icon_with_text .icon_svg_wrapper svg {
        width: 80px;
        height: 80px;
        margin-bottom: 10px
    }

    .icon_with_text .icon_wrapper {
        max-width: 400px;
        margin: 0 auto -20px
    }

    .icon_with_text .icon_inner {
        margin-bottom: 20px
    }

    .collection_product_list .collection_product_list_header label {
        padding: 12px 22px;
        font-size: 20px
    }

    .collection_product_list .product_block_wrapper {
        margin: 0 0 -40px -22px
    }

    .collection_product_list .product_block_wrapper .product_block {
        padding-left: 22px;
        margin-bottom: 40px
    }

    .collection_product_list .product_block_wrapper .product_title {
        margin-bottom: 20px
    }

    .collection_product_list .product_block_wrapper .product_block .btn {
        padding: 10px 18px 8px;
        font-size: 14px
    }
}

@media (max-width: 600px) {
    .collection_product_list .collection_product_list_header {
        border-radius: 14px
    }

    .collection_product_list .collection_product_list_header label {
        padding: 9px 7px;
        font-size: 16px;
        border-radius: 10px
    }

    .collection_product_list .page-width {
        text-align: center
    }
}

@media (max-width: 500px) {
    .homepage_featured_collection .home_featured_products .grid__item, .homepage_featured_collection .home_featured_products_no_text .grid__item {
        width: 275px;
        flex: 0 0 300px
    }
}

@media (max-width: 390px) {
    .product_block .product_content .product_title {
        font-size: 22px
    }
}

.learn_image_with_text_cover {
    max-width: 1100px
}

.learn_img_text {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap
}

@media (min-width: 769px) {
    .page_learn .hero__image-wrapper .hero__image {
        object-position: right !important
    }

    .feature-row__text--left.learn_img_text_right_text_cover {
        padding-left: 100px
    }

    .feature-row__text--right.learn_img_text_right_text_cover {
        padding-right: 100px
    }
}

@media (max-width: 768px) {
    .learn_img_text_cover_image {
        margin: 0 auto 40px;
        max-width: 200px
    }

    .learn_img_text_right_image {
        order: 1
    }

    .learn_img_text_right_text_cover.feature-row__text--right {
        order: 2
    }

    .learn_wavy_img {
        margin-top: -16%
    }

    .wavy_image_main .wavy_text.learn_wavy_img .wavy_text_wrapper {
        padding-top: 13%
    }

    .learn_img_w_text_text_width {
        max-width: 450px;
        text-align: center !important
    }

    .logo_text {
        margin: 0 auto 40px
    }
}

@media (max-width: 405px) {
    .homepage_banner_main .background-media-text__text .homepage_banner_title {
        font-size: 40px
    }
}

@media (max-width: 380px) {
    .logo_bar_cover.logo__bar .logo-bar__item {
        flex: 0 1 150px
    }
}

.video_list .video_list_inner .video_list_wrapper {
    margin-bottom: 22px
}

.video_list ::-webkit-scrollbar {
    height: 6px
}

.video_list .video_list_wrapper .video-div {
    border: 1px solid #707070;
    border-radius: 16px
}

@media (max-width: 1250px) {
    .video_list .video_list_inner {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        transition: all .8s cubic-bezier(.25, .46, .45, .94);
        transform: translate(0);
        overflow: hidden;
        overflow-x: scroll;
        -webkit-overflow-scrolling: touch;
        margin-bottom: 0;
        padding-bottom: 30px
    }

    .video_list .video_list_inner .video_list_wrapper {
        width: 315px;
        flex: 0 0 315px;
        margin-bottom: 0
    }
}

@media (max-width: 768px) {
    .video_list .video_list_inner .video_list_wrapper {
        width: 250px;
        flex: 0 0 250px
    }
}

.featured_product .product__price {
    font-size: 28px
}

.featured_product .product-block--price {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center
}

@media only screen and (max-width: 600px) {
    .video_list h2 {
        font-size: 32px
    }
}

@media only screen and (min-width: 769px) {
    .featured_product .product__price {
        font-size: 32px
    }

    .featured_product .product-block {
        margin-bottom: 15px
    }
}

.relative {
    position: relative
}

.product_description, .product_list_title {
    font-size: 20px
}

@media screen and (min-width: 768px) {
    .product_description, .product_list_title {
        font-size: 23px
    }

    .product-purchase-options {
        margin-top: 25px;
        display: block
    }
}

.sticky-10 {
    position: sticky;
    top: 100px
}

@media only screen and (max-width: 768px) {
    .header-logo {
        font-size: 2em
    }
}

@media screen and (max-height: 800px) {
    .header-logo img {
        max-height: 90px
    }
}

@media print {
    @page {
        margin: .5cm
    }

    h2, h3, p {
        orphans: 3;
        widows: 3
    }

    h2, h3 {
        page-break-after: avoid
    }

    body, html {
        background-color: #fff
    }

    .site-header__logo-link img:nth-child(2) {
        display: none
    }
}

@media (min-width: 769px) and (max-width: 959px) {
    .footer__item--1494301487049 {
        padding-top: 0 !important
    }
}

@media (min-width: 960px) and (max-width: 1350px) {
    .site-footer .grid {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        flex-wrap: wrap
    }

    .footer__item--1494301487048 {
        padding-top: 40px
    }
}

.full_w_image_w_text .feature-row__text--right.impact_full_w_image_w_text {
    padding-bottom: 0
}

.right_image_text_cover {
    margin-left: 30px
}

.right_image_bottom_text {
    margin: 30px 0 0
}

.top_bottom_padding.impact_top_bottom_padding {
    padding-top: 150px
}

.logo_text {
    color: #fbf5e7;
    text-align: center;
    max-width: 1070px;
    margin: 0 auto 80px
}

.learn_wavy_img {
    margin-top: -12%;
    margin-bottom: -5%
}

.slideshow-wrapper .slideshow__slide .hero__image-wrapper {
    opacity: 1;
    transform: translate(0);
    transition: transform .7s ease, opacity .7s ease
}

@media (max-width: 768px) {
    .full_w_image_w_text .full_w_image_w_text_img.impact_full_w_image_w_text_img {
        margin: 0
    }

    .full_w_image_w_text .feature-row__text--right.impact_full_w_image_w_text {
        padding-bottom: 30px
    }

    .right_image_text_cover {
        margin: 30px 0 0
    }

    .top_bottom_padding.impact_top_bottom_padding {
        padding-top: 80px
    }
}

@media (max-width: 768px) {
    .template-index .site-header:not(.site-header--stuck) .site-header__logo .logo_mobile {
        display: none
    }
}

.blog_banner {
    position: relative
}

.blog_banner .blog_banner_main_image img {
    width: 100%
}