#shopify-section-template--14990142210107__1659784630d6055954 {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --prev-next-button-background: 255, 255, 255;
    --prev-next-button-color: 58, 58, 72;
    --section-background: 255, 255, 255;
}

/* Typography (heading) */
/* Typography (body) */
:root {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --background: 255, 255, 255;
    --secondary-background: 248, 249, 255;
    --border-color: 225, 225, 228;
    --border-color-darker: 176, 176, 182;
    --success-color: 50, 90, 80;
    --success-background: 214, 222, 220;
    --error-color: 226, 112, 119;
    --error-background: 253, 245, 245;
    --primary-button-background: 132, 150, 250;
    --primary-button-text-color: 255, 255, 255;
    --secondary-button-background: 255, 255, 255;
    --secondary-button-text-color: 58, 58, 72;
    --product-star-rating: 233, 185, 111;
    --product-on-sale-accent: 132, 150, 250;
    --product-sold-out-accent: 111, 113, 155;
    --product-custom-label-background: 132, 150, 250;
    --product-custom-label-text-color: 0, 0, 0;
    --product-custom-label-2-background: 233, 185, 111;
    --product-custom-label-2-text-color: 0, 0, 0;
    --product-low-stock-text-color: 226, 112, 119;
    --product-in-stock-text-color: 50, 90, 80;
    --loading-bar-background: 58, 58, 72;
    /* We duplicate some "base" colors as root colors, which is useful to use on drawer elements or popover without. Those should not be overridden to avoid issues */
    --root-heading-color: 58, 58, 72;
    --root-text-color: 58, 58, 72;
    --root-background: 255, 255, 255;
    --root-border-color: 225, 225, 228;
    --root-primary-button-background: 132, 150, 250;
    --root-primary-button-text-color: 255, 255, 255;
    --base-font-size: 17px;
    --heading-font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Ubuntu, Helvetica Neue, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;
    --heading-font-weight: 400;
    --heading-font-style: normal;
    --heading-text-transform: normal;
    --text-font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Ubuntu, Helvetica Neue, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;
    --text-font-weight: 400;
    --text-font-style: normal;
    --text-font-bold-weight: 700;
    /* Typography (font size) */
    --heading-xxsmall-font-size: 11px;
    --heading-xsmall-font-size: 11px;
    --heading-small-font-size: 13px;
    --heading-large-font-size: 40px;
    --heading-h1-font-size: 42px;
    --heading-h2-font-size: 36px;
    --heading-h3-font-size: 32px;
    --heading-h4-font-size: 26px;
    --heading-h5-font-size: 22px;
    --heading-h6-font-size: 18px;
    /* Control the look and feel of the theme by changing radius of various elements */
    --button-border-radius: 4px;
    --block-border-radius: 8px;
    --block-border-radius-reduced: 4px;
    --color-swatch-border-radius: 100%;
    /* Button size */
    --button-height: 48px;
    --button-small-height: 40px;
    /* Form related */
    --form-input-field-height: 48px;
    --form-input-gap: 16px;
    --form-submit-margin: 24px;
    /* Product listing related variables */
    --product-list-block-spacing: 32px;
    /* Video related */
    --play-button-background: 255, 255, 255;
    --play-button-arrow: 58, 58, 72;
    /* RTL support */
    --transform-logical-flip: 1;
    --transform-origin-start: left;
    --transform-origin-end: right;
    /* Other */
    --zoom-cursor-svg-url: url(//cdn.shopify.com/s/files/1/0264/3007/9035/t/33/assets/zoom-cursor.svg?v=16301796413357280671657165676);
    --arrow-right-svg-url: url(//cdn.shopify.com/s/files/1/0264/3007/9035/t/33/assets/arrow-right.svg?v=61423896706078224671657165676);
    --arrow-left-svg-url: url(//cdn.shopify.com/s/files/1/0264/3007/9035/t/33/assets/arrow-left.svg?v=106668509801670590081657165676);
    /* Some useful variables that we can reuse in our CSS. Some explanation are needed for some of them:
    - container-max-width-minus-gutters: represents the container max width without the edge gutters
    - container-outer-width: considering the screen width, represent all the space outside the container
    - container-outer-margin: same as container-outer-width but get set to 0 inside a container
    - container-inner-width: the effective space inside the container (minus gutters)
    - grid-column-width: represents the width of a single column of the grid
    - vertical-breather: this is a variable that defines the global "spacing" between sections, and inside the section
                        to create some "breath" and minimum spacing
    */
    --container-max-width: 1600px;
    --container-gutter: 24px;
    --container-max-width-minus-gutters: calc(var(--container-max-width) - (var(--container-gutter)) * 2);
    --container-outer-width: max(calc((100vw - var(--container-max-width-minus-gutters)) / 2), var(--container-gutter));
    --container-outer-margin: var(--container-outer-width);
    --container-inner-width: calc(100vw - var(--container-outer-width) * 2);
    --grid-column-count: 10;
    --grid-gap: 24px;
    --grid-column-width: calc((100vw - var(--container-outer-width) * 2 - var(--grid-gap) * (var(--grid-column-count) - 1)) / var(--grid-column-count));
    --vertical-breather: 36px;
    --vertical-breather-tight: 36px;
    /* Shopify related variables */
    --payment-terms-background-color: #ffffff;
}

@media screen and (min-width: 741px) {
    :root {
        --container-gutter: 40px;
        --grid-column-count: 20;
        --vertical-breather: 48px;
        --vertical-breather-tight: 48px;
        /* Typography (font size) */
        --heading-xsmall-font-size: 13px;
        --heading-small-font-size: 14px;
        --heading-large-font-size: 58px;
        --heading-h1-font-size: 58px;
        --heading-h2-font-size: 44px;
        --heading-h3-font-size: 36px;
        --heading-h4-font-size: 28px;
        --heading-h5-font-size: 22px;
        --heading-h6-font-size: 20px;
        /* Form related */
        --form-input-field-height: 52px;
        --form-submit-margin: 32px;
        /* Button size */
        --button-height: 52px;
        --button-small-height: 44px;
    }
}

@media screen and (min-width: 1200px) {
    :root {
        --vertical-breather: 64px;
        --vertical-breather-tight: 48px;
        --product-list-block-spacing: 48px;
        /* Typography */
        --heading-large-font-size: 72px;
        --heading-h1-font-size: 64px;
        --heading-h2-font-size: 56px;
        --heading-h3-font-size: 46px;
        --heading-h4-font-size: 34px;
        --heading-h5-font-size: 26px;
        --heading-h6-font-size: 18px;
    }
}

@media screen and (min-width: 1600px) {
    :root {
        --vertical-breather: 64px;
        --vertical-breather-tight: 48px;
    }
}

#shopify-section-template--14990142210107__165979281960fd51c2 {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --primary-button-background: 132, 150, 250;
    --primary-button-text-color: 255, 255, 255;
    --section-background: 255, 255, 255;
}

#shopify-section-template--14990142210107__16597913833bc7a4de {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --section-background: 255, 255, 255;
}

#shopify-section-template--14990142210107__1659785944ddf391d0 {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --prev-next-button-background: 255, 255, 255;
    --prev-next-button-color: 58, 58, 72;
    --section-background: 255, 255, 255;
}

#shopify-section-template--14990142210107__1659785944ddf391d0 {
    --vertical-breather: 40px;
    /* Only on multi-column section, due to its specific usage we reduce spacing when no content */
}

/* Reduce the margin on small devices to create a slightly better layout */
@media screen and (max-width: 999px) {
    #shopify-section-template--14990142210107__1659785944ddf391d0 {
        --vertical-breather: var(--container-gutter);
    }
}

#shopify-section-template--14990142210107__1659805586b6346581 {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --prev-next-button-background: 255, 255, 255;
    --prev-next-button-color: 58, 58, 72;
    --section-background: 255, 255, 255;
}

#shopify-section-template--14990142210107__1659807131fe6837b9 {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --primary-button-background: 132, 150, 250;
    --primary-button-text-color: 255, 255, 255;
    --section-background: 255, 255, 255;
}

#shopify-section-template--14990142210107__16598059184712129d {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --primary-button-background: 132, 150, 250;
    --primary-button-text-color: 255, 255, 255;
    --section-background: 255, 255, 255;
}

#shopify-section-template--14990142210107__1659806385d85c0398 {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --section-background: 255, 255, 255;
}

#shopify-section-template--14990142210107__1659806485996138e0 {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --prev-next-button-background: 255, 255, 255;
    --prev-next-button-color: 58, 58, 72;
    --section-background: 255, 255, 255;
}

#shopify-section-template--14990142210107__1659806485996138e0 {
    --vertical-breather: 40px;
    /* Only on multi-column section, due to its specific usage we reduce spacing when no content */
}

/* Reduce the margin on small devices to create a slightly better layout */
@media screen and (max-width: 999px) {
    #shopify-section-template--14990142210107__1659806485996138e0 {
        --vertical-breather: var(--container-gutter);
    }
}

#shopify-section-template--14990142210107__1659806728b80a5809 {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --prev-next-button-background: 255, 255, 255;
    --prev-next-button-color: 58, 58, 72;
    --section-background: 255, 255, 255;
}

#shopify-section-template--14990142210107__16598147518fbda94b {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --prev-next-button-background: 255, 255, 255;
    --prev-next-button-color: 58, 58, 72;
    --section-background: 255, 255, 255;
}

#shopify-section-template--14990142210107__1659816325db0d0645 {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --primary-button-background: 132, 150, 250;
    --primary-button-text-color: 255, 255, 255;
    --section-background: 255, 255, 255;
}

#shopify-section-template--14990142210107__1659807891152b3aad {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --section-background: 255, 255, 255;
}

#shopify-section-template--14990142210107__165981560432747bec {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --section-background: 255, 255, 255;
}

#shopify-section-template--14990142210107__16604237803fe43d0a {
    --heading-color: 58, 58, 72;
    --text-color: 58, 58, 72;
    --section-background: 255, 255, 255;
}

#shopify-section-template--14990142210107__1659807891152b3aad .section__header img {
    animation: building-image-rotate-loop 1s linear infinite;
}

@keyframes building-image-rotate-loop {
    from {
        transform: rotate(0);
    }

    to {
        transform: rotate(360deg);
    }
}

.circle-loader {
    color: #808fe3;
    border: 1px solid #0003;
    border-left-color: currentColor;
    -webkit-animation-name: loader-spin;
    animation-name: loader-spin;
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    position: relative;
    display: inline-block;
    vertical-align: top;
}

.circle-loader, .circle-loader:after {
    border-radius: 50%;
    width: 4rem;
    height: 4rem;
}

.circle-loader.small {
    width: 5em;
    height: 5em;
}

.circle-loader.small .circle-loader-checkmark {
    height: 2.5em;
    width: 1.25em;
    left: 1.25em;
    top: 2.5em;
}

.circle-loader-load-success {
    border-color: currentColor;
}

.circle-loader-load-error, .circle-loader-load-success {
    -webkit-animation: none;
    animation: none;
    -webkit-transition: border 0.5s ease-out;
    transition: border 0.5s ease-out;
}

.circle-loader-load-error {
    border-color: #d0011b;
}

.circle-loader-checkmark {
    display: none;
}

.circle-loader-checkmark.draw:after {
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease;
    -webkit-animation-name: checkmark;
    animation-name: checkmark;
    -webkit-transform: scaleX(-1) rotate(135deg);
    transform: scaleX(-1) rotate(135deg);
}

.circle-loader-checkmark:after {
    opacity: 1;
    height: 50%;
    width: 25%;
    -webkit-transform-origin: left top;
    transform-origin: left top;
    border-right: 1px solid currentColor;
    border-top: 1px solid currentColor;
    content: "";
    left: 22.22222225%;
    top: 50%;
    position: absolute;
}

.circle-loader-cross {
    display: none;
}

.circle-loader-cross.draw:after {
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease;
    -webkit-animation-name: cross01;
    animation-name: cross01;
    -webkit-transform: scaleX(-1) rotate(225deg);
    transform: scaleX(-1) rotate(225deg);
}

.circle-loader-cross.draw:before {
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease;
    -webkit-animation-name: cross02;
    animation-name: cross02;
    -webkit-transform: scaleX(-1) rotate(45deg);
    transform: scaleX(-1) rotate(45deg);
}

.circle-loader-cross:after {
    width: 3.55555556rem;
    top: 5.33333333rem;
}

.circle-loader-cross:after, .circle-loader-cross:before {
    opacity: 1;
    -webkit-transform-origin: left top;
    transform-origin: left top;
    border-right: 2px solid #d0011b;
    border-top: 2px solid #d0011b;
    content: "";
    left: 2.66666667rem;
    position: absolute;
}

.circle-loader-cross:before {
    height: 3.55555556rem;
    top: 2.66666667rem;
}

.circle-loader-load-error .circle-loader-cross, .circle-loader-load-success .circle-loader-checkmark {
    display: block;
}

@-webkit-keyframes loader-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn);
    }
}

@keyframes loader-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn);
    }
}

@keyframes checkmark {
    0% {
        height: 0;
        width: 0;
        opacity: 1;
    }

    20% {
        height: 0;
        width: 25%;
        opacity: 1;
    }

    40% {
        height: 50%;
        width: 25%;
        opacity: 1;
    }

    to {
        height: 50%;
        width: 25%;
        opacity: 1;
    }
}

@-webkit-keyframes cross01 {
    0% {
        height: 0;
        width: 0;
        opacity: 1;
    }

    to {
        width: 3.55555556rem;
        opacity: 1;
    }
}

@keyframes cross01 {
    0% {
        height: 0;
        width: 0;
        opacity: 1;
    }

    to {
        width: 3.55555556rem;
        opacity: 1;
    }
}

@-webkit-keyframes cross02 {
    0% {
        height: 0;
        width: 0;
        opacity: 1;
    }

    to {
        height: 3.55555556rem;
        opacity: 1;
    }
}

@keyframes cross02 {
    0% {
        height: 0;
        width: 0;
        opacity: 1;
    }

    to {
        height: 3.55555556rem;
        opacity: 1;
    }
}

.progress-bar-block {
    width: 100%;
    padding: 0;
    margin-bottom: 40px;
}

.progress-bar-block .progress-bar {
    background: #eaeaeb;
    height: 6px;
    border-radius: 6px;
}

.progress-bar-block .progress-bar-active {
    left: 0;
    width: 0;
    transition: all 0.5s;
    will-change: width;
    height: 6px;
    background: #8496fa;
    border-radius: 6px;
}

@media only screen and (max-width: 560px) {
    .progress-bar, .progress-bar-block, .progress-bar-block .progress-bar {
        height: 3px;
    }
}

button.back {
    margin: 0 auto;
    width: auto;
    justify-self: center;
    align-self: center;
    display: block;
    color: #3A3A48;
}

button.back>.content {
    display: flex;
    align-items: center;
    font-family: auto;
}

button.back>.content .label-container {
    display: flex;
}

button.back>.content svg {
    width: 24px;
    height: auto;
    display: block;
    transition: transform 0.3s;
}

button.back:hover>.content svg {
    transform: translateX(-10px);
}

.line-item__image {
    align-self: flex-start;
}

.button.button--primary:hover {
    color: #fff;
}

.button:not(.button--text), .shopify-challenge__button, #shopify-product-reviews .spr-summary-actions-newreview, #shopify-product-reviews .spr-button {
    padding: 4px 30px;
}

.squiggle {
    display: inline-block;
}

#block-template--14990142210107__16598174099a77c920-16598174084803be13-0 {
    max-width: 500px;
    margin: 0 auto;
}

div#shopify-section-header {
    display: none;
}

.page-width.page-content {
    padding: 0;
    margin-bottom: 0;
    margin: 0;
    max-width: none;
}

div#shopify-section-footer {
    display: none;
}

.grid__item.medium-up--three-quarters.medium-up--push-one-eighth {
    padding: 0;
    width: auto;
    float: none;
    left: 0;
}

.grid {
    margin: 0;
    display: flex;
    flex-direction: column;
}

header.section-header {
    display: none;
}

.multi-column__arrow {
    visibility: visible;
    transform: none;
    opacity: 1;
}

.prev-next-button {
    display: flex;
    align-items: center;
    justify-content: center;
}

.prev-next-button svg > path {
    fill: none !important;
    stroke: currentColor !important;
}

.prev-next-button[disabled] {
    pointer-events: none;
}

[v-cloak] {
    display: none;
}

/* multi-column .multi-column__item {
    opacity: 0;
} */

/*
const animation = new CustomAnimation(new ParallelEffect(Array.from(this.querySelectorAll(".gallery__item")).map((item, index) => {
    return new CustomKeyframeEffect(item, {
      opacity: [0, 1],
      transform: [`translateY(${MediaFeatures.prefersReducedMotion() ? 0 : window.innerWidth < 1e3 ? 35 : 60}px)`, "translateY(0)"]
    }, {
      duration: 600,
      delay: prefersReducedMotion ? 0 : 100 * index,
      easing: "ease"
    });
})));
*/

multi-column[stagger-apparition-css] .multi-column__item {
    --index: 0;
    opacity: 0;
    animation: stagger-apparition-keyframes 600ms ease calc(var(--index) * 100ms) forwards;
}

multi-column[stagger-apparition-css] .multi-column__item:nth-child(1) {
    --index: 0;
}

multi-column[stagger-apparition-css] .multi-column__item:nth-child(2) {
    --index: 1;
}

multi-column[stagger-apparition-css] .multi-column__item:nth-child(3) {
    --index: 2;
}

@keyframes stagger-apparition-keyframes {
    from {
        transform: translateY(60px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

