:root {
    --primary: #4c1a3a;
    --secondary: #1b2127;
    --tertiary: #ffe642;
    --white: #fff;
    --black: #050003;
    --green: #49d135;
    --bg: #f4f4f4;
    --gray-lighter: #f4f4f4;
    --gray-light: #c4c4c4;
    --gray: #a8a8a8;
    --gray-dark: #5f5f5f;
    --overlay: rgba(0,0,0,.55);
    --transparent: transparent;
    --gold: #837550;
    --warning: #8a6d3b;
    --warning-bg: #fcf8e3;
    --success: #3c763d;
    --success-bg: #dff0d8;
    --danger: #a94442;
    --danger-bg: #f2dede;
    --notification-warning: #8a6d3b;
    --notification-warning-bg: #fcf8e3;
    --notification-warning-border: #faf2cc;
    --notification-success: #3c763d;
    --notification-success-bg: #dff0d8;
    --notification-success-border: #d0e9c6;
    --notification-danger: #a94442;
    --notification-danger-bg: #f2dede;
    --notification-danger-border: #ebcccc
}

@font-face {
    font-display: swap;
    font-family: Newsreader;
    font-style: normal;
    font-weight: 400;
    src: url(/themes/classic-fine-foods/assets/fonts/Newsreader-v11-latin-regular.woff2) format("woff2")
}

@font-face {
    font-display: swap;
    font-family: 'Work Sans';
    font-style: normal;
    font-weight: 300;
    src: url(/themes/classic-fine-foods/assets/fonts/'Work Sans'-v4-latin-300.woff2) format("woff2")
}

@font-face {
    font-display: swap;
    font-family: 'Work Sans';
    font-style: italic;
    font-weight: 300;
    src: url(/themes/classic-fine-foods/assets/fonts/'Work Sans'-v4-latin-300italic.woff2) format("woff2")
}

@font-face {
    font-display: swap;
    font-family: 'Work Sans';
    font-style: normal;
    font-weight: 400;
    src: url(/themes/classic-fine-foods/assets/fonts/'Work Sans'-v4-latin-regular.woff2) format("woff2")
}

@font-face {
    font-display: swap;
    font-family: 'Work Sans';
    font-style: italic;
    font-weight: 400;
    src: url(/themes/classic-fine-foods/assets/fonts/'Work Sans'-v4-latin-italic.woff2) format("woff2")
}

@font-face {
    font-display: swap;
    font-family: 'Work Sans';
    font-style: normal;
    font-weight: 600;
    src: url(/themes/classic-fine-foods/assets/fonts/'Work Sans'-v4-latin-600.woff2) format("woff2")
}

@font-face {
    font-display: swap;
    font-family: 'Work Sans';
    font-style: italic;
    font-weight: 600;
    src: url(/themes/classic-fine-foods/assets/fonts/'Work Sans'-v4-latin-600italic.woff2) format("woff2")
}

@font-face {
    font-display: swap;
    font-family: 'Work Sans';
    font-style: normal;
    font-weight: 700;
    src: url(/themes/classic-fine-foods/assets/fonts/'Work Sans'-v4-latin-700.woff2) format("woff2")
}

@font-face {
    font-display: swap;
    font-family: 'Work Sans';
    font-style: italic;
    font-weight: 700;
    src: url(/themes/classic-fine-foods/assets/fonts/'Work Sans'-v4-latin-700italic.woff2) format("woff2")
}

/*!
 * Bootstrap Grid v5.3.0 (https://getbootstrap.com/)
 * Copyright 2011-2023 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
.banner__overlay,.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl,.menu__container {
    --bs-gutter-x: 40px;
    --bs-gutter-y: 0;
    margin-left: auto;
    margin-right: auto;
    padding-left: calc(var(--bs-gutter-x)*.5);
    padding-right: calc(var(--bs-gutter-x)*.5);
    width: 100%
}

@media(min-width: 576px) {
    .banner__overlay,.container,.container-sm,.menu__container {
        max-width:540px
    }
}

@media(min-width: 768px) {
    .banner__overlay,.container,.container-md,.container-sm,.menu__container {
        max-width:720px
    }
}

@media(min-width: 992px) {
    .banner__overlay,.container,.container-lg,.container-md,.container-sm,.menu__container {
        max-width:960px
    }
}

@media(min-width: 1200px) {
    .banner__overlay,.container,.container-lg,.container-md,.container-sm,.container-xl,.menu__container {
        max-width:1140px
    }
}

@media(min-width: 1494px) {
    .banner__overlay,.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl,.menu__container {
        max-width:1600px
    }
}

:root {
    --bs-breakpoint-xs: 0;
    --bs-breakpoint-sm: 576px;
    --bs-breakpoint-md: 768px;
    --bs-breakpoint-lg: 992px;
    --bs-breakpoint-xl: 1200px;
    --bs-breakpoint-xxl: 1494px
}

.row {
    --bs-gutter-x: 40px;
    --bs-gutter-y: 0;
    display: flex;
    flex-wrap: wrap;
    margin-left: calc(var(--bs-gutter-x)*-.5);
    margin-right: calc(var(--bs-gutter-x)*-.5);
    margin-top: calc(var(--bs-gutter-y)*-1)
}

.row>* {
    box-sizing: border-box;
    flex-shrink: 0;
    margin-top: var(--bs-gutter-y);
    max-width: 100%;
    padding-left: calc(var(--bs-gutter-x)*.5);
    padding-right: calc(var(--bs-gutter-x)*.5);
    width: 100%
}

.col {
    flex: 1 0 0%
}

.row-cols-auto>* {
    flex: 0 0 auto;
    width: auto
}

.row-cols-1>* {
    flex: 0 0 auto;
    width: 100%
}

.row-cols-2>* {
    flex: 0 0 auto;
    width: 50%
}

.row-cols-3>* {
    flex: 0 0 auto;
    width: 33.3333333333%
}

.row-cols-4>* {
    flex: 0 0 auto;
    width: 25%
}

.row-cols-5>* {
    flex: 0 0 auto;
    width: 20%
}

.row-cols-6>* {
    flex: 0 0 auto;
    width: 16.6666666667%
}

.col-auto {
    flex: 0 0 auto;
    width: auto
}

.col-1 {
    flex: 0 0 auto;
    width: 8.33333333%
}

.col-2 {
    flex: 0 0 auto;
    width: 16.66666667%
}

.col-3 {
    flex: 0 0 auto;
    width: 25%
}

.col-4 {
    flex: 0 0 auto;
    width: 33.33333333%
}

.col-5 {
    flex: 0 0 auto;
    width: 41.66666667%
}

.col-6 {
    flex: 0 0 auto;
    width: 50%
}

.col-7 {
    flex: 0 0 auto;
    width: 58.33333333%
}

.col-8 {
    flex: 0 0 auto;
    width: 66.66666667%
}

.col-9 {
    flex: 0 0 auto;
    width: 75%
}

.col-10 {
    flex: 0 0 auto;
    width: 83.33333333%
}

.col-11 {
    flex: 0 0 auto;
    width: 91.66666667%
}

.col-12 {
    flex: 0 0 auto;
    width: 100%
}

.offset-1 {
    margin-left: 8.33333333%
}

.offset-2 {
    margin-left: 16.66666667%
}

.offset-3 {
    margin-left: 25%
}

.offset-4 {
    margin-left: 33.33333333%
}

.offset-5 {
    margin-left: 41.66666667%
}

.offset-6 {
    margin-left: 50%
}

.offset-7 {
    margin-left: 58.33333333%
}

.offset-8 {
    margin-left: 66.66666667%
}

.offset-9 {
    margin-left: 75%
}

.offset-10 {
    margin-left: 83.33333333%
}

.offset-11 {
    margin-left: 91.66666667%
}

.g-0,.gx-0 {
    --bs-gutter-x: 0
}

.g-0,.gy-0 {
    --bs-gutter-y: 0
}

.g-1,.gx-1 {
    --bs-gutter-x: 0.25rem
}

.g-1,.gy-1 {
    --bs-gutter-y: 0.25rem
}

.g-2,.gx-2 {
    --bs-gutter-x: 0.5rem
}

.g-2,.gy-2 {
    --bs-gutter-y: 0.5rem
}

.g-3,.gx-3 {
    --bs-gutter-x: 1rem
}

.g-3,.gy-3 {
    --bs-gutter-y: 1rem
}

.g-4,.gx-4 {
    --bs-gutter-x: 1.5rem
}

.g-4,.gy-4 {
    --bs-gutter-y: 1.5rem
}

.g-5,.gx-5 {
    --bs-gutter-x: 3rem
}

.g-5,.gy-5 {
    --bs-gutter-y: 3rem
}

@media(min-width: 576px) {
    .col-sm {
        flex:1 0 0%
    }

    .row-cols-sm-auto>* {
        flex: 0 0 auto;
        width: auto
    }

    .row-cols-sm-1>* {
        flex: 0 0 auto;
        width: 100%
    }

    .row-cols-sm-2>* {
        flex: 0 0 auto;
        width: 50%
    }

    .row-cols-sm-3>* {
        flex: 0 0 auto;
        width: 33.3333333333%
    }

    .row-cols-sm-4>* {
        flex: 0 0 auto;
        width: 25%
    }

    .row-cols-sm-5>* {
        flex: 0 0 auto;
        width: 20%
    }

    .row-cols-sm-6>* {
        flex: 0 0 auto;
        width: 16.6666666667%
    }

    .col-sm-auto {
        flex: 0 0 auto;
        width: auto
    }

    .col-sm-1 {
        flex: 0 0 auto;
        width: 8.33333333%
    }

    .col-sm-2 {
        flex: 0 0 auto;
        width: 16.66666667%
    }

    .col-sm-3 {
        flex: 0 0 auto;
        width: 25%
    }

    .col-sm-4 {
        flex: 0 0 auto;
        width: 33.33333333%
    }

    .col-sm-5 {
        flex: 0 0 auto;
        width: 41.66666667%
    }

    .col-sm-6 {
        flex: 0 0 auto;
        width: 50%
    }

    .col-sm-7 {
        flex: 0 0 auto;
        width: 58.33333333%
    }

    .col-sm-8 {
        flex: 0 0 auto;
        width: 66.66666667%
    }

    .col-sm-9 {
        flex: 0 0 auto;
        width: 75%
    }

    .col-sm-10 {
        flex: 0 0 auto;
        width: 83.33333333%
    }

    .col-sm-11 {
        flex: 0 0 auto;
        width: 91.66666667%
    }

    .col-sm-12 {
        flex: 0 0 auto;
        width: 100%
    }

    .offset-sm-0 {
        margin-left: 0
    }

    .offset-sm-1 {
        margin-left: 8.33333333%
    }

    .offset-sm-2 {
        margin-left: 16.66666667%
    }

    .offset-sm-3 {
        margin-left: 25%
    }

    .offset-sm-4 {
        margin-left: 33.33333333%
    }

    .offset-sm-5 {
        margin-left: 41.66666667%
    }

    .offset-sm-6 {
        margin-left: 50%
    }

    .offset-sm-7 {
        margin-left: 58.33333333%
    }

    .offset-sm-8 {
        margin-left: 66.66666667%
    }

    .offset-sm-9 {
        margin-left: 75%
    }

    .offset-sm-10 {
        margin-left: 83.33333333%
    }

    .offset-sm-11 {
        margin-left: 91.66666667%
    }

    .g-sm-0,.gx-sm-0 {
        --bs-gutter-x: 0
    }

    .g-sm-0,.gy-sm-0 {
        --bs-gutter-y: 0
    }

    .g-sm-1,.gx-sm-1 {
        --bs-gutter-x: 0.25rem
    }

    .g-sm-1,.gy-sm-1 {
        --bs-gutter-y: 0.25rem
    }

    .g-sm-2,.gx-sm-2 {
        --bs-gutter-x: 0.5rem
    }

    .g-sm-2,.gy-sm-2 {
        --bs-gutter-y: 0.5rem
    }

    .g-sm-3,.gx-sm-3 {
        --bs-gutter-x: 1rem
    }

    .g-sm-3,.gy-sm-3 {
        --bs-gutter-y: 1rem
    }

    .g-sm-4,.gx-sm-4 {
        --bs-gutter-x: 1.5rem
    }

    .g-sm-4,.gy-sm-4 {
        --bs-gutter-y: 1.5rem
    }

    .g-sm-5,.gx-sm-5 {
        --bs-gutter-x: 3rem
    }

    .g-sm-5,.gy-sm-5 {
        --bs-gutter-y: 3rem
    }
}

@media(min-width: 768px) {
    .col-md {
        flex:1 0 0%
    }

    .row-cols-md-auto>* {
        flex: 0 0 auto;
        width: auto
    }

    .row-cols-md-1>* {
        flex: 0 0 auto;
        width: 100%
    }

    .row-cols-md-2>* {
        flex: 0 0 auto;
        width: 50%
    }

    .row-cols-md-3>* {
        flex: 0 0 auto;
        width: 33.3333333333%
    }

    .row-cols-md-4>* {
        flex: 0 0 auto;
        width: 25%
    }

    .row-cols-md-5>* {
        flex: 0 0 auto;
        width: 20%
    }

    .row-cols-md-6>* {
        flex: 0 0 auto;
        width: 16.6666666667%
    }

    .col-md-auto {
        flex: 0 0 auto;
        width: auto
    }

    .col-md-1 {
        flex: 0 0 auto;
        width: 8.33333333%
    }

    .col-md-2 {
        flex: 0 0 auto;
        width: 16.66666667%
    }

    .col-md-3 {
        flex: 0 0 auto;
        width: 25%
    }

    .col-md-4 {
        flex: 0 0 auto;
        width: 33.33333333%
    }

    .col-md-5 {
        flex: 0 0 auto;
        width: 41.66666667%
    }

    .col-md-6 {
        flex: 0 0 auto;
        width: 50%
    }

    .col-md-7 {
        flex: 0 0 auto;
        width: 58.33333333%
    }

    .col-md-8 {
        flex: 0 0 auto;
        width: 66.66666667%
    }

    .col-md-9 {
        flex: 0 0 auto;
        width: 75%
    }

    .col-md-10 {
        flex: 0 0 auto;
        width: 83.33333333%
    }

    .col-md-11 {
        flex: 0 0 auto;
        width: 91.66666667%
    }

    .col-md-12 {
        flex: 0 0 auto;
        width: 100%
    }

    .offset-md-0 {
        margin-left: 0
    }

    .offset-md-1 {
        margin-left: 8.33333333%
    }

    .offset-md-2 {
        margin-left: 16.66666667%
    }

    .offset-md-3 {
        margin-left: 25%
    }

    .offset-md-4 {
        margin-left: 33.33333333%
    }

    .offset-md-5 {
        margin-left: 41.66666667%
    }

    .offset-md-6 {
        margin-left: 50%
    }

    .offset-md-7 {
        margin-left: 58.33333333%
    }

    .offset-md-8 {
        margin-left: 66.66666667%
    }

    .offset-md-9 {
        margin-left: 75%
    }

    .offset-md-10 {
        margin-left: 83.33333333%
    }

    .offset-md-11 {
        margin-left: 91.66666667%
    }

    .g-md-0,.gx-md-0 {
        --bs-gutter-x: 0
    }

    .g-md-0,.gy-md-0 {
        --bs-gutter-y: 0
    }

    .g-md-1,.gx-md-1 {
        --bs-gutter-x: 0.25rem
    }

    .g-md-1,.gy-md-1 {
        --bs-gutter-y: 0.25rem
    }

    .g-md-2,.gx-md-2 {
        --bs-gutter-x: 0.5rem
    }

    .g-md-2,.gy-md-2 {
        --bs-gutter-y: 0.5rem
    }

    .g-md-3,.gx-md-3 {
        --bs-gutter-x: 1rem
    }

    .g-md-3,.gy-md-3 {
        --bs-gutter-y: 1rem
    }

    .g-md-4,.gx-md-4 {
        --bs-gutter-x: 1.5rem
    }

    .g-md-4,.gy-md-4 {
        --bs-gutter-y: 1.5rem
    }

    .g-md-5,.gx-md-5 {
        --bs-gutter-x: 3rem
    }

    .g-md-5,.gy-md-5 {
        --bs-gutter-y: 3rem
    }
}

@media(min-width: 992px) {
    .col-lg {
        flex:1 0 0%
    }

    .row-cols-lg-auto>* {
        flex: 0 0 auto;
        width: auto
    }

    .row-cols-lg-1>* {
        flex: 0 0 auto;
        width: 100%
    }

    .row-cols-lg-2>* {
        flex: 0 0 auto;
        width: 50%
    }

    .row-cols-lg-3>* {
        flex: 0 0 auto;
        width: 33.3333333333%
    }

    .row-cols-lg-4>* {
        flex: 0 0 auto;
        width: 25%
    }

    .row-cols-lg-5>* {
        flex: 0 0 auto;
        width: 20%
    }

    .row-cols-lg-6>* {
        flex: 0 0 auto;
        width: 16.6666666667%
    }

    .col-lg-auto {
        flex: 0 0 auto;
        width: auto
    }

    .col-lg-1 {
        flex: 0 0 auto;
        width: 8.33333333%
    }

    .col-lg-2 {
        flex: 0 0 auto;
        width: 16.66666667%
    }

    .col-lg-3 {
        flex: 0 0 auto;
        width: 25%
    }

    .col-lg-4 {
        flex: 0 0 auto;
        width: 33.33333333%
    }

    .col-lg-5 {
        flex: 0 0 auto;
        width: 41.66666667%
    }

    .col-lg-6 {
        flex: 0 0 auto;
        width: 50%
    }

    .col-lg-7 {
        flex: 0 0 auto;
        width: 58.33333333%
    }

    .col-lg-8 {
        flex: 0 0 auto;
        width: 66.66666667%
    }

    .col-lg-9 {
        flex: 0 0 auto;
        width: 75%
    }

    .col-lg-10 {
        flex: 0 0 auto;
        width: 83.33333333%
    }

    .col-lg-11 {
        flex: 0 0 auto;
        width: 91.66666667%
    }

    .col-lg-12 {
        flex: 0 0 auto;
        width: 100%
    }

    .offset-lg-0 {
        margin-left: 0
    }

    .offset-lg-1 {
        margin-left: 8.33333333%
    }

    .offset-lg-2 {
        margin-left: 16.66666667%
    }

    .offset-lg-3 {
        margin-left: 25%
    }

    .offset-lg-4 {
        margin-left: 33.33333333%
    }

    .offset-lg-5 {
        margin-left: 41.66666667%
    }

    .offset-lg-6 {
        margin-left: 50%
    }

    .offset-lg-7 {
        margin-left: 58.33333333%
    }

    .offset-lg-8 {
        margin-left: 66.66666667%
    }

    .offset-lg-9 {
        margin-left: 75%
    }

    .offset-lg-10 {
        margin-left: 83.33333333%
    }

    .offset-lg-11 {
        margin-left: 91.66666667%
    }

    .g-lg-0,.gx-lg-0 {
        --bs-gutter-x: 0
    }

    .g-lg-0,.gy-lg-0 {
        --bs-gutter-y: 0
    }

    .g-lg-1,.gx-lg-1 {
        --bs-gutter-x: 0.25rem
    }

    .g-lg-1,.gy-lg-1 {
        --bs-gutter-y: 0.25rem
    }

    .g-lg-2,.gx-lg-2 {
        --bs-gutter-x: 0.5rem
    }

    .g-lg-2,.gy-lg-2 {
        --bs-gutter-y: 0.5rem
    }

    .g-lg-3,.gx-lg-3 {
        --bs-gutter-x: 1rem
    }

    .g-lg-3,.gy-lg-3 {
        --bs-gutter-y: 1rem
    }

    .g-lg-4,.gx-lg-4 {
        --bs-gutter-x: 1.5rem
    }

    .g-lg-4,.gy-lg-4 {
        --bs-gutter-y: 1.5rem
    }

    .g-lg-5,.gx-lg-5 {
        --bs-gutter-x: 3rem
    }

    .g-lg-5,.gy-lg-5 {
        --bs-gutter-y: 3rem
    }
}

@media(min-width: 1200px) {
    .col-xl {
        flex:1 0 0%
    }

    .row-cols-xl-auto>* {
        flex: 0 0 auto;
        width: auto
    }

    .row-cols-xl-1>* {
        flex: 0 0 auto;
        width: 100%
    }

    .row-cols-xl-2>* {
        flex: 0 0 auto;
        width: 50%
    }

    .row-cols-xl-3>* {
        flex: 0 0 auto;
        width: 33.3333333333%
    }

    .row-cols-xl-4>* {
        flex: 0 0 auto;
        width: 25%
    }

    .row-cols-xl-5>* {
        flex: 0 0 auto;
        width: 20%
    }

    .row-cols-xl-6>* {
        flex: 0 0 auto;
        width: 16.6666666667%
    }

    .col-xl-auto {
        flex: 0 0 auto;
        width: auto
    }

    .col-xl-1 {
        flex: 0 0 auto;
        width: 8.33333333%
    }

    .col-xl-2 {
        flex: 0 0 auto;
        width: 16.66666667%
    }

    .col-xl-3 {
        flex: 0 0 auto;
        width: 25%
    }

    .col-xl-4 {
        flex: 0 0 auto;
        width: 33.33333333%
    }

    .col-xl-5 {
        flex: 0 0 auto;
        width: 41.66666667%
    }

    .col-xl-6 {
        flex: 0 0 auto;
        width: 50%
    }

    .col-xl-7 {
        flex: 0 0 auto;
        width: 58.33333333%
    }

    .col-xl-8 {
        flex: 0 0 auto;
        width: 66.66666667%
    }

    .col-xl-9 {
        flex: 0 0 auto;
        width: 75%
    }

    .col-xl-10 {
        flex: 0 0 auto;
        width: 83.33333333%
    }

    .col-xl-11 {
        flex: 0 0 auto;
        width: 91.66666667%
    }

    .col-xl-12 {
        flex: 0 0 auto;
        width: 100%
    }

    .offset-xl-0 {
        margin-left: 0
    }

    .offset-xl-1 {
        margin-left: 8.33333333%
    }

    .offset-xl-2 {
        margin-left: 16.66666667%
    }

    .offset-xl-3 {
        margin-left: 25%
    }

    .offset-xl-4 {
        margin-left: 33.33333333%
    }

    .offset-xl-5 {
        margin-left: 41.66666667%
    }

    .offset-xl-6 {
        margin-left: 50%
    }

    .offset-xl-7 {
        margin-left: 58.33333333%
    }

    .offset-xl-8 {
        margin-left: 66.66666667%
    }

    .offset-xl-9 {
        margin-left: 75%
    }

    .offset-xl-10 {
        margin-left: 83.33333333%
    }

    .offset-xl-11 {
        margin-left: 91.66666667%
    }

    .g-xl-0,.gx-xl-0 {
        --bs-gutter-x: 0
    }

    .g-xl-0,.gy-xl-0 {
        --bs-gutter-y: 0
    }

    .g-xl-1,.gx-xl-1 {
        --bs-gutter-x: 0.25rem
    }

    .g-xl-1,.gy-xl-1 {
        --bs-gutter-y: 0.25rem
    }

    .g-xl-2,.gx-xl-2 {
        --bs-gutter-x: 0.5rem
    }

    .g-xl-2,.gy-xl-2 {
        --bs-gutter-y: 0.5rem
    }

    .g-xl-3,.gx-xl-3 {
        --bs-gutter-x: 1rem
    }

    .g-xl-3,.gy-xl-3 {
        --bs-gutter-y: 1rem
    }

    .g-xl-4,.gx-xl-4 {
        --bs-gutter-x: 1.5rem
    }

    .g-xl-4,.gy-xl-4 {
        --bs-gutter-y: 1.5rem
    }

    .g-xl-5,.gx-xl-5 {
        --bs-gutter-x: 3rem
    }

    .g-xl-5,.gy-xl-5 {
        --bs-gutter-y: 3rem
    }
}

@media(min-width: 1494px) {
    .col-xxl {
        flex:1 0 0%
    }

    .row-cols-xxl-auto>* {
        flex: 0 0 auto;
        width: auto
    }

    .row-cols-xxl-1>* {
        flex: 0 0 auto;
        width: 100%
    }

    .row-cols-xxl-2>* {
        flex: 0 0 auto;
        width: 50%
    }

    .row-cols-xxl-3>* {
        flex: 0 0 auto;
        width: 33.3333333333%
    }

    .row-cols-xxl-4>* {
        flex: 0 0 auto;
        width: 25%
    }

    .row-cols-xxl-5>* {
        flex: 0 0 auto;
        width: 20%
    }

    .row-cols-xxl-6>* {
        flex: 0 0 auto;
        width: 16.6666666667%
    }

    .col-xxl-auto {
        flex: 0 0 auto;
        width: auto
    }

    .col-xxl-1 {
        flex: 0 0 auto;
        width: 8.33333333%
    }

    .col-xxl-2 {
        flex: 0 0 auto;
        width: 16.66666667%
    }

    .col-xxl-3 {
        flex: 0 0 auto;
        width: 25%
    }

    .col-xxl-4 {
        flex: 0 0 auto;
        width: 33.33333333%
    }

    .col-xxl-5 {
        flex: 0 0 auto;
        width: 41.66666667%
    }

    .col-xxl-6 {
        flex: 0 0 auto;
        width: 50%
    }

    .col-xxl-7 {
        flex: 0 0 auto;
        width: 58.33333333%
    }

    .col-xxl-8 {
        flex: 0 0 auto;
        width: 66.66666667%
    }

    .col-xxl-9 {
        flex: 0 0 auto;
        width: 75%
    }

    .col-xxl-10 {
        flex: 0 0 auto;
        width: 83.33333333%
    }

    .col-xxl-11 {
        flex: 0 0 auto;
        width: 91.66666667%
    }

    .col-xxl-12 {
        flex: 0 0 auto;
        width: 100%
    }

    .offset-xxl-0 {
        margin-left: 0
    }

    .offset-xxl-1 {
        margin-left: 8.33333333%
    }

    .offset-xxl-2 {
        margin-left: 16.66666667%
    }

    .offset-xxl-3 {
        margin-left: 25%
    }

    .offset-xxl-4 {
        margin-left: 33.33333333%
    }

    .offset-xxl-5 {
        margin-left: 41.66666667%
    }

    .offset-xxl-6 {
        margin-left: 50%
    }

    .offset-xxl-7 {
        margin-left: 58.33333333%
    }

    .offset-xxl-8 {
        margin-left: 66.66666667%
    }

    .offset-xxl-9 {
        margin-left: 75%
    }

    .offset-xxl-10 {
        margin-left: 83.33333333%
    }

    .offset-xxl-11 {
        margin-left: 91.66666667%
    }

    .g-xxl-0,.gx-xxl-0 {
        --bs-gutter-x: 0
    }

    .g-xxl-0,.gy-xxl-0 {
        --bs-gutter-y: 0
    }

    .g-xxl-1,.gx-xxl-1 {
        --bs-gutter-x: 0.25rem
    }

    .g-xxl-1,.gy-xxl-1 {
        --bs-gutter-y: 0.25rem
    }

    .g-xxl-2,.gx-xxl-2 {
        --bs-gutter-x: 0.5rem
    }

    .g-xxl-2,.gy-xxl-2 {
        --bs-gutter-y: 0.5rem
    }

    .g-xxl-3,.gx-xxl-3 {
        --bs-gutter-x: 1rem
    }

    .g-xxl-3,.gy-xxl-3 {
        --bs-gutter-y: 1rem
    }

    .g-xxl-4,.gx-xxl-4 {
        --bs-gutter-x: 1.5rem
    }

    .g-xxl-4,.gy-xxl-4 {
        --bs-gutter-y: 1.5rem
    }

    .g-xxl-5,.gx-xxl-5 {
        --bs-gutter-x: 3rem
    }

    .g-xxl-5,.gy-xxl-5 {
        --bs-gutter-y: 3rem
    }
}

@media(min-width: 576px) {
    .d-sm-inline {
        display:inline!important
    }

    .d-sm-inline-block {
        display: inline-block!important
    }

    .d-sm-block {
        display: block!important
    }

    .d-sm-grid {
        display: grid!important
    }

    .d-sm-inline-grid {
        display: inline-grid!important
    }

    .d-sm-table {
        display: table!important
    }

    .d-sm-table-row {
        display: table-row!important
    }

    .d-sm-table-cell {
        display: table-cell!important
    }

    .d-sm-flex {
        display: flex!important
    }

    .d-sm-inline-flex {
        display: inline-flex!important
    }

    .d-sm-none {
        display: none!important
    }

    .flex-sm-fill {
        flex: 1 1 auto!important
    }

    .flex-sm-row {
        flex-direction: row!important
    }

    .flex-sm-column {
        flex-direction: column!important
    }

    .flex-sm-row-reverse {
        flex-direction: row-reverse!important
    }

    .flex-sm-column-reverse {
        flex-direction: column-reverse!important
    }

    .flex-sm-grow-0 {
        flex-grow: 0!important
    }

    .flex-sm-grow-1 {
        flex-grow: 1!important
    }

    .flex-sm-shrink-0 {
        flex-shrink: 0!important
    }

    .flex-sm-shrink-1 {
        flex-shrink: 1!important
    }

    .flex-sm-wrap {
        flex-wrap: wrap!important
    }

    .flex-sm-nowrap {
        flex-wrap: nowrap!important
    }

    .flex-sm-wrap-reverse {
        flex-wrap: wrap-reverse!important
    }

    .justify-content-sm-start {
        justify-content: flex-start!important
    }

    .justify-content-sm-end {
        justify-content: flex-end!important
    }

    .justify-content-sm-center {
        justify-content: center!important
    }

    .justify-content-sm-between {
        justify-content: space-between!important
    }

    .justify-content-sm-around {
        justify-content: space-around!important
    }

    .justify-content-sm-evenly {
        justify-content: space-evenly!important
    }

    .align-items-sm-start {
        align-items: flex-start!important
    }

    .align-items-sm-end {
        align-items: flex-end!important
    }

    .align-items-sm-center {
        align-items: center!important
    }

    .align-items-sm-baseline {
        align-items: baseline!important
    }

    .align-items-sm-stretch {
        align-items: stretch!important
    }

    .align-content-sm-start {
        align-content: flex-start!important
    }

    .align-content-sm-end {
        align-content: flex-end!important
    }

    .align-content-sm-center {
        align-content: center!important
    }

    .align-content-sm-between {
        align-content: space-between!important
    }

    .align-content-sm-around {
        align-content: space-around!important
    }

    .align-content-sm-stretch {
        align-content: stretch!important
    }

    .align-self-sm-auto {
        align-self: auto!important
    }

    .align-self-sm-start {
        align-self: flex-start!important
    }

    .align-self-sm-end {
        align-self: flex-end!important
    }

    .align-self-sm-center {
        align-self: center!important
    }

    .align-self-sm-baseline {
        align-self: baseline!important
    }

    .align-self-sm-stretch {
        align-self: stretch!important
    }

    .order-sm-first {
        order: -1!important
    }

    .order-sm-0 {
        order: 0!important
    }

    .order-sm-1 {
        order: 1!important
    }

    .order-sm-2 {
        order: 2!important
    }

    .order-sm-3 {
        order: 3!important
    }

    .order-sm-4 {
        order: 4!important
    }

    .order-sm-5 {
        order: 5!important
    }

    .order-sm-last {
        order: 6!important
    }

    .m-sm-0 {
        margin: 0!important
    }

    .m-sm-1 {
        margin: .25rem!important
    }

    .m-sm-2 {
        margin: .5rem!important
    }

    .m-sm-3 {
        margin: 1rem!important
    }

    .m-sm-4 {
        margin: 1.5rem!important
    }

    .m-sm-5 {
        margin: 3rem!important
    }

    .m-sm-auto {
        margin: auto!important
    }

    .mx-sm-0 {
        margin-left: 0!important;
        margin-right: 0!important
    }

    .mx-sm-1 {
        margin-left: .25rem!important;
        margin-right: .25rem!important
    }

    .mx-sm-2 {
        margin-left: .5rem!important;
        margin-right: .5rem!important
    }

    .mx-sm-3 {
        margin-left: 1rem!important;
        margin-right: 1rem!important
    }

    .mx-sm-4 {
        margin-left: 1.5rem!important;
        margin-right: 1.5rem!important
    }

    .mx-sm-5 {
        margin-left: 3rem!important;
        margin-right: 3rem!important
    }

    .mx-sm-auto {
        margin-left: auto!important;
        margin-right: auto!important
    }

    .my-sm-0 {
        margin-bottom: 0!important;
        margin-top: 0!important
    }

    .my-sm-1 {
        margin-bottom: .25rem!important;
        margin-top: .25rem!important
    }

    .my-sm-2 {
        margin-bottom: .5rem!important;
        margin-top: .5rem!important
    }

    .my-sm-3 {
        margin-bottom: 1rem!important;
        margin-top: 1rem!important
    }

    .my-sm-4 {
        margin-bottom: 1.5rem!important;
        margin-top: 1.5rem!important
    }

    .my-sm-5 {
        margin-bottom: 3rem!important;
        margin-top: 3rem!important
    }

    .my-sm-auto {
        margin-bottom: auto!important;
        margin-top: auto!important
    }

    .mt-sm-0 {
        margin-top: 0!important
    }

    .mt-sm-1 {
        margin-top: .25rem!important
    }

    .mt-sm-2 {
        margin-top: .5rem!important
    }

    .mt-sm-3 {
        margin-top: 1rem!important
    }

    .mt-sm-4 {
        margin-top: 1.5rem!important
    }

    .mt-sm-5 {
        margin-top: 3rem!important
    }

    .mt-sm-auto {
        margin-top: auto!important
    }

    .me-sm-0 {
        margin-right: 0!important
    }

    .me-sm-1 {
        margin-right: .25rem!important
    }

    .me-sm-2 {
        margin-right: .5rem!important
    }

    .me-sm-3 {
        margin-right: 1rem!important
    }

    .me-sm-4 {
        margin-right: 1.5rem!important
    }

    .me-sm-5 {
        margin-right: 3rem!important
    }

    .me-sm-auto {
        margin-right: auto!important
    }

    .mb-sm-0 {
        margin-bottom: 0!important
    }

    .mb-sm-1 {
        margin-bottom: .25rem!important
    }

    .mb-sm-2 {
        margin-bottom: .5rem!important
    }

    .mb-sm-3 {
        margin-bottom: 1rem!important
    }

    .mb-sm-4 {
        margin-bottom: 1.5rem!important
    }

    .mb-sm-5 {
        margin-bottom: 3rem!important
    }

    .mb-sm-auto {
        margin-bottom: auto!important
    }

    .ms-sm-0 {
        margin-left: 0!important
    }

    .ms-sm-1 {
        margin-left: .25rem!important
    }

    .ms-sm-2 {
        margin-left: .5rem!important
    }

    .ms-sm-3 {
        margin-left: 1rem!important
    }

    .ms-sm-4 {
        margin-left: 1.5rem!important
    }

    .ms-sm-5 {
        margin-left: 3rem!important
    }

    .ms-sm-auto {
        margin-left: auto!important
    }

    .p-sm-0 {
        padding: 0!important
    }

    .p-sm-1 {
        padding: .25rem!important
    }

    .p-sm-2 {
        padding: .5rem!important
    }

    .p-sm-3 {
        padding: 1rem!important
    }

    .p-sm-4 {
        padding: 1.5rem!important
    }

    .p-sm-5 {
        padding: 3rem!important
    }

    .px-sm-0 {
        padding-left: 0!important;
        padding-right: 0!important
    }

    .px-sm-1 {
        padding-left: .25rem!important;
        padding-right: .25rem!important
    }

    .px-sm-2 {
        padding-left: .5rem!important;
        padding-right: .5rem!important
    }

    .px-sm-3 {
        padding-left: 1rem!important;
        padding-right: 1rem!important
    }

    .px-sm-4 {
        padding-left: 1.5rem!important;
        padding-right: 1.5rem!important
    }

    .px-sm-5 {
        padding-left: 3rem!important;
        padding-right: 3rem!important
    }

    .py-sm-0 {
        padding-bottom: 0!important;
        padding-top: 0!important
    }

    .py-sm-1 {
        padding-bottom: .25rem!important;
        padding-top: .25rem!important
    }

    .py-sm-2 {
        padding-bottom: .5rem!important;
        padding-top: .5rem!important
    }

    .py-sm-3 {
        padding-bottom: 1rem!important;
        padding-top: 1rem!important
    }

    .py-sm-4 {
        padding-bottom: 1.5rem!important;
        padding-top: 1.5rem!important
    }

    .py-sm-5 {
        padding-bottom: 3rem!important;
        padding-top: 3rem!important
    }

    .pt-sm-0 {
        padding-top: 0!important
    }

    .pt-sm-1 {
        padding-top: .25rem!important
    }

    .pt-sm-2 {
        padding-top: .5rem!important
    }

    .pt-sm-3 {
        padding-top: 1rem!important
    }

    .pt-sm-4 {
        padding-top: 1.5rem!important
    }

    .pt-sm-5 {
        padding-top: 3rem!important
    }

    .pe-sm-0 {
        padding-right: 0!important
    }

    .pe-sm-1 {
        padding-right: .25rem!important
    }

    .pe-sm-2 {
        padding-right: .5rem!important
    }

    .pe-sm-3 {
        padding-right: 1rem!important
    }

    .pe-sm-4 {
        padding-right: 1.5rem!important
    }

    .pe-sm-5 {
        padding-right: 3rem!important
    }

    .pb-sm-0 {
        padding-bottom: 0!important
    }

    .pb-sm-1 {
        padding-bottom: .25rem!important
    }

    .pb-sm-2 {
        padding-bottom: .5rem!important
    }

    .pb-sm-3 {
        padding-bottom: 1rem!important
    }

    .pb-sm-4 {
        padding-bottom: 1.5rem!important
    }

    .pb-sm-5 {
        padding-bottom: 3rem!important
    }

    .ps-sm-0 {
        padding-left: 0!important
    }

    .ps-sm-1 {
        padding-left: .25rem!important
    }

    .ps-sm-2 {
        padding-left: .5rem!important
    }

    .ps-sm-3 {
        padding-left: 1rem!important
    }

    .ps-sm-4 {
        padding-left: 1.5rem!important
    }

    .ps-sm-5 {
        padding-left: 3rem!important
    }
}

@media(min-width: 768px) {
    .d-md-inline {
        display:inline!important
    }

    .d-md-inline-block {
        display: inline-block!important
    }

    .d-md-block {
        display: block!important
    }

    .d-md-grid {
        display: grid!important
    }

    .d-md-inline-grid {
        display: inline-grid!important
    }

    .d-md-table {
        display: table!important
    }

    .d-md-table-row {
        display: table-row!important
    }

    .d-md-table-cell {
        display: table-cell!important
    }

    .d-md-flex {
        display: flex!important
    }

    .d-md-inline-flex {
        display: inline-flex!important
    }

    .d-md-none {
        display: none!important
    }

    .flex-md-fill {
        flex: 1 1 auto!important
    }

    .flex-md-row {
        flex-direction: row!important
    }

    .flex-md-column {
        flex-direction: column!important
    }

    .flex-md-row-reverse {
        flex-direction: row-reverse!important
    }

    .flex-md-column-reverse {
        flex-direction: column-reverse!important
    }

    .flex-md-grow-0 {
        flex-grow: 0!important
    }

    .flex-md-grow-1 {
        flex-grow: 1!important
    }

    .flex-md-shrink-0 {
        flex-shrink: 0!important
    }

    .flex-md-shrink-1 {
        flex-shrink: 1!important
    }

    .flex-md-wrap {
        flex-wrap: wrap!important
    }

    .flex-md-nowrap {
        flex-wrap: nowrap!important
    }

    .flex-md-wrap-reverse {
        flex-wrap: wrap-reverse!important
    }

    .justify-content-md-start {
        justify-content: flex-start!important
    }

    .justify-content-md-end {
        justify-content: flex-end!important
    }

    .justify-content-md-center {
        justify-content: center!important
    }

    .justify-content-md-between {
        justify-content: space-between!important
    }

    .justify-content-md-around {
        justify-content: space-around!important
    }

    .justify-content-md-evenly {
        justify-content: space-evenly!important
    }

    .align-items-md-start {
        align-items: flex-start!important
    }

    .align-items-md-end {
        align-items: flex-end!important
    }

    .align-items-md-center {
        align-items: center!important
    }

    .align-items-md-baseline {
        align-items: baseline!important
    }

    .align-items-md-stretch {
        align-items: stretch!important
    }

    .align-content-md-start {
        align-content: flex-start!important
    }

    .align-content-md-end {
        align-content: flex-end!important
    }

    .align-content-md-center {
        align-content: center!important
    }

    .align-content-md-between {
        align-content: space-between!important
    }

    .align-content-md-around {
        align-content: space-around!important
    }

    .align-content-md-stretch {
        align-content: stretch!important
    }

    .align-self-md-auto {
        align-self: auto!important
    }

    .align-self-md-start {
        align-self: flex-start!important
    }

    .align-self-md-end {
        align-self: flex-end!important
    }

    .align-self-md-center {
        align-self: center!important
    }

    .align-self-md-baseline {
        align-self: baseline!important
    }

    .align-self-md-stretch {
        align-self: stretch!important
    }

    .order-md-first {
        order: -1!important
    }

    .order-md-0 {
        order: 0!important
    }

    .order-md-1 {
        order: 1!important
    }

    .order-md-2 {
        order: 2!important
    }

    .order-md-3 {
        order: 3!important
    }

    .order-md-4 {
        order: 4!important
    }

    .order-md-5 {
        order: 5!important
    }

    .order-md-last {
        order: 6!important
    }

    .m-md-0 {
        margin: 0!important
    }

    .m-md-1 {
        margin: .25rem!important
    }

    .m-md-2 {
        margin: .5rem!important
    }

    .m-md-3 {
        margin: 1rem!important
    }

    .m-md-4 {
        margin: 1.5rem!important
    }

    .m-md-5 {
        margin: 3rem!important
    }

    .m-md-auto {
        margin: auto!important
    }

    .mx-md-0 {
        margin-left: 0!important;
        margin-right: 0!important
    }

    .mx-md-1 {
        margin-left: .25rem!important;
        margin-right: .25rem!important
    }

    .mx-md-2 {
        margin-left: .5rem!important;
        margin-right: .5rem!important
    }

    .mx-md-3 {
        margin-left: 1rem!important;
        margin-right: 1rem!important
    }

    .mx-md-4 {
        margin-left: 1.5rem!important;
        margin-right: 1.5rem!important
    }

    .mx-md-5 {
        margin-left: 3rem!important;
        margin-right: 3rem!important
    }

    .mx-md-auto {
        margin-left: auto!important;
        margin-right: auto!important
    }

    .my-md-0 {
        margin-bottom: 0!important;
        margin-top: 0!important
    }

    .my-md-1 {
        margin-bottom: .25rem!important;
        margin-top: .25rem!important
    }

    .my-md-2 {
        margin-bottom: .5rem!important;
        margin-top: .5rem!important
    }

    .my-md-3 {
        margin-bottom: 1rem!important;
        margin-top: 1rem!important
    }

    .my-md-4 {
        margin-bottom: 1.5rem!important;
        margin-top: 1.5rem!important
    }

    .my-md-5 {
        margin-bottom: 3rem!important;
        margin-top: 3rem!important
    }

    .my-md-auto {
        margin-bottom: auto!important;
        margin-top: auto!important
    }

    .mt-md-0 {
        margin-top: 0!important
    }

    .mt-md-1 {
        margin-top: .25rem!important
    }

    .mt-md-2 {
        margin-top: .5rem!important
    }

    .mt-md-3 {
        margin-top: 1rem!important
    }

    .mt-md-4 {
        margin-top: 1.5rem!important
    }

    .mt-md-5 {
        margin-top: 3rem!important
    }

    .mt-md-auto {
        margin-top: auto!important
    }

    .me-md-0 {
        margin-right: 0!important
    }

    .me-md-1 {
        margin-right: .25rem!important
    }

    .me-md-2 {
        margin-right: .5rem!important
    }

    .me-md-3 {
        margin-right: 1rem!important
    }

    .me-md-4 {
        margin-right: 1.5rem!important
    }

    .me-md-5 {
        margin-right: 3rem!important
    }

    .me-md-auto {
        margin-right: auto!important
    }

    .mb-md-0 {
        margin-bottom: 0!important
    }

    .mb-md-1 {
        margin-bottom: .25rem!important
    }

    .mb-md-2 {
        margin-bottom: .5rem!important
    }

    .mb-md-3 {
        margin-bottom: 1rem!important
    }

    .mb-md-4 {
        margin-bottom: 1.5rem!important
    }

    .mb-md-5 {
        margin-bottom: 3rem!important
    }

    .mb-md-auto {
        margin-bottom: auto!important
    }

    .ms-md-0 {
        margin-left: 0!important
    }

    .ms-md-1 {
        margin-left: .25rem!important
    }

    .ms-md-2 {
        margin-left: .5rem!important
    }

    .ms-md-3 {
        margin-left: 1rem!important
    }

    .ms-md-4 {
        margin-left: 1.5rem!important
    }

    .ms-md-5 {
        margin-left: 3rem!important
    }

    .ms-md-auto {
        margin-left: auto!important
    }

    .p-md-0 {
        padding: 0!important
    }

    .p-md-1 {
        padding: .25rem!important
    }

    .p-md-2 {
        padding: .5rem!important
    }

    .p-md-3 {
        padding: 1rem!important
    }

    .p-md-4 {
        padding: 1.5rem!important
    }

    .p-md-5 {
        padding: 3rem!important
    }

    .px-md-0 {
        padding-left: 0!important;
        padding-right: 0!important
    }

    .px-md-1 {
        padding-left: .25rem!important;
        padding-right: .25rem!important
    }

    .px-md-2 {
        padding-left: .5rem!important;
        padding-right: .5rem!important
    }

    .px-md-3 {
        padding-left: 1rem!important;
        padding-right: 1rem!important
    }

    .px-md-4 {
        padding-left: 1.5rem!important;
        padding-right: 1.5rem!important
    }

    .px-md-5 {
        padding-left: 3rem!important;
        padding-right: 3rem!important
    }

    .py-md-0 {
        padding-bottom: 0!important;
        padding-top: 0!important
    }

    .py-md-1 {
        padding-bottom: .25rem!important;
        padding-top: .25rem!important
    }

    .py-md-2 {
        padding-bottom: .5rem!important;
        padding-top: .5rem!important
    }

    .py-md-3 {
        padding-bottom: 1rem!important;
        padding-top: 1rem!important
    }

    .py-md-4 {
        padding-bottom: 1.5rem!important;
        padding-top: 1.5rem!important
    }

    .py-md-5 {
        padding-bottom: 3rem!important;
        padding-top: 3rem!important
    }

    .pt-md-0 {
        padding-top: 0!important
    }

    .pt-md-1 {
        padding-top: .25rem!important
    }

    .pt-md-2 {
        padding-top: .5rem!important
    }

    .pt-md-3 {
        padding-top: 1rem!important
    }

    .pt-md-4 {
        padding-top: 1.5rem!important
    }

    .pt-md-5 {
        padding-top: 3rem!important
    }

    .pe-md-0 {
        padding-right: 0!important
    }

    .pe-md-1 {
        padding-right: .25rem!important
    }

    .pe-md-2 {
        padding-right: .5rem!important
    }

    .pe-md-3 {
        padding-right: 1rem!important
    }

    .pe-md-4 {
        padding-right: 1.5rem!important
    }

    .pe-md-5 {
        padding-right: 3rem!important
    }

    .pb-md-0 {
        padding-bottom: 0!important
    }

    .pb-md-1 {
        padding-bottom: .25rem!important
    }

    .pb-md-2 {
        padding-bottom: .5rem!important
    }

    .pb-md-3 {
        padding-bottom: 1rem!important
    }

    .pb-md-4 {
        padding-bottom: 1.5rem!important
    }

    .pb-md-5 {
        padding-bottom: 3rem!important
    }

    .ps-md-0 {
        padding-left: 0!important
    }

    .ps-md-1 {
        padding-left: .25rem!important
    }

    .ps-md-2 {
        padding-left: .5rem!important
    }

    .ps-md-3 {
        padding-left: 1rem!important
    }

    .ps-md-4 {
        padding-left: 1.5rem!important
    }

    .ps-md-5 {
        padding-left: 3rem!important
    }
}

@media(min-width: 992px) {
    .d-lg-inline {
        display:inline!important
    }

    .d-lg-inline-block {
        display: inline-block!important
    }

    .d-lg-block {
        display: block!important
    }

    .d-lg-grid {
        display: grid!important
    }

    .d-lg-inline-grid {
        display: inline-grid!important
    }

    .d-lg-table {
        display: table!important
    }

    .d-lg-table-row {
        display: table-row!important
    }

    .d-lg-table-cell {
        display: table-cell!important
    }

    .d-lg-flex {
        display: flex!important
    }

    .d-lg-inline-flex {
        display: inline-flex!important
    }

    .d-lg-none {
        display: none!important
    }

    .flex-lg-fill {
        flex: 1 1 auto!important
    }

    .flex-lg-row {
        flex-direction: row!important
    }

    .flex-lg-column {
        flex-direction: column!important
    }

    .flex-lg-row-reverse {
        flex-direction: row-reverse!important
    }

    .flex-lg-column-reverse {
        flex-direction: column-reverse!important
    }

    .flex-lg-grow-0 {
        flex-grow: 0!important
    }

    .flex-lg-grow-1 {
        flex-grow: 1!important
    }

    .flex-lg-shrink-0 {
        flex-shrink: 0!important
    }

    .flex-lg-shrink-1 {
        flex-shrink: 1!important
    }

    .flex-lg-wrap {
        flex-wrap: wrap!important
    }

    .flex-lg-nowrap {
        flex-wrap: nowrap!important
    }

    .flex-lg-wrap-reverse {
        flex-wrap: wrap-reverse!important
    }

    .justify-content-lg-start {
        justify-content: flex-start!important
    }

    .justify-content-lg-end {
        justify-content: flex-end!important
    }

    .justify-content-lg-center {
        justify-content: center!important
    }

    .justify-content-lg-between {
        justify-content: space-between!important
    }

    .justify-content-lg-around {
        justify-content: space-around!important
    }

    .justify-content-lg-evenly {
        justify-content: space-evenly!important
    }

    .align-items-lg-start {
        align-items: flex-start!important
    }

    .align-items-lg-end {
        align-items: flex-end!important
    }

    .align-items-lg-center {
        align-items: center!important
    }

    .align-items-lg-baseline {
        align-items: baseline!important
    }

    .align-items-lg-stretch {
        align-items: stretch!important
    }

    .align-content-lg-start {
        align-content: flex-start!important
    }

    .align-content-lg-end {
        align-content: flex-end!important
    }

    .align-content-lg-center {
        align-content: center!important
    }

    .align-content-lg-between {
        align-content: space-between!important
    }

    .align-content-lg-around {
        align-content: space-around!important
    }

    .align-content-lg-stretch {
        align-content: stretch!important
    }

    .align-self-lg-auto {
        align-self: auto!important
    }

    .align-self-lg-start {
        align-self: flex-start!important
    }

    .align-self-lg-end {
        align-self: flex-end!important
    }

    .align-self-lg-center {
        align-self: center!important
    }

    .align-self-lg-baseline {
        align-self: baseline!important
    }

    .align-self-lg-stretch {
        align-self: stretch!important
    }

    .order-lg-first {
        order: -1!important
    }

    .order-lg-0 {
        order: 0!important
    }

    .order-lg-1 {
        order: 1!important
    }

    .order-lg-2 {
        order: 2!important
    }

    .order-lg-3 {
        order: 3!important
    }

    .order-lg-4 {
        order: 4!important
    }

    .order-lg-5 {
        order: 5!important
    }

    .order-lg-last {
        order: 6!important
    }

    .m-lg-0 {
        margin: 0!important
    }

    .m-lg-1 {
        margin: .25rem!important
    }

    .m-lg-2 {
        margin: .5rem!important
    }

    .m-lg-3 {
        margin: 1rem!important
    }

    .m-lg-4 {
        margin: 1.5rem!important
    }

    .m-lg-5 {
        margin: 3rem!important
    }

    .m-lg-auto {
        margin: auto!important
    }

    .mx-lg-0 {
        margin-left: 0!important;
        margin-right: 0!important
    }

    .mx-lg-1 {
        margin-left: .25rem!important;
        margin-right: .25rem!important
    }

    .mx-lg-2 {
        margin-left: .5rem!important;
        margin-right: .5rem!important
    }

    .mx-lg-3 {
        margin-left: 1rem!important;
        margin-right: 1rem!important
    }

    .mx-lg-4 {
        margin-left: 1.5rem!important;
        margin-right: 1.5rem!important
    }

    .mx-lg-5 {
        margin-left: 3rem!important;
        margin-right: 3rem!important
    }

    .mx-lg-auto {
        margin-left: auto!important;
        margin-right: auto!important
    }

    .my-lg-0 {
        margin-bottom: 0!important;
        margin-top: 0!important
    }

    .my-lg-1 {
        margin-bottom: .25rem!important;
        margin-top: .25rem!important
    }

    .my-lg-2 {
        margin-bottom: .5rem!important;
        margin-top: .5rem!important
    }

    .my-lg-3 {
        margin-bottom: 1rem!important;
        margin-top: 1rem!important
    }

    .my-lg-4 {
        margin-bottom: 1.5rem!important;
        margin-top: 1.5rem!important
    }

    .my-lg-5 {
        margin-bottom: 3rem!important;
        margin-top: 3rem!important
    }

    .my-lg-auto {
        margin-bottom: auto!important;
        margin-top: auto!important
    }

    .mt-lg-0 {
        margin-top: 0!important
    }

    .mt-lg-1 {
        margin-top: .25rem!important
    }

    .mt-lg-2 {
        margin-top: .5rem!important
    }

    .mt-lg-3 {
        margin-top: 1rem!important
    }

    .mt-lg-4 {
        margin-top: 1.5rem!important
    }

    .mt-lg-5 {
        margin-top: 3rem!important
    }

    .mt-lg-auto {
        margin-top: auto!important
    }

    .me-lg-0 {
        margin-right: 0!important
    }

    .me-lg-1 {
        margin-right: .25rem!important
    }

    .me-lg-2 {
        margin-right: .5rem!important
    }

    .me-lg-3 {
        margin-right: 1rem!important
    }

    .me-lg-4 {
        margin-right: 1.5rem!important
    }

    .me-lg-5 {
        margin-right: 3rem!important
    }

    .me-lg-auto {
        margin-right: auto!important
    }

    .mb-lg-0 {
        margin-bottom: 0!important
    }

    .mb-lg-1 {
        margin-bottom: .25rem!important
    }

    .mb-lg-2 {
        margin-bottom: .5rem!important
    }

    .mb-lg-3 {
        margin-bottom: 1rem!important
    }

    .mb-lg-4 {
        margin-bottom: 1.5rem!important
    }

    .mb-lg-5 {
        margin-bottom: 3rem!important
    }

    .mb-lg-auto {
        margin-bottom: auto!important
    }

    .ms-lg-0 {
        margin-left: 0!important
    }

    .ms-lg-1 {
        margin-left: .25rem!important
    }

    .ms-lg-2 {
        margin-left: .5rem!important
    }

    .ms-lg-3 {
        margin-left: 1rem!important
    }

    .ms-lg-4 {
        margin-left: 1.5rem!important
    }

    .ms-lg-5 {
        margin-left: 3rem!important
    }

    .ms-lg-auto {
        margin-left: auto!important
    }

    .p-lg-0 {
        padding: 0!important
    }

    .p-lg-1 {
        padding: .25rem!important
    }

    .p-lg-2 {
        padding: .5rem!important
    }

    .p-lg-3 {
        padding: 1rem!important
    }

    .p-lg-4 {
        padding: 1.5rem!important
    }

    .p-lg-5 {
        padding: 3rem!important
    }

    .px-lg-0 {
        padding-left: 0!important;
        padding-right: 0!important
    }

    .px-lg-1 {
        padding-left: .25rem!important;
        padding-right: .25rem!important
    }

    .px-lg-2 {
        padding-left: .5rem!important;
        padding-right: .5rem!important
    }

    .px-lg-3 {
        padding-left: 1rem!important;
        padding-right: 1rem!important
    }

    .px-lg-4 {
        padding-left: 1.5rem!important;
        padding-right: 1.5rem!important
    }

    .px-lg-5 {
        padding-left: 3rem!important;
        padding-right: 3rem!important
    }

    .py-lg-0 {
        padding-bottom: 0!important;
        padding-top: 0!important
    }

    .py-lg-1 {
        padding-bottom: .25rem!important;
        padding-top: .25rem!important
    }

    .py-lg-2 {
        padding-bottom: .5rem!important;
        padding-top: .5rem!important
    }

    .py-lg-3 {
        padding-bottom: 1rem!important;
        padding-top: 1rem!important
    }

    .py-lg-4 {
        padding-bottom: 1.5rem!important;
        padding-top: 1.5rem!important
    }

    .py-lg-5 {
        padding-bottom: 3rem!important;
        padding-top: 3rem!important
    }

    .pt-lg-0 {
        padding-top: 0!important
    }

    .pt-lg-1 {
        padding-top: .25rem!important
    }

    .pt-lg-2 {
        padding-top: .5rem!important
    }

    .pt-lg-3 {
        padding-top: 1rem!important
    }

    .pt-lg-4 {
        padding-top: 1.5rem!important
    }

    .pt-lg-5 {
        padding-top: 3rem!important
    }

    .pe-lg-0 {
        padding-right: 0!important
    }

    .pe-lg-1 {
        padding-right: .25rem!important
    }

    .pe-lg-2 {
        padding-right: .5rem!important
    }

    .pe-lg-3 {
        padding-right: 1rem!important
    }

    .pe-lg-4 {
        padding-right: 1.5rem!important
    }

    .pe-lg-5 {
        padding-right: 3rem!important
    }

    .pb-lg-0 {
        padding-bottom: 0!important
    }

    .pb-lg-1 {
        padding-bottom: .25rem!important
    }

    .pb-lg-2 {
        padding-bottom: .5rem!important
    }

    .pb-lg-3 {
        padding-bottom: 1rem!important
    }

    .pb-lg-4 {
        padding-bottom: 1.5rem!important
    }

    .pb-lg-5 {
        padding-bottom: 3rem!important
    }

    .ps-lg-0 {
        padding-left: 0!important
    }

    .ps-lg-1 {
        padding-left: .25rem!important
    }

    .ps-lg-2 {
        padding-left: .5rem!important
    }

    .ps-lg-3 {
        padding-left: 1rem!important
    }

    .ps-lg-4 {
        padding-left: 1.5rem!important
    }

    .ps-lg-5 {
        padding-left: 3rem!important
    }
}

@media(min-width: 1200px) {
    .d-xl-inline {
        display:inline!important
    }

    .d-xl-inline-block {
        display: inline-block!important
    }

    .d-xl-block {
        display: block!important
    }

    .d-xl-grid {
        display: grid!important
    }

    .d-xl-inline-grid {
        display: inline-grid!important
    }

    .d-xl-table {
        display: table!important
    }

    .d-xl-table-row {
        display: table-row!important
    }

    .d-xl-table-cell {
        display: table-cell!important
    }

    .d-xl-flex {
        display: flex!important
    }

    .d-xl-inline-flex {
        display: inline-flex!important
    }

    .d-xl-none {
        display: none!important
    }

    .flex-xl-fill {
        flex: 1 1 auto!important
    }

    .flex-xl-row {
        flex-direction: row!important
    }

    .flex-xl-column {
        flex-direction: column!important
    }

    .flex-xl-row-reverse {
        flex-direction: row-reverse!important
    }

    .flex-xl-column-reverse {
        flex-direction: column-reverse!important
    }

    .flex-xl-grow-0 {
        flex-grow: 0!important
    }

    .flex-xl-grow-1 {
        flex-grow: 1!important
    }

    .flex-xl-shrink-0 {
        flex-shrink: 0!important
    }

    .flex-xl-shrink-1 {
        flex-shrink: 1!important
    }

    .flex-xl-wrap {
        flex-wrap: wrap!important
    }

    .flex-xl-nowrap {
        flex-wrap: nowrap!important
    }

    .flex-xl-wrap-reverse {
        flex-wrap: wrap-reverse!important
    }

    .justify-content-xl-start {
        justify-content: flex-start!important
    }

    .justify-content-xl-end {
        justify-content: flex-end!important
    }

    .justify-content-xl-center {
        justify-content: center!important
    }

    .justify-content-xl-between {
        justify-content: space-between!important
    }

    .justify-content-xl-around {
        justify-content: space-around!important
    }

    .justify-content-xl-evenly {
        justify-content: space-evenly!important
    }

    .align-items-xl-start {
        align-items: flex-start!important
    }

    .align-items-xl-end {
        align-items: flex-end!important
    }

    .align-items-xl-center {
        align-items: center!important
    }

    .align-items-xl-baseline {
        align-items: baseline!important
    }

    .align-items-xl-stretch {
        align-items: stretch!important
    }

    .align-content-xl-start {
        align-content: flex-start!important
    }

    .align-content-xl-end {
        align-content: flex-end!important
    }

    .align-content-xl-center {
        align-content: center!important
    }

    .align-content-xl-between {
        align-content: space-between!important
    }

    .align-content-xl-around {
        align-content: space-around!important
    }

    .align-content-xl-stretch {
        align-content: stretch!important
    }

    .align-self-xl-auto {
        align-self: auto!important
    }

    .align-self-xl-start {
        align-self: flex-start!important
    }

    .align-self-xl-end {
        align-self: flex-end!important
    }

    .align-self-xl-center {
        align-self: center!important
    }

    .align-self-xl-baseline {
        align-self: baseline!important
    }

    .align-self-xl-stretch {
        align-self: stretch!important
    }

    .order-xl-first {
        order: -1!important
    }

    .order-xl-0 {
        order: 0!important
    }

    .order-xl-1 {
        order: 1!important
    }

    .order-xl-2 {
        order: 2!important
    }

    .order-xl-3 {
        order: 3!important
    }

    .order-xl-4 {
        order: 4!important
    }

    .order-xl-5 {
        order: 5!important
    }

    .order-xl-last {
        order: 6!important
    }

    .m-xl-0 {
        margin: 0!important
    }

    .m-xl-1 {
        margin: .25rem!important
    }

    .m-xl-2 {
        margin: .5rem!important
    }

    .m-xl-3 {
        margin: 1rem!important
    }

    .m-xl-4 {
        margin: 1.5rem!important
    }

    .m-xl-5 {
        margin: 3rem!important
    }

    .m-xl-auto {
        margin: auto!important
    }

    .mx-xl-0 {
        margin-left: 0!important;
        margin-right: 0!important
    }

    .mx-xl-1 {
        margin-left: .25rem!important;
        margin-right: .25rem!important
    }

    .mx-xl-2 {
        margin-left: .5rem!important;
        margin-right: .5rem!important
    }

    .mx-xl-3 {
        margin-left: 1rem!important;
        margin-right: 1rem!important
    }

    .mx-xl-4 {
        margin-left: 1.5rem!important;
        margin-right: 1.5rem!important
    }

    .mx-xl-5 {
        margin-left: 3rem!important;
        margin-right: 3rem!important
    }

    .mx-xl-auto {
        margin-left: auto!important;
        margin-right: auto!important
    }

    .my-xl-0 {
        margin-bottom: 0!important;
        margin-top: 0!important
    }

    .my-xl-1 {
        margin-bottom: .25rem!important;
        margin-top: .25rem!important
    }

    .my-xl-2 {
        margin-bottom: .5rem!important;
        margin-top: .5rem!important
    }

    .my-xl-3 {
        margin-bottom: 1rem!important;
        margin-top: 1rem!important
    }

    .my-xl-4 {
        margin-bottom: 1.5rem!important;
        margin-top: 1.5rem!important
    }

    .my-xl-5 {
        margin-bottom: 3rem!important;
        margin-top: 3rem!important
    }

    .my-xl-auto {
        margin-bottom: auto!important;
        margin-top: auto!important
    }

    .mt-xl-0 {
        margin-top: 0!important
    }

    .mt-xl-1 {
        margin-top: .25rem!important
    }

    .mt-xl-2 {
        margin-top: .5rem!important
    }

    .mt-xl-3 {
        margin-top: 1rem!important
    }

    .mt-xl-4 {
        margin-top: 1.5rem!important
    }

    .mt-xl-5 {
        margin-top: 3rem!important
    }

    .mt-xl-auto {
        margin-top: auto!important
    }

    .me-xl-0 {
        margin-right: 0!important
    }

    .me-xl-1 {
        margin-right: .25rem!important
    }

    .me-xl-2 {
        margin-right: .5rem!important
    }

    .me-xl-3 {
        margin-right: 1rem!important
    }

    .me-xl-4 {
        margin-right: 1.5rem!important
    }

    .me-xl-5 {
        margin-right: 3rem!important
    }

    .me-xl-auto {
        margin-right: auto!important
    }

    .mb-xl-0 {
        margin-bottom: 0!important
    }

    .mb-xl-1 {
        margin-bottom: .25rem!important
    }

    .mb-xl-2 {
        margin-bottom: .5rem!important
    }

    .mb-xl-3 {
        margin-bottom: 1rem!important
    }

    .mb-xl-4 {
        margin-bottom: 1.5rem!important
    }

    .mb-xl-5 {
        margin-bottom: 3rem!important
    }

    .mb-xl-auto {
        margin-bottom: auto!important
    }

    .ms-xl-0 {
        margin-left: 0!important
    }

    .ms-xl-1 {
        margin-left: .25rem!important
    }

    .ms-xl-2 {
        margin-left: .5rem!important
    }

    .ms-xl-3 {
        margin-left: 1rem!important
    }

    .ms-xl-4 {
        margin-left: 1.5rem!important
    }

    .ms-xl-5 {
        margin-left: 3rem!important
    }

    .ms-xl-auto {
        margin-left: auto!important
    }

    .p-xl-0 {
        padding: 0!important
    }

    .p-xl-1 {
        padding: .25rem!important
    }

    .p-xl-2 {
        padding: .5rem!important
    }

    .p-xl-3 {
        padding: 1rem!important
    }

    .p-xl-4 {
        padding: 1.5rem!important
    }

    .p-xl-5 {
        padding: 3rem!important
    }

    .px-xl-0 {
        padding-left: 0!important;
        padding-right: 0!important
    }

    .px-xl-1 {
        padding-left: .25rem!important;
        padding-right: .25rem!important
    }

    .px-xl-2 {
        padding-left: .5rem!important;
        padding-right: .5rem!important
    }

    .px-xl-3 {
        padding-left: 1rem!important;
        padding-right: 1rem!important
    }

    .px-xl-4 {
        padding-left: 1.5rem!important;
        padding-right: 1.5rem!important
    }

    .px-xl-5 {
        padding-left: 3rem!important;
        padding-right: 3rem!important
    }

    .py-xl-0 {
        padding-bottom: 0!important;
        padding-top: 0!important
    }

    .py-xl-1 {
        padding-bottom: .25rem!important;
        padding-top: .25rem!important
    }

    .py-xl-2 {
        padding-bottom: .5rem!important;
        padding-top: .5rem!important
    }

    .py-xl-3 {
        padding-bottom: 1rem!important;
        padding-top: 1rem!important
    }

    .py-xl-4 {
        padding-bottom: 1.5rem!important;
        padding-top: 1.5rem!important
    }

    .py-xl-5 {
        padding-bottom: 3rem!important;
        padding-top: 3rem!important
    }

    .pt-xl-0 {
        padding-top: 0!important
    }

    .pt-xl-1 {
        padding-top: .25rem!important
    }

    .pt-xl-2 {
        padding-top: .5rem!important
    }

    .pt-xl-3 {
        padding-top: 1rem!important
    }

    .pt-xl-4 {
        padding-top: 1.5rem!important
    }

    .pt-xl-5 {
        padding-top: 3rem!important
    }

    .pe-xl-0 {
        padding-right: 0!important
    }

    .pe-xl-1 {
        padding-right: .25rem!important
    }

    .pe-xl-2 {
        padding-right: .5rem!important
    }

    .pe-xl-3 {
        padding-right: 1rem!important
    }

    .pe-xl-4 {
        padding-right: 1.5rem!important
    }

    .pe-xl-5 {
        padding-right: 3rem!important
    }

    .pb-xl-0 {
        padding-bottom: 0!important
    }

    .pb-xl-1 {
        padding-bottom: .25rem!important
    }

    .pb-xl-2 {
        padding-bottom: .5rem!important
    }

    .pb-xl-3 {
        padding-bottom: 1rem!important
    }

    .pb-xl-4 {
        padding-bottom: 1.5rem!important
    }

    .pb-xl-5 {
        padding-bottom: 3rem!important
    }

    .ps-xl-0 {
        padding-left: 0!important
    }

    .ps-xl-1 {
        padding-left: .25rem!important
    }

    .ps-xl-2 {
        padding-left: .5rem!important
    }

    .ps-xl-3 {
        padding-left: 1rem!important
    }

    .ps-xl-4 {
        padding-left: 1.5rem!important
    }

    .ps-xl-5 {
        padding-left: 3rem!important
    }
}

@media(min-width: 1494px) {
    .d-xxl-inline {
        display:inline!important
    }

    .d-xxl-inline-block {
        display: inline-block!important
    }

    .d-xxl-block {
        display: block!important
    }

    .d-xxl-grid {
        display: grid!important
    }

    .d-xxl-inline-grid {
        display: inline-grid!important
    }

    .d-xxl-table {
        display: table!important
    }

    .d-xxl-table-row {
        display: table-row!important
    }

    .d-xxl-table-cell {
        display: table-cell!important
    }

    .d-xxl-flex {
        display: flex!important
    }

    .d-xxl-inline-flex {
        display: inline-flex!important
    }

    .d-xxl-none {
        display: none!important
    }

    .flex-xxl-fill {
        flex: 1 1 auto!important
    }

    .flex-xxl-row {
        flex-direction: row!important
    }

    .flex-xxl-column {
        flex-direction: column!important
    }

    .flex-xxl-row-reverse {
        flex-direction: row-reverse!important
    }

    .flex-xxl-column-reverse {
        flex-direction: column-reverse!important
    }

    .flex-xxl-grow-0 {
        flex-grow: 0!important
    }

    .flex-xxl-grow-1 {
        flex-grow: 1!important
    }

    .flex-xxl-shrink-0 {
        flex-shrink: 0!important
    }

    .flex-xxl-shrink-1 {
        flex-shrink: 1!important
    }

    .flex-xxl-wrap {
        flex-wrap: wrap!important
    }

    .flex-xxl-nowrap {
        flex-wrap: nowrap!important
    }

    .flex-xxl-wrap-reverse {
        flex-wrap: wrap-reverse!important
    }

    .justify-content-xxl-start {
        justify-content: flex-start!important
    }

    .justify-content-xxl-end {
        justify-content: flex-end!important
    }

    .justify-content-xxl-center {
        justify-content: center!important
    }

    .justify-content-xxl-between {
        justify-content: space-between!important
    }

    .justify-content-xxl-around {
        justify-content: space-around!important
    }

    .justify-content-xxl-evenly {
        justify-content: space-evenly!important
    }

    .align-items-xxl-start {
        align-items: flex-start!important
    }

    .align-items-xxl-end {
        align-items: flex-end!important
    }

    .align-items-xxl-center {
        align-items: center!important
    }

    .align-items-xxl-baseline {
        align-items: baseline!important
    }

    .align-items-xxl-stretch {
        align-items: stretch!important
    }

    .align-content-xxl-start {
        align-content: flex-start!important
    }

    .align-content-xxl-end {
        align-content: flex-end!important
    }

    .align-content-xxl-center {
        align-content: center!important
    }

    .align-content-xxl-between {
        align-content: space-between!important
    }

    .align-content-xxl-around {
        align-content: space-around!important
    }

    .align-content-xxl-stretch {
        align-content: stretch!important
    }

    .align-self-xxl-auto {
        align-self: auto!important
    }

    .align-self-xxl-start {
        align-self: flex-start!important
    }

    .align-self-xxl-end {
        align-self: flex-end!important
    }

    .align-self-xxl-center {
        align-self: center!important
    }

    .align-self-xxl-baseline {
        align-self: baseline!important
    }

    .align-self-xxl-stretch {
        align-self: stretch!important
    }

    .order-xxl-first {
        order: -1!important
    }

    .order-xxl-0 {
        order: 0!important
    }

    .order-xxl-1 {
        order: 1!important
    }

    .order-xxl-2 {
        order: 2!important
    }

    .order-xxl-3 {
        order: 3!important
    }

    .order-xxl-4 {
        order: 4!important
    }

    .order-xxl-5 {
        order: 5!important
    }

    .order-xxl-last {
        order: 6!important
    }

    .m-xxl-0 {
        margin: 0!important
    }

    .m-xxl-1 {
        margin: .25rem!important
    }

    .m-xxl-2 {
        margin: .5rem!important
    }

    .m-xxl-3 {
        margin: 1rem!important
    }

    .m-xxl-4 {
        margin: 1.5rem!important
    }

    .m-xxl-5 {
        margin: 3rem!important
    }

    .m-xxl-auto {
        margin: auto!important
    }

    .mx-xxl-0 {
        margin-left: 0!important;
        margin-right: 0!important
    }

    .mx-xxl-1 {
        margin-left: .25rem!important;
        margin-right: .25rem!important
    }

    .mx-xxl-2 {
        margin-left: .5rem!important;
        margin-right: .5rem!important
    }

    .mx-xxl-3 {
        margin-left: 1rem!important;
        margin-right: 1rem!important
    }

    .mx-xxl-4 {
        margin-left: 1.5rem!important;
        margin-right: 1.5rem!important
    }

    .mx-xxl-5 {
        margin-left: 3rem!important;
        margin-right: 3rem!important
    }

    .mx-xxl-auto {
        margin-left: auto!important;
        margin-right: auto!important
    }

    .my-xxl-0 {
        margin-bottom: 0!important;
        margin-top: 0!important
    }

    .my-xxl-1 {
        margin-bottom: .25rem!important;
        margin-top: .25rem!important
    }

    .my-xxl-2 {
        margin-bottom: .5rem!important;
        margin-top: .5rem!important
    }

    .my-xxl-3 {
        margin-bottom: 1rem!important;
        margin-top: 1rem!important
    }

    .my-xxl-4 {
        margin-bottom: 1.5rem!important;
        margin-top: 1.5rem!important
    }

    .my-xxl-5 {
        margin-bottom: 3rem!important;
        margin-top: 3rem!important
    }

    .my-xxl-auto {
        margin-bottom: auto!important;
        margin-top: auto!important
    }

    .mt-xxl-0 {
        margin-top: 0!important
    }

    .mt-xxl-1 {
        margin-top: .25rem!important
    }

    .mt-xxl-2 {
        margin-top: .5rem!important
    }

    .mt-xxl-3 {
        margin-top: 1rem!important
    }

    .mt-xxl-4 {
        margin-top: 1.5rem!important
    }

    .mt-xxl-5 {
        margin-top: 3rem!important
    }

    .mt-xxl-auto {
        margin-top: auto!important
    }

    .me-xxl-0 {
        margin-right: 0!important
    }

    .me-xxl-1 {
        margin-right: .25rem!important
    }

    .me-xxl-2 {
        margin-right: .5rem!important
    }

    .me-xxl-3 {
        margin-right: 1rem!important
    }

    .me-xxl-4 {
        margin-right: 1.5rem!important
    }

    .me-xxl-5 {
        margin-right: 3rem!important
    }

    .me-xxl-auto {
        margin-right: auto!important
    }

    .mb-xxl-0 {
        margin-bottom: 0!important
    }

    .mb-xxl-1 {
        margin-bottom: .25rem!important
    }

    .mb-xxl-2 {
        margin-bottom: .5rem!important
    }

    .mb-xxl-3 {
        margin-bottom: 1rem!important
    }

    .mb-xxl-4 {
        margin-bottom: 1.5rem!important
    }

    .mb-xxl-5 {
        margin-bottom: 3rem!important
    }

    .mb-xxl-auto {
        margin-bottom: auto!important
    }

    .ms-xxl-0 {
        margin-left: 0!important
    }

    .ms-xxl-1 {
        margin-left: .25rem!important
    }

    .ms-xxl-2 {
        margin-left: .5rem!important
    }

    .ms-xxl-3 {
        margin-left: 1rem!important
    }

    .ms-xxl-4 {
        margin-left: 1.5rem!important
    }

    .ms-xxl-5 {
        margin-left: 3rem!important
    }

    .ms-xxl-auto {
        margin-left: auto!important
    }

    .p-xxl-0 {
        padding: 0!important
    }

    .p-xxl-1 {
        padding: .25rem!important
    }

    .p-xxl-2 {
        padding: .5rem!important
    }

    .p-xxl-3 {
        padding: 1rem!important
    }

    .p-xxl-4 {
        padding: 1.5rem!important
    }

    .p-xxl-5 {
        padding: 3rem!important
    }

    .px-xxl-0 {
        padding-left: 0!important;
        padding-right: 0!important
    }

    .px-xxl-1 {
        padding-left: .25rem!important;
        padding-right: .25rem!important
    }

    .px-xxl-2 {
        padding-left: .5rem!important;
        padding-right: .5rem!important
    }

    .px-xxl-3 {
        padding-left: 1rem!important;
        padding-right: 1rem!important
    }

    .px-xxl-4 {
        padding-left: 1.5rem!important;
        padding-right: 1.5rem!important
    }

    .px-xxl-5 {
        padding-left: 3rem!important;
        padding-right: 3rem!important
    }

    .py-xxl-0 {
        padding-bottom: 0!important;
        padding-top: 0!important
    }

    .py-xxl-1 {
        padding-bottom: .25rem!important;
        padding-top: .25rem!important
    }

    .py-xxl-2 {
        padding-bottom: .5rem!important;
        padding-top: .5rem!important
    }

    .py-xxl-3 {
        padding-bottom: 1rem!important;
        padding-top: 1rem!important
    }

    .py-xxl-4 {
        padding-bottom: 1.5rem!important;
        padding-top: 1.5rem!important
    }

    .py-xxl-5 {
        padding-bottom: 3rem!important;
        padding-top: 3rem!important
    }

    .pt-xxl-0 {
        padding-top: 0!important
    }

    .pt-xxl-1 {
        padding-top: .25rem!important
    }

    .pt-xxl-2 {
        padding-top: .5rem!important
    }

    .pt-xxl-3 {
        padding-top: 1rem!important
    }

    .pt-xxl-4 {
        padding-top: 1.5rem!important
    }

    .pt-xxl-5 {
        padding-top: 3rem!important
    }

    .pe-xxl-0 {
        padding-right: 0!important
    }

    .pe-xxl-1 {
        padding-right: .25rem!important
    }

    .pe-xxl-2 {
        padding-right: .5rem!important
    }

    .pe-xxl-3 {
        padding-right: 1rem!important
    }

    .pe-xxl-4 {
        padding-right: 1.5rem!important
    }

    .pe-xxl-5 {
        padding-right: 3rem!important
    }

    .pb-xxl-0 {
        padding-bottom: 0!important
    }

    .pb-xxl-1 {
        padding-bottom: .25rem!important
    }

    .pb-xxl-2 {
        padding-bottom: .5rem!important
    }

    .pb-xxl-3 {
        padding-bottom: 1rem!important
    }

    .pb-xxl-4 {
        padding-bottom: 1.5rem!important
    }

    .pb-xxl-5 {
        padding-bottom: 3rem!important
    }

    .ps-xxl-0 {
        padding-left: 0!important
    }

    .ps-xxl-1 {
        padding-left: .25rem!important
    }

    .ps-xxl-2 {
        padding-left: .5rem!important
    }

    .ps-xxl-3 {
        padding-left: 1rem!important
    }

    .ps-xxl-4 {
        padding-left: 1.5rem!important
    }

    .ps-xxl-5 {
        padding-left: 3rem!important
    }
}

.hamburger {
    background-color: transparent;
    border: 0;
    color: inherit;
    cursor: pointer;
    display: inline-block;
    font: inherit;
    height: 100%;
    margin: 0;
    overflow: visible;
    padding-top: 1.5px!important;
    padding: 0;
    pointer-events: none;
    text-transform: none;
    transition-duration: .15s;
    transition-property: opacity,filter;
    transition-timing-function: linear
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger.is-active:hover,.hamburger:hover {
    opacity: .7
}

.hamburger.is-active .hamburger-inner,.hamburger.is-active .hamburger-inner:after,.hamburger.is-active .hamburger-inner:before {
    background-color: #fff
}

.hamburger-box {
    display: inline-block;
    height: 17px;
    position: relative;
    width: 23px
}

.hamburger-inner {
    display: block;
    margin-top: -1px;
    top: 50%
}

.hamburger-inner,.hamburger-inner:after,.hamburger-inner:before {
    background-color: #fff;
    border-radius: 4px;
    height: 2px;
    position: absolute;
    transition-duration: .15s;
    transition-property: transform;
    transition-timing-function: ease;
    width: 23px
}

.hamburger-inner:after,.hamburger-inner:before {
    content: "";
    display: block
}

.hamburger-inner:before {
    top: -7.5px
}

.hamburger-inner:after {
    bottom: -7.5px
}

.hamburger--squeeze .hamburger-inner {
    transition-duration: 75ms;
    transition-timing-function: cubic-bezier(.55,.055,.675,.19)
}

.hamburger--squeeze .hamburger-inner:before {
    transition: top 75ms ease .12s,opacity 75ms ease
}

.hamburger--squeeze .hamburger-inner:after {
    transition: bottom 75ms ease .12s,transform 75ms cubic-bezier(.55,.055,.675,.19)
}

.hamburger--squeeze.is-active .hamburger-inner {
    transform: rotate(45deg);
    transition-delay: .12s;
    transition-timing-function: cubic-bezier(.215,.61,.355,1)
}

.hamburger--squeeze.is-active .hamburger-inner:before {
    opacity: 0;
    top: 0;
    transition: top 75ms ease,opacity 75ms ease .12s
}

.hamburger--squeeze.is-active .hamburger-inner:after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 75ms ease,transform 75ms cubic-bezier(.215,.61,.355,1) .12s
}

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

html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    font-family: sans-serif;
    scroll-behavior: smooth
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background: #f4f4f4;
    color: #000;
    display: flex;
    flex-direction: column;
    font-family: 'Work Sans',sans-serif;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: .16px;
    line-height: 1.6;
    margin: 0;
    min-height: 100vh;
    overflow-x: hidden;
    text-rendering: optimizeLegibility
}

main {
    flex: 1;
    margin-top: 60px
}

@media(min-width: 576px) {
    main {
        margin-top:78px
    }
}

@media(min-width: 768px) {
    main {
        margin-top:127px
    }
}

@media(min-width: 992px) {
    main {
        margin-top:0
    }
}

a {
    color: #4c1a3a;
    text-decoration: none
}

a:hover {
    color: #260d1d;
    text-decoration: underline
}

small {
    font-size: .8rem;
    line-height: 1
}

img {
    font-size: 12px;
    max-width: 100%;
    vertical-align: middle
}

sup {
    color: red;
    display: inline-block;
    vertical-align: top
}

hr {
    background: #d8d8d8;
    border: 0;
    display: block;
    height: 1px;
    margin: 3rem 0
}

hr.sm {
    margin: 1.5rem 0
}

.grecaptcha-badge {
    display: none!important
}

.container--lg {
    max-width: 1800px
}

h1,h2,h3,h4,h5,h6 {
    font-family: Newsreader, serif;
    color: rgb(36, 26, 32);
    margin: 0px;
    font-weight: 500;
}

.h1,h1 {
    font-size: 34px
}

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

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

@media(min-width: 992px) {
    .h3,h3 {
        font-size:30px
    }
}

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

.h5,.post__title,h5 {
    font-size: 20px
}

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

p {
    margin-bottom: .8rem;
    margin-top: 0
}

.d-inline {
    display: inline!important
}

.d-inline-block {
    display: inline-block!important
}

.d-block {
    display: block!important
}

.d-grid {
    display: grid!important
}

.d-inline-grid {
    display: inline-grid!important
}

.d-table {
    display: table!important
}

.d-table-row {
    display: table-row!important
}

.d-table-cell {
    display: table-cell!important
}

.d-flex {
    display: flex!important
}

.d-inline-flex {
    display: inline-flex!important
}

.d-none {
    display: none!important
}

.position-static {
    position: static!important
}

.position-relative {
    position: relative!important
}

.position-absolute {
    position: absolute!important
}

.position-fixed {
    position: fixed!important
}

.position-sticky {
    position: sticky!important
}

.w-25 {
    width: 25%!important
}

.w-50 {
    width: 50%!important
}

.w-75 {
    width: 75%!important
}

.w-100 {
    width: 100%!important
}

.w-auto {
    width: auto!important
}

.h-25 {
    height: 25%!important
}

.h-50 {
    height: 50%!important
}

.h-75 {
    height: 75%!important
}

.h-100 {
    height: 100%!important
}

.h-auto {
    height: auto!important
}

.flex-fill {
    flex: 1 1 auto!important
}

.flex-row {
    flex-direction: row!important
}

.flex-column {
    flex-direction: column!important
}

.flex-row-reverse {
    flex-direction: row-reverse!important
}

.flex-column-reverse {
    flex-direction: column-reverse!important
}

.flex-grow-0 {
    flex-grow: 0!important
}

.flex-grow-1 {
    flex-grow: 1!important
}

.flex-shrink-0 {
    flex-shrink: 0!important
}

.flex-shrink-1 {
    flex-shrink: 1!important
}

.flex-wrap {
    flex-wrap: wrap!important
}

.flex-nowrap {
    flex-wrap: nowrap!important
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse!important
}

.justify-content-start {
    justify-content: flex-start!important
}

.justify-content-end {
    justify-content: flex-end!important
}

.justify-content-center {
    justify-content: center!important
}

.justify-content-between {
    justify-content: space-between!important
}

.justify-content-around {
    justify-content: space-around!important
}

.justify-content-evenly {
    justify-content: space-evenly!important
}

.align-items-start {
    align-items: flex-start!important
}

.align-items-end {
    align-items: flex-end!important
}

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

.align-items-baseline {
    align-items: baseline!important
}

.align-items-stretch {
    align-items: stretch!important
}

.align-content-start {
    align-content: flex-start!important
}

.align-content-end {
    align-content: flex-end!important
}

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

.align-content-between {
    align-content: space-between!important
}

.align-content-around {
    align-content: space-around!important
}

.align-content-stretch {
    align-content: stretch!important
}

.align-self-auto {
    align-self: auto!important
}

.align-self-start {
    align-self: flex-start!important
}

.align-self-end {
    align-self: flex-end!important
}

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

.align-self-baseline {
    align-self: baseline!important
}

.align-self-stretch {
    align-self: stretch!important
}

.order-first {
    order: -1!important
}

.order-0 {
    order: 0!important
}

.order-1 {
    order: 1!important
}

.order-2 {
    order: 2!important
}

.order-3 {
    order: 3!important
}

.order-4 {
    order: 4!important
}

.order-5 {
    order: 5!important
}

.order-last {
    order: 6!important
}

.m-0 {
    margin: 0!important
}

.m-1 {
    margin: .25rem!important
}

.m-2 {
    margin: .5rem!important
}

.m-3 {
    margin: 1rem!important
}

.m-4 {
    margin: 1.5rem!important
}

.m-5 {
    margin: 3rem!important
}

.m-auto {
    margin: auto!important
}

.mx-0 {
    margin-left: 0!important;
    margin-right: 0!important
}

.mx-1 {
    margin-left: .25rem!important;
    margin-right: .25rem!important
}

.mx-2 {
    margin-left: .5rem!important;
    margin-right: .5rem!important
}

.mx-3 {
    margin-left: 1rem!important;
    margin-right: 1rem!important
}

.mx-4 {
    margin-left: 1.5rem!important;
    margin-right: 1.5rem!important
}

.mx-5 {
    margin-left: 3rem!important;
    margin-right: 3rem!important
}

.mx-auto {
    margin-left: auto!important;
    margin-right: auto!important
}

.my-0 {
    margin-bottom: 0!important;
    margin-top: 0!important
}

.my-1 {
    margin-bottom: .25rem!important;
    margin-top: .25rem!important
}

.my-2 {
    margin-bottom: .5rem!important;
    margin-top: .5rem!important
}

.my-3 {
    margin-bottom: 1rem!important;
    margin-top: 1rem!important
}

.my-4 {
    margin-bottom: 1.5rem!important;
    margin-top: 1.5rem!important
}

.my-5 {
    margin-bottom: 3rem!important;
    margin-top: 3rem!important
}

.my-auto {
    margin-bottom: auto!important;
    margin-top: auto!important
}

.mt-0 {
    margin-top: 0!important
}

.mt-1 {
    margin-top: .25rem!important
}

.mt-2 {
    margin-top: .5rem!important
}

.mt-3 {
    margin-top: 1rem!important
}

.mt-4 {
    margin-top: 1.5rem!important
}

.mt-5 {
    margin-top: 3rem!important
}

.mt-auto {
    margin-top: auto!important
}

.me-0 {
    margin-right: 0!important
}

.me-1 {
    margin-right: .25rem!important
}

.me-2 {
    margin-right: .5rem!important
}

.me-3 {
    margin-right: 1rem!important
}

.me-4 {
    margin-right: 1.5rem!important
}

.me-5 {
    margin-right: 3rem!important
}

.me-auto {
    margin-right: auto!important
}

.mb-0 {
    margin-bottom: 0!important
}

.mb-1 {
    margin-bottom: .25rem!important
}

.mb-2 {
    margin-bottom: .5rem!important
}

.mb-3 {
    margin-bottom: 1rem!important
}

.mb-4 {
    margin-bottom: 1.5rem!important
}

.mb-5 {
    margin-bottom: 3rem!important
}

.mb-auto {
    margin-bottom: auto!important
}

.ms-0 {
    margin-left: 0!important
}

.ms-1 {
    margin-left: .25rem!important
}

.ms-2 {
    margin-left: .5rem!important
}

.ms-3 {
    margin-left: 1rem!important
}

.ms-4 {
    margin-left: 1.5rem!important
}

.ms-5 {
    margin-left: 3rem!important
}

.ms-auto {
    margin-left: auto!important
}

.p-0 {
    padding: 0!important
}

.p-1 {
    padding: .25rem!important
}

.p-2 {
    padding: .5rem!important
}

.p-3 {
    padding: 1rem!important
}

.p-4 {
    padding: 1.5rem!important
}

.p-5 {
    padding: 3rem!important
}

.px-0 {
    padding-left: 0!important;
    padding-right: 0!important
}

.px-1 {
    padding-left: .25rem!important;
    padding-right: .25rem!important
}

.px-2 {
    padding-left: .5rem!important;
    padding-right: .5rem!important
}

.px-3 {
    padding-left: 1rem!important;
    padding-right: 1rem!important
}

.px-4 {
    padding-left: 1.5rem!important;
    padding-right: 1.5rem!important
}

.px-5 {
    padding-left: 3rem!important;
    padding-right: 3rem!important
}

.py-0 {
    padding-bottom: 0!important;
    padding-top: 0!important
}

.py-1 {
    padding-bottom: .25rem!important;
    padding-top: .25rem!important
}

.py-2 {
    padding-bottom: .5rem!important;
    padding-top: .5rem!important
}

.py-3 {
    padding-bottom: 1rem!important;
    padding-top: 1rem!important
}

.py-4 {
    padding-bottom: 1.5rem!important;
    padding-top: 1.5rem!important
}

.py-5 {
    padding-bottom: 3rem!important;
    padding-top: 3rem!important
}

.pt-0 {
    padding-top: 0!important
}

.pt-1 {
    padding-top: .25rem!important
}

.pt-2 {
    padding-top: .5rem!important
}

.pt-3 {
    padding-top: 1rem!important
}

.pt-4 {
    padding-top: 1.5rem!important
}

.pt-5 {
    padding-top: 3rem!important
}

.pe-0 {
    padding-right: 0!important
}

.pe-1 {
    padding-right: .25rem!important
}

.pe-2 {
    padding-right: .5rem!important
}

.pe-3 {
    padding-right: 1rem!important
}

.pe-4 {
    padding-right: 1.5rem!important
}

.pe-5 {
    padding-right: 3rem!important
}

.pb-0 {
    padding-bottom: 0!important
}

.pb-1 {
    padding-bottom: .25rem!important
}

.pb-2 {
    padding-bottom: .5rem!important
}

.pb-3 {
    padding-bottom: 1rem!important
}

.pb-4 {
    padding-bottom: 1.5rem!important
}

.pb-5 {
    padding-bottom: 3rem!important
}

.ps-0 {
    padding-left: 0!important
}

.ps-1 {
    padding-left: .25rem!important
}

.ps-2 {
    padding-left: .5rem!important
}

.ps-3 {
    padding-left: 1rem!important
}

.ps-4 {
    padding-left: 1.5rem!important
}

.ps-5 {
    padding-left: 3rem!important
}

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

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

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

.user-select-all {
    -webkit-user-select: all!important;
    -moz-user-select: all!important;
    user-select: all!important
}

.user-select-auto {
    -webkit-user-select: auto!important;
    -moz-user-select: auto!important;
    user-select: auto!important
}

.user-select-none {
    -webkit-user-select: none!important;
    -moz-user-select: none!important;
    user-select: none!important
}

.pointer-events-none {
    pointer-events: none!important
}

.pointer-events-auto {
    pointer-events: auto!important
}

@media(min-width: 576px) {
    .d-sm-inline {
        display:inline!important
    }

    .d-sm-inline-block {
        display: inline-block!important
    }

    .d-sm-block {
        display: block!important
    }

    .d-sm-grid {
        display: grid!important
    }

    .d-sm-inline-grid {
        display: inline-grid!important
    }

    .d-sm-table {
        display: table!important
    }

    .d-sm-table-row {
        display: table-row!important
    }

    .d-sm-table-cell {
        display: table-cell!important
    }

    .d-sm-flex {
        display: flex!important
    }

    .d-sm-inline-flex {
        display: inline-flex!important
    }

    .d-sm-none {
        display: none!important
    }

    .flex-sm-fill {
        flex: 1 1 auto!important
    }

    .flex-sm-row {
        flex-direction: row!important
    }

    .flex-sm-column {
        flex-direction: column!important
    }

    .flex-sm-row-reverse {
        flex-direction: row-reverse!important
    }

    .flex-sm-column-reverse {
        flex-direction: column-reverse!important
    }

    .flex-sm-grow-0 {
        flex-grow: 0!important
    }

    .flex-sm-grow-1 {
        flex-grow: 1!important
    }

    .flex-sm-shrink-0 {
        flex-shrink: 0!important
    }

    .flex-sm-shrink-1 {
        flex-shrink: 1!important
    }

    .flex-sm-wrap {
        flex-wrap: wrap!important
    }

    .flex-sm-nowrap {
        flex-wrap: nowrap!important
    }

    .flex-sm-wrap-reverse {
        flex-wrap: wrap-reverse!important
    }

    .justify-content-sm-start {
        justify-content: flex-start!important
    }

    .justify-content-sm-end {
        justify-content: flex-end!important
    }

    .justify-content-sm-center {
        justify-content: center!important
    }

    .justify-content-sm-between {
        justify-content: space-between!important
    }

    .justify-content-sm-around {
        justify-content: space-around!important
    }

    .justify-content-sm-evenly {
        justify-content: space-evenly!important
    }

    .align-items-sm-start {
        align-items: flex-start!important
    }

    .align-items-sm-end {
        align-items: flex-end!important
    }

    .align-items-sm-center {
        align-items: center!important
    }

    .align-items-sm-baseline {
        align-items: baseline!important
    }

    .align-items-sm-stretch {
        align-items: stretch!important
    }

    .align-content-sm-start {
        align-content: flex-start!important
    }

    .align-content-sm-end {
        align-content: flex-end!important
    }

    .align-content-sm-center {
        align-content: center!important
    }

    .align-content-sm-between {
        align-content: space-between!important
    }

    .align-content-sm-around {
        align-content: space-around!important
    }

    .align-content-sm-stretch {
        align-content: stretch!important
    }

    .align-self-sm-auto {
        align-self: auto!important
    }

    .align-self-sm-start {
        align-self: flex-start!important
    }

    .align-self-sm-end {
        align-self: flex-end!important
    }

    .align-self-sm-center {
        align-self: center!important
    }

    .align-self-sm-baseline {
        align-self: baseline!important
    }

    .align-self-sm-stretch {
        align-self: stretch!important
    }

    .order-sm-first {
        order: -1!important
    }

    .order-sm-0 {
        order: 0!important
    }

    .order-sm-1 {
        order: 1!important
    }

    .order-sm-2 {
        order: 2!important
    }

    .order-sm-3 {
        order: 3!important
    }

    .order-sm-4 {
        order: 4!important
    }

    .order-sm-5 {
        order: 5!important
    }

    .order-sm-last {
        order: 6!important
    }

    .m-sm-0 {
        margin: 0!important
    }

    .m-sm-1 {
        margin: .25rem!important
    }

    .m-sm-2 {
        margin: .5rem!important
    }

    .m-sm-3 {
        margin: 1rem!important
    }

    .m-sm-4 {
        margin: 1.5rem!important
    }

    .m-sm-5 {
        margin: 3rem!important
    }

    .m-sm-auto {
        margin: auto!important
    }

    .mx-sm-0 {
        margin-left: 0!important;
        margin-right: 0!important
    }

    .mx-sm-1 {
        margin-left: .25rem!important;
        margin-right: .25rem!important
    }

    .mx-sm-2 {
        margin-left: .5rem!important;
        margin-right: .5rem!important
    }

    .mx-sm-3 {
        margin-left: 1rem!important;
        margin-right: 1rem!important
    }

    .mx-sm-4 {
        margin-left: 1.5rem!important;
        margin-right: 1.5rem!important
    }

    .mx-sm-5 {
        margin-left: 3rem!important;
        margin-right: 3rem!important
    }

    .mx-sm-auto {
        margin-left: auto!important;
        margin-right: auto!important
    }

    .my-sm-0 {
        margin-bottom: 0!important;
        margin-top: 0!important
    }

    .my-sm-1 {
        margin-bottom: .25rem!important;
        margin-top: .25rem!important
    }

    .my-sm-2 {
        margin-bottom: .5rem!important;
        margin-top: .5rem!important
    }

    .my-sm-3 {
        margin-bottom: 1rem!important;
        margin-top: 1rem!important
    }

    .my-sm-4 {
        margin-bottom: 1.5rem!important;
        margin-top: 1.5rem!important
    }

    .my-sm-5 {
        margin-bottom: 3rem!important;
        margin-top: 3rem!important
    }

    .my-sm-auto {
        margin-bottom: auto!important;
        margin-top: auto!important
    }

    .mt-sm-0 {
        margin-top: 0!important
    }

    .mt-sm-1 {
        margin-top: .25rem!important
    }

    .mt-sm-2 {
        margin-top: .5rem!important
    }

    .mt-sm-3 {
        margin-top: 1rem!important
    }

    .mt-sm-4 {
        margin-top: 1.5rem!important
    }

    .mt-sm-5 {
        margin-top: 3rem!important
    }

    .mt-sm-auto {
        margin-top: auto!important
    }

    .me-sm-0 {
        margin-right: 0!important
    }

    .me-sm-1 {
        margin-right: .25rem!important
    }

    .me-sm-2 {
        margin-right: .5rem!important
    }

    .me-sm-3 {
        margin-right: 1rem!important
    }

    .me-sm-4 {
        margin-right: 1.5rem!important
    }

    .me-sm-5 {
        margin-right: 3rem!important
    }

    .me-sm-auto {
        margin-right: auto!important
    }

    .mb-sm-0 {
        margin-bottom: 0!important
    }

    .mb-sm-1 {
        margin-bottom: .25rem!important
    }

    .mb-sm-2 {
        margin-bottom: .5rem!important
    }

    .mb-sm-3 {
        margin-bottom: 1rem!important
    }

    .mb-sm-4 {
        margin-bottom: 1.5rem!important
    }

    .mb-sm-5 {
        margin-bottom: 3rem!important
    }

    .mb-sm-auto {
        margin-bottom: auto!important
    }

    .ms-sm-0 {
        margin-left: 0!important
    }

    .ms-sm-1 {
        margin-left: .25rem!important
    }

    .ms-sm-2 {
        margin-left: .5rem!important
    }

    .ms-sm-3 {
        margin-left: 1rem!important
    }

    .ms-sm-4 {
        margin-left: 1.5rem!important
    }

    .ms-sm-5 {
        margin-left: 3rem!important
    }

    .ms-sm-auto {
        margin-left: auto!important
    }

    .p-sm-0 {
        padding: 0!important
    }

    .p-sm-1 {
        padding: .25rem!important
    }

    .p-sm-2 {
        padding: .5rem!important
    }

    .p-sm-3 {
        padding: 1rem!important
    }

    .p-sm-4 {
        padding: 1.5rem!important
    }

    .p-sm-5 {
        padding: 3rem!important
    }

    .px-sm-0 {
        padding-left: 0!important;
        padding-right: 0!important
    }

    .px-sm-1 {
        padding-left: .25rem!important;
        padding-right: .25rem!important
    }

    .px-sm-2 {
        padding-left: .5rem!important;
        padding-right: .5rem!important
    }

    .px-sm-3 {
        padding-left: 1rem!important;
        padding-right: 1rem!important
    }

    .px-sm-4 {
        padding-left: 1.5rem!important;
        padding-right: 1.5rem!important
    }

    .px-sm-5 {
        padding-left: 3rem!important;
        padding-right: 3rem!important
    }

    .py-sm-0 {
        padding-bottom: 0!important;
        padding-top: 0!important
    }

    .py-sm-1 {
        padding-bottom: .25rem!important;
        padding-top: .25rem!important
    }

    .py-sm-2 {
        padding-bottom: .5rem!important;
        padding-top: .5rem!important
    }

    .py-sm-3 {
        padding-bottom: 1rem!important;
        padding-top: 1rem!important
    }

    .py-sm-4 {
        padding-bottom: 1.5rem!important;
        padding-top: 1.5rem!important
    }

    .py-sm-5 {
        padding-bottom: 3rem!important;
        padding-top: 3rem!important
    }

    .pt-sm-0 {
        padding-top: 0!important
    }

    .pt-sm-1 {
        padding-top: .25rem!important
    }

    .pt-sm-2 {
        padding-top: .5rem!important
    }

    .pt-sm-3 {
        padding-top: 1rem!important
    }

    .pt-sm-4 {
        padding-top: 1.5rem!important
    }

    .pt-sm-5 {
        padding-top: 3rem!important
    }

    .pe-sm-0 {
        padding-right: 0!important
    }

    .pe-sm-1 {
        padding-right: .25rem!important
    }

    .pe-sm-2 {
        padding-right: .5rem!important
    }

    .pe-sm-3 {
        padding-right: 1rem!important
    }

    .pe-sm-4 {
        padding-right: 1.5rem!important
    }

    .pe-sm-5 {
        padding-right: 3rem!important
    }

    .pb-sm-0 {
        padding-bottom: 0!important
    }

    .pb-sm-1 {
        padding-bottom: .25rem!important
    }

    .pb-sm-2 {
        padding-bottom: .5rem!important
    }

    .pb-sm-3 {
        padding-bottom: 1rem!important
    }

    .pb-sm-4 {
        padding-bottom: 1.5rem!important
    }

    .pb-sm-5 {
        padding-bottom: 3rem!important
    }

    .ps-sm-0 {
        padding-left: 0!important
    }

    .ps-sm-1 {
        padding-left: .25rem!important
    }

    .ps-sm-2 {
        padding-left: .5rem!important
    }

    .ps-sm-3 {
        padding-left: 1rem!important
    }

    .ps-sm-4 {
        padding-left: 1.5rem!important
    }

    .ps-sm-5 {
        padding-left: 3rem!important
    }

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

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

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

@media(min-width: 768px) {
    .d-md-inline {
        display:inline!important
    }

    .d-md-inline-block {
        display: inline-block!important
    }

    .d-md-block {
        display: block!important
    }

    .d-md-grid {
        display: grid!important
    }

    .d-md-inline-grid {
        display: inline-grid!important
    }

    .d-md-table {
        display: table!important
    }

    .d-md-table-row {
        display: table-row!important
    }

    .d-md-table-cell {
        display: table-cell!important
    }

    .d-md-flex {
        display: flex!important
    }

    .d-md-inline-flex {
        display: inline-flex!important
    }

    .d-md-none {
        display: none!important
    }

    .flex-md-fill {
        flex: 1 1 auto!important
    }

    .flex-md-row {
        flex-direction: row!important
    }

    .flex-md-column {
        flex-direction: column!important
    }

    .flex-md-row-reverse {
        flex-direction: row-reverse!important
    }

    .flex-md-column-reverse {
        flex-direction: column-reverse!important
    }

    .flex-md-grow-0 {
        flex-grow: 0!important
    }

    .flex-md-grow-1 {
        flex-grow: 1!important
    }

    .flex-md-shrink-0 {
        flex-shrink: 0!important
    }

    .flex-md-shrink-1 {
        flex-shrink: 1!important
    }

    .flex-md-wrap {
        flex-wrap: wrap!important
    }

    .flex-md-nowrap {
        flex-wrap: nowrap!important
    }

    .flex-md-wrap-reverse {
        flex-wrap: wrap-reverse!important
    }

    .justify-content-md-start {
        justify-content: flex-start!important
    }

    .justify-content-md-end {
        justify-content: flex-end!important
    }

    .justify-content-md-center {
        justify-content: center!important
    }

    .justify-content-md-between {
        justify-content: space-between!important
    }

    .justify-content-md-around {
        justify-content: space-around!important
    }

    .justify-content-md-evenly {
        justify-content: space-evenly!important
    }

    .align-items-md-start {
        align-items: flex-start!important
    }

    .align-items-md-end {
        align-items: flex-end!important
    }

    .align-items-md-center {
        align-items: center!important
    }

    .align-items-md-baseline {
        align-items: baseline!important
    }

    .align-items-md-stretch {
        align-items: stretch!important
    }

    .align-content-md-start {
        align-content: flex-start!important
    }

    .align-content-md-end {
        align-content: flex-end!important
    }

    .align-content-md-center {
        align-content: center!important
    }

    .align-content-md-between {
        align-content: space-between!important
    }

    .align-content-md-around {
        align-content: space-around!important
    }

    .align-content-md-stretch {
        align-content: stretch!important
    }

    .align-self-md-auto {
        align-self: auto!important
    }

    .align-self-md-start {
        align-self: flex-start!important
    }

    .align-self-md-end {
        align-self: flex-end!important
    }

    .align-self-md-center {
        align-self: center!important
    }

    .align-self-md-baseline {
        align-self: baseline!important
    }

    .align-self-md-stretch {
        align-self: stretch!important
    }

    .order-md-first {
        order: -1!important
    }

    .order-md-0 {
        order: 0!important
    }

    .order-md-1 {
        order: 1!important
    }

    .order-md-2 {
        order: 2!important
    }

    .order-md-3 {
        order: 3!important
    }

    .order-md-4 {
        order: 4!important
    }

    .order-md-5 {
        order: 5!important
    }

    .order-md-last {
        order: 6!important
    }

    .m-md-0 {
        margin: 0!important
    }

    .m-md-1 {
        margin: .25rem!important
    }

    .m-md-2 {
        margin: .5rem!important
    }

    .m-md-3 {
        margin: 1rem!important
    }

    .m-md-4 {
        margin: 1.5rem!important
    }

    .m-md-5 {
        margin: 3rem!important
    }

    .m-md-auto {
        margin: auto!important
    }

    .mx-md-0 {
        margin-left: 0!important;
        margin-right: 0!important
    }

    .mx-md-1 {
        margin-left: .25rem!important;
        margin-right: .25rem!important
    }

    .mx-md-2 {
        margin-left: .5rem!important;
        margin-right: .5rem!important
    }

    .mx-md-3 {
        margin-left: 1rem!important;
        margin-right: 1rem!important
    }

    .mx-md-4 {
        margin-left: 1.5rem!important;
        margin-right: 1.5rem!important
    }

    .mx-md-5 {
        margin-left: 3rem!important;
        margin-right: 3rem!important
    }

    .mx-md-auto {
        margin-left: auto!important;
        margin-right: auto!important
    }

    .my-md-0 {
        margin-bottom: 0!important;
        margin-top: 0!important
    }

    .my-md-1 {
        margin-bottom: .25rem!important;
        margin-top: .25rem!important
    }

    .my-md-2 {
        margin-bottom: .5rem!important;
        margin-top: .5rem!important
    }

    .my-md-3 {
        margin-bottom: 1rem!important;
        margin-top: 1rem!important
    }

    .my-md-4 {
        margin-bottom: 1.5rem!important;
        margin-top: 1.5rem!important
    }

    .my-md-5 {
        margin-bottom: 3rem!important;
        margin-top: 3rem!important
    }

    .my-md-auto {
        margin-bottom: auto!important;
        margin-top: auto!important
    }

    .mt-md-0 {
        margin-top: 0!important
    }

    .mt-md-1 {
        margin-top: .25rem!important
    }

    .mt-md-2 {
        margin-top: .5rem!important
    }

    .mt-md-3 {
        margin-top: 1rem!important
    }

    .mt-md-4 {
        margin-top: 1.5rem!important
    }

    .mt-md-5 {
        margin-top: 3rem!important
    }

    .mt-md-auto {
        margin-top: auto!important
    }

    .me-md-0 {
        margin-right: 0!important
    }

    .me-md-1 {
        margin-right: .25rem!important
    }

    .me-md-2 {
        margin-right: .5rem!important
    }

    .me-md-3 {
        margin-right: 1rem!important
    }

    .me-md-4 {
        margin-right: 1.5rem!important
    }

    .me-md-5 {
        margin-right: 3rem!important
    }

    .me-md-auto {
        margin-right: auto!important
    }

    .mb-md-0 {
        margin-bottom: 0!important
    }

    .mb-md-1 {
        margin-bottom: .25rem!important
    }

    .mb-md-2 {
        margin-bottom: .5rem!important
    }

    .mb-md-3 {
        margin-bottom: 1rem!important
    }

    .mb-md-4 {
        margin-bottom: 1.5rem!important
    }

    .mb-md-5 {
        margin-bottom: 3rem!important
    }

    .mb-md-auto {
        margin-bottom: auto!important
    }

    .ms-md-0 {
        margin-left: 0!important
    }

    .ms-md-1 {
        margin-left: .25rem!important
    }

    .ms-md-2 {
        margin-left: .5rem!important
    }

    .ms-md-3 {
        margin-left: 1rem!important
    }

    .ms-md-4 {
        margin-left: 1.5rem!important
    }

    .ms-md-5 {
        margin-left: 3rem!important
    }

    .ms-md-auto {
        margin-left: auto!important
    }

    .p-md-0 {
        padding: 0!important
    }

    .p-md-1 {
        padding: .25rem!important
    }

    .p-md-2 {
        padding: .5rem!important
    }

    .p-md-3 {
        padding: 1rem!important
    }

    .p-md-4 {
        padding: 1.5rem!important
    }

    .p-md-5 {
        padding: 3rem!important
    }

    .px-md-0 {
        padding-left: 0!important;
        padding-right: 0!important
    }

    .px-md-1 {
        padding-left: .25rem!important;
        padding-right: .25rem!important
    }

    .px-md-2 {
        padding-left: .5rem!important;
        padding-right: .5rem!important
    }

    .px-md-3 {
        padding-left: 1rem!important;
        padding-right: 1rem!important
    }

    .px-md-4 {
        padding-left: 1.5rem!important;
        padding-right: 1.5rem!important
    }

    .px-md-5 {
        padding-left: 3rem!important;
        padding-right: 3rem!important
    }

    .py-md-0 {
        padding-bottom: 0!important;
        padding-top: 0!important
    }

    .py-md-1 {
        padding-bottom: .25rem!important;
        padding-top: .25rem!important
    }

    .py-md-2 {
        padding-bottom: .5rem!important;
        padding-top: .5rem!important
    }

    .py-md-3 {
        padding-bottom: 1rem!important;
        padding-top: 1rem!important
    }

    .py-md-4 {
        padding-bottom: 1.5rem!important;
        padding-top: 1.5rem!important
    }

    .py-md-5 {
        padding-bottom: 3rem!important;
        padding-top: 3rem!important
    }

    .pt-md-0 {
        padding-top: 0!important
    }

    .pt-md-1 {
        padding-top: .25rem!important
    }

    .pt-md-2 {
        padding-top: .5rem!important
    }

    .pt-md-3 {
        padding-top: 1rem!important
    }

    .pt-md-4 {
        padding-top: 1.5rem!important
    }

    .pt-md-5 {
        padding-top: 3rem!important
    }

    .pe-md-0 {
        padding-right: 0!important
    }

    .pe-md-1 {
        padding-right: .25rem!important
    }

    .pe-md-2 {
        padding-right: .5rem!important
    }

    .pe-md-3 {
        padding-right: 1rem!important
    }

    .pe-md-4 {
        padding-right: 1.5rem!important
    }

    .pe-md-5 {
        padding-right: 3rem!important
    }

    .pb-md-0 {
        padding-bottom: 0!important
    }

    .pb-md-1 {
        padding-bottom: .25rem!important
    }

    .pb-md-2 {
        padding-bottom: .5rem!important
    }

    .pb-md-3 {
        padding-bottom: 1rem!important
    }

    .pb-md-4 {
        padding-bottom: 1.5rem!important
    }

    .pb-md-5 {
        padding-bottom: 3rem!important
    }

    .ps-md-0 {
        padding-left: 0!important
    }

    .ps-md-1 {
        padding-left: .25rem!important
    }

    .ps-md-2 {
        padding-left: .5rem!important
    }

    .ps-md-3 {
        padding-left: 1rem!important
    }

    .ps-md-4 {
        padding-left: 1.5rem!important
    }

    .ps-md-5 {
        padding-left: 3rem!important
    }

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

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

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

@media(min-width: 992px) {
    .d-lg-inline {
        display:inline!important
    }

    .d-lg-inline-block {
        display: inline-block!important
    }

    .d-lg-block {
        display: block!important
    }

    .d-lg-grid {
        display: grid!important
    }

    .d-lg-inline-grid {
        display: inline-grid!important
    }

    .d-lg-table {
        display: table!important
    }

    .d-lg-table-row {
        display: table-row!important
    }

    .d-lg-table-cell {
        display: table-cell!important
    }

    .d-lg-flex {
        display: flex!important
    }

    .d-lg-inline-flex {
        display: inline-flex!important
    }

    .d-lg-none {
        display: none!important
    }

    .flex-lg-fill {
        flex: 1 1 auto!important
    }

    .flex-lg-row {
        flex-direction: row!important
    }

    .flex-lg-column {
        flex-direction: column!important
    }

    .flex-lg-row-reverse {
        flex-direction: row-reverse!important
    }

    .flex-lg-column-reverse {
        flex-direction: column-reverse!important
    }

    .flex-lg-grow-0 {
        flex-grow: 0!important
    }

    .flex-lg-grow-1 {
        flex-grow: 1!important
    }

    .flex-lg-shrink-0 {
        flex-shrink: 0!important
    }

    .flex-lg-shrink-1 {
        flex-shrink: 1!important
    }

    .flex-lg-wrap {
        flex-wrap: wrap!important
    }

    .flex-lg-nowrap {
        flex-wrap: nowrap!important
    }

    .flex-lg-wrap-reverse {
        flex-wrap: wrap-reverse!important
    }

    .justify-content-lg-start {
        justify-content: flex-start!important
    }

    .justify-content-lg-end {
        justify-content: flex-end!important
    }

    .justify-content-lg-center {
        justify-content: center!important
    }

    .justify-content-lg-between {
        justify-content: space-between!important
    }

    .justify-content-lg-around {
        justify-content: space-around!important
    }

    .justify-content-lg-evenly {
        justify-content: space-evenly!important
    }

    .align-items-lg-start {
        align-items: flex-start!important
    }

    .align-items-lg-end {
        align-items: center!important;
    }

    .align-items-lg-center {
        align-items: center!important
    }

    .align-items-lg-baseline {
        align-items: baseline!important
    }

    .align-items-lg-stretch {
        align-items: stretch!important
    }

    .align-content-lg-start {
        align-content: flex-start!important
    }

    .align-content-lg-end {
        align-content: flex-end!important
    }

    .align-content-lg-center {
        align-content: center!important
    }

    .align-content-lg-between {
        align-content: space-between!important
    }

    .align-content-lg-around {
        align-content: space-around!important
    }

    .align-content-lg-stretch {
        align-content: stretch!important
    }

    .align-self-lg-auto {
        align-self: auto!important
    }

    .align-self-lg-start {
        align-self: flex-start!important
    }

    .align-self-lg-end {
        align-self: flex-end!important
    }

    .align-self-lg-center {
        align-self: center!important
    }

    .align-self-lg-baseline {
        align-self: baseline!important
    }

    .align-self-lg-stretch {
        align-self: stretch!important
    }

    .order-lg-first {
        order: -1!important
    }

    .order-lg-0 {
        order: 0!important
    }

    .order-lg-1 {
        order: 1!important
    }

    .order-lg-2 {
        order: 2!important
    }

    .order-lg-3 {
        order: 3!important
    }

    .order-lg-4 {
        order: 4!important
    }

    .order-lg-5 {
        order: 5!important
    }

    .order-lg-last {
        order: 6!important
    }

    .m-lg-0 {
        margin: 0!important
    }

    .m-lg-1 {
        margin: .25rem!important
    }

    .m-lg-2 {
        margin: .5rem!important
    }

    .m-lg-3 {
        margin: 1rem!important
    }

    .m-lg-4 {
        margin: 1.5rem!important
    }

    .m-lg-5 {
        margin: 3rem!important
    }

    .m-lg-auto {
        margin: auto!important
    }

    .mx-lg-0 {
        margin-left: 0!important;
        margin-right: 0!important
    }

    .mx-lg-1 {
        margin-left: .25rem!important;
        margin-right: .25rem!important
    }

    .mx-lg-2 {
        margin-left: .5rem!important;
        margin-right: .5rem!important
    }

    .mx-lg-3 {
        margin-left: 1rem!important;
        margin-right: 1rem!important
    }

    .mx-lg-4 {
        margin-left: 1.5rem!important;
        margin-right: 1.5rem!important
    }

    .mx-lg-5 {
        margin-left: 3rem!important;
        margin-right: 3rem!important
    }

    .mx-lg-auto {
        margin-left: auto!important;
        margin-right: auto!important
    }

    .my-lg-0 {
        margin-bottom: 0!important;
        margin-top: 0!important
    }

    .my-lg-1 {
        margin-bottom: .25rem!important;
        margin-top: .25rem!important
    }

    .my-lg-2 {
        margin-bottom: .5rem!important;
        margin-top: .5rem!important
    }

    .my-lg-3 {
        margin-bottom: 1rem!important;
        margin-top: 1rem!important
    }

    .my-lg-4 {
        margin-bottom: 1.5rem!important;
        margin-top: 1.5rem!important
    }

    .my-lg-5 {
        margin-bottom: 3rem!important;
        margin-top: 3rem!important
    }

    .my-lg-auto {
        margin-bottom: auto!important;
        margin-top: auto!important
    }

    .mt-lg-0 {
        margin-top: 0!important
    }

    .mt-lg-1 {
        margin-top: .25rem!important
    }

    .mt-lg-2 {
        margin-top: .5rem!important
    }

    .mt-lg-3 {
        margin-top: 1rem!important
    }

    .mt-lg-4 {
        margin-top: 1.5rem!important
    }

    .mt-lg-5 {
        margin-top: 3rem!important
    }

    .mt-lg-auto {
        margin-top: auto!important
    }

    .me-lg-0 {
        margin-right: 0!important
    }

    .me-lg-1 {
        margin-right: .25rem!important
    }

    .me-lg-2 {
        margin-right: .5rem!important
    }

    .me-lg-3 {
        margin-right: 1rem!important
    }

    .me-lg-4 {
        margin-right: 1.5rem!important
    }

    .me-lg-5 {
        margin-right: 3rem!important
    }

    .me-lg-auto {
        margin-right: auto!important
    }

    .mb-lg-0 {
        margin-bottom: 0!important
    }

    .mb-lg-1 {
        margin-bottom: .25rem!important
    }

    .mb-lg-2 {
        margin-bottom: .5rem!important
    }

    .mb-lg-3 {
        margin-bottom: 1rem!important
    }

    .mb-lg-4 {
        margin-bottom: 1.5rem!important
    }

    .mb-lg-5 {
        margin-bottom: 3rem!important
    }

    .mb-lg-auto {
        margin-bottom: auto!important
    }

    .ms-lg-0 {
        margin-left: 0!important
    }

    .ms-lg-1 {
        margin-left: .25rem!important
    }

    .ms-lg-2 {
        margin-left: .5rem!important
    }

    .ms-lg-3 {
        margin-left: 1rem!important
    }

    .ms-lg-4 {
        margin-left: 1.5rem!important
    }

    .ms-lg-5 {
        margin-left: 3rem!important
    }

    .ms-lg-auto {
        margin-left: auto!important
    }

    .p-lg-0 {
        padding: 0!important
    }

    .p-lg-1 {
        padding: .25rem!important
    }

    .p-lg-2 {
        padding: .5rem!important
    }

    .p-lg-3 {
        padding: 1rem!important
    }

    .p-lg-4 {
        padding: 1.5rem!important
    }

    .p-lg-5 {
        padding: 3rem!important
    }

    .px-lg-0 {
        padding-left: 0!important;
        padding-right: 0!important
    }

    .px-lg-1 {
        padding-left: .25rem!important;
        padding-right: .25rem!important
    }

    .px-lg-2 {
        padding-left: .5rem!important;
        padding-right: .5rem!important
    }

    .px-lg-3 {
        padding-left: 1rem!important;
        padding-right: 1rem!important
    }

    .px-lg-4 {
        padding-left: 1.5rem!important;
        padding-right: 1.5rem!important
    }

    .px-lg-5 {
        padding-left: 3rem!important;
        padding-right: 3rem!important
    }

    .py-lg-0 {
        padding-bottom: 0!important;
        padding-top: 0!important
    }

    .py-lg-1 {
        padding-bottom: .25rem!important;
        padding-top: .25rem!important
    }

    .py-lg-2 {
        padding-bottom: .5rem!important;
        padding-top: .5rem!important
    }

    .py-lg-3 {
        padding-bottom: 1rem!important;
        padding-top: 1rem!important
    }

    .py-lg-4 {
        padding-bottom: 1.5rem!important;
        padding-top: 1.5rem!important
    }

    .py-lg-5 {
        padding-bottom: 3rem!important;
        padding-top: 3rem!important
    }

    .pt-lg-0 {
        padding-top: 0!important
    }

    .pt-lg-1 {
        padding-top: .25rem!important
    }

    .pt-lg-2 {
        padding-top: .5rem!important
    }

    .pt-lg-3 {
        padding-top: 1rem!important
    }

    .pt-lg-4 {
        padding-top: 1.5rem!important
    }

    .pt-lg-5 {
        padding-top: 3rem!important
    }

    .pe-lg-0 {
        padding-right: 0!important
    }

    .pe-lg-1 {
        padding-right: .25rem!important
    }

    .pe-lg-2 {
        padding-right: .5rem!important
    }

    .pe-lg-3 {
        padding-right: 1rem!important
    }

    .pe-lg-4 {
        padding-right: 1.5rem!important
    }

    .pe-lg-5 {
        padding-right: 3rem!important
    }

    .pb-lg-0 {
        padding-bottom: 0!important
    }

    .pb-lg-1 {
        padding-bottom: .25rem!important
    }

    .pb-lg-2 {
        padding-bottom: .5rem!important
    }

    .pb-lg-3 {
        padding-bottom: 1rem!important
    }

    .pb-lg-4 {
        padding-bottom: 1.5rem!important
    }

    .pb-lg-5 {
        padding-bottom: 3rem!important
    }

    .ps-lg-0 {
        padding-left: 0!important
    }

    .ps-lg-1 {
        padding-left: .25rem!important
    }

    .ps-lg-2 {
        padding-left: .5rem!important
    }

    .ps-lg-3 {
        padding-left: 1rem!important
    }

    .ps-lg-4 {
        padding-left: 1.5rem!important
    }

    .ps-lg-5 {
        padding-left: 3rem!important
    }

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

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

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

@media(min-width: 1200px) {
    .d-xl-inline {
        display:inline!important
    }

    .d-xl-inline-block {
        display: inline-block!important
    }

    .d-xl-block {
        display: block!important;
    }

    .d-xl-grid {
        display: grid!important
    }

    .d-xl-inline-grid {
        display: inline-grid!important
    }

    .d-xl-table {
        display: table!important
    }

    .d-xl-table-row {
        display: table-row!important
    }

    .d-xl-table-cell {
        display: table-cell!important
    }

    .d-xl-flex {
        display: flex!important
    }

    .d-xl-inline-flex {
        display: inline-flex!important
    }

    .d-xl-none {
        display: none!important
    }

    .flex-xl-fill {
        flex: 1 1 auto!important
    }

    .flex-xl-row {
        flex-direction: row!important
    }

    .flex-xl-column {
        flex-direction: column!important
    }

    .flex-xl-row-reverse {
        flex-direction: row-reverse!important
    }

    .flex-xl-column-reverse {
        flex-direction: column-reverse!important
    }

    .flex-xl-grow-0 {
        flex-grow: 0!important
    }

    .flex-xl-grow-1 {
        flex-grow: 1!important
    }

    .flex-xl-shrink-0 {
        flex-shrink: 0!important
    }

    .flex-xl-shrink-1 {
        flex-shrink: 1!important
    }

    .flex-xl-wrap {
        flex-wrap: wrap!important
    }

    .flex-xl-nowrap {
        flex-wrap: nowrap!important
    }

    .flex-xl-wrap-reverse {
        flex-wrap: wrap-reverse!important
    }

    .justify-content-xl-start {
        justify-content: flex-start!important
    }

    .justify-content-xl-end {
        justify-content: flex-end!important
    }

    .justify-content-xl-center {
        justify-content: center!important
    }

    .justify-content-xl-between {
        justify-content: space-between!important
    }

    .justify-content-xl-around {
        justify-content: space-around!important
    }

    .justify-content-xl-evenly {
        justify-content: space-evenly!important
    }

    .align-items-xl-start {
        align-items: flex-start!important
    }

    .align-items-xl-end {
        align-items: flex-end!important
    }

    .align-items-xl-center {
        align-items: center!important
    }

    .align-items-xl-baseline {
        align-items: baseline!important
    }

    .align-items-xl-stretch {
        align-items: stretch!important
    }

    .align-content-xl-start {
        align-content: flex-start!important
    }

    .align-content-xl-end {
        align-content: flex-end!important
    }

    .align-content-xl-center {
        align-content: center!important
    }

    .align-content-xl-between {
        align-content: space-between!important
    }

    .align-content-xl-around {
        align-content: space-around!important
    }

    .align-content-xl-stretch {
        align-content: stretch!important
    }

    .align-self-xl-auto {
        align-self: auto!important
    }

    .align-self-xl-start {
        align-self: flex-start!important
    }

    .align-self-xl-end {
        align-self: flex-end!important
    }

    .align-self-xl-center {
        align-self: center!important
    }

    .align-self-xl-baseline {
        align-self: baseline!important
    }

    .align-self-xl-stretch {
        align-self: stretch!important
    }

    .order-xl-first {
        order: -1!important
    }

    .order-xl-0 {
        order: 0!important
    }

    .order-xl-1 {
        order: 1!important
    }

    .order-xl-2 {
        order: 2!important
    }

    .order-xl-3 {
        order: 3!important
    }

    .order-xl-4 {
        order: 4!important
    }

    .order-xl-5 {
        order: 5!important
    }

    .order-xl-last {
        order: 6!important
    }

    .m-xl-0 {
        margin: 0!important
    }

    .m-xl-1 {
        margin: .25rem!important
    }

    .m-xl-2 {
        margin: .5rem!important
    }

    .m-xl-3 {
        margin: 1rem!important
    }

    .m-xl-4 {
        margin: 1.5rem!important
    }

    .m-xl-5 {
        margin: 3rem!important
    }

    .m-xl-auto {
        margin: auto!important
    }

    .mx-xl-0 {
        margin-left: 0!important;
        margin-right: 0!important
    }

    .mx-xl-1 {
        margin-left: .25rem!important;
        margin-right: .25rem!important
    }

    .mx-xl-2 {
        margin-left: .5rem!important;
        margin-right: .5rem!important
    }

    .mx-xl-3 {
        margin-left: 1rem!important;
        margin-right: 1rem!important
    }

    .mx-xl-4 {
        margin-left: 1.5rem!important;
        margin-right: 1.5rem!important
    }

    .mx-xl-5 {
        margin-left: 3rem!important;
        margin-right: 3rem!important
    }

    .mx-xl-auto {
        margin-left: auto!important;
        margin-right: auto!important
    }

    .my-xl-0 {
        margin-bottom: 0!important;
        margin-top: 0!important
    }

    .my-xl-1 {
        margin-bottom: .25rem!important;
        margin-top: .25rem!important
    }

    .my-xl-2 {
        margin-bottom: .5rem!important;
        margin-top: .5rem!important
    }

    .my-xl-3 {
        margin-bottom: 1rem!important;
        margin-top: 1rem!important
    }

    .my-xl-4 {
        margin-bottom: 1.5rem!important;
        margin-top: 1.5rem!important
    }

    .my-xl-5 {
        margin-bottom: 3rem!important;
        margin-top: 3rem!important
    }

    .my-xl-auto {
        margin-bottom: auto!important;
        margin-top: auto!important
    }

    .mt-xl-0 {
        margin-top: 0!important
    }

    .mt-xl-1 {
        margin-top: .25rem!important
    }

    .mt-xl-2 {
        margin-top: .5rem!important
    }

    .mt-xl-3 {
        margin-top: 1rem!important
    }

    .mt-xl-4 {
        margin-top: 1.5rem!important
    }

    .mt-xl-5 {
        margin-top: 3rem!important
    }

    .mt-xl-auto {
        margin-top: auto!important
    }

    .me-xl-0 {
        margin-right: 0!important
    }

    .me-xl-1 {
        margin-right: .25rem!important
    }

    .me-xl-2 {
        margin-right: .5rem!important
    }

    .me-xl-3 {
        margin-right: 1rem!important
    }

    .me-xl-4 {
        margin-right: 1.5rem!important
    }

    .me-xl-5 {
        margin-right: 3rem!important
    }

    .me-xl-auto {
        margin-right: auto!important
    }

    .mb-xl-0 {
        margin-bottom: 0!important
    }

    .mb-xl-1 {
        margin-bottom: .25rem!important
    }

    .mb-xl-2 {
        margin-bottom: .5rem!important
    }

    .mb-xl-3 {
        margin-bottom: 1rem!important
    }

    .mb-xl-4 {
        margin-bottom: 1.5rem!important
    }

    .mb-xl-5 {
        margin-bottom: 3rem!important
    }

    .mb-xl-auto {
        margin-bottom: auto!important
    }

    .ms-xl-0 {
        margin-left: 0!important
    }

    .ms-xl-1 {
        margin-left: .25rem!important
    }

    .ms-xl-2 {
        margin-left: .5rem!important
    }

    .ms-xl-3 {
        margin-left: 1rem!important
    }

    .ms-xl-4 {
        margin-left: 1.5rem!important
    }

    .ms-xl-5 {
        margin-left: 3rem!important
    }

    .ms-xl-auto {
        margin-left: auto!important
    }

    .p-xl-0 {
        padding: 0!important
    }

    .p-xl-1 {
        padding: .25rem!important
    }

    .p-xl-2 {
        padding: .5rem!important
    }

    .p-xl-3 {
        padding: 1rem!important
    }

    .p-xl-4 {
        padding: 1.5rem!important
    }

    .p-xl-5 {
        padding: 3rem!important
    }

    .px-xl-0 {
        padding-left: 0!important;
        padding-right: 0!important
    }

    .px-xl-1 {
        padding-left: .25rem!important;
        padding-right: .25rem!important
    }

    .px-xl-2 {
        padding-left: .5rem!important;
        padding-right: .5rem!important
    }

    .px-xl-3 {
        padding-left: 1rem!important;
        padding-right: 1rem!important
    }

    .px-xl-4 {
        padding-left: 1.5rem!important;
        padding-right: 1.5rem!important
    }

    .px-xl-5 {
        padding-left: 3rem!important;
        padding-right: 3rem!important
    }

    .py-xl-0 {
        padding-bottom: 0!important;
        padding-top: 0!important
    }

    .py-xl-1 {
        padding-bottom: .25rem!important;
        padding-top: .25rem!important
    }

    .py-xl-2 {
        padding-bottom: .5rem!important;
        padding-top: .5rem!important
    }

    .py-xl-3 {
        padding-bottom: 1rem!important;
        padding-top: 1rem!important
    }

    .py-xl-4 {
        padding-bottom: 1.5rem!important;
        padding-top: 1.5rem!important
    }

    .py-xl-5 {
        padding-bottom: 3rem!important;
        padding-top: 3rem!important
    }

    .pt-xl-0 {
        padding-top: 0!important
    }

    .pt-xl-1 {
        padding-top: .25rem!important
    }

    .pt-xl-2 {
        padding-top: .5rem!important
    }

    .pt-xl-3 {
        padding-top: 1rem!important
    }

    .pt-xl-4 {
        padding-top: 1.5rem!important
    }

    .pt-xl-5 {
        padding-top: 3rem!important
    }

    .pe-xl-0 {
        padding-right: 0!important
    }

    .pe-xl-1 {
        padding-right: .25rem!important
    }

    .pe-xl-2 {
        padding-right: .5rem!important
    }

    .pe-xl-3 {
        padding-right: 1rem!important
    }

    .pe-xl-4 {
        padding-right: 1.5rem!important
    }

    .pe-xl-5 {
        padding-right: 3rem!important
    }

    .pb-xl-0 {
        padding-bottom: 0!important
    }

    .pb-xl-1 {
        padding-bottom: .25rem!important
    }

    .pb-xl-2 {
        padding-bottom: .5rem!important
    }

    .pb-xl-3 {
        padding-bottom: 1rem!important
    }

    .pb-xl-4 {
        padding-bottom: 1.5rem!important
    }

    .pb-xl-5 {
        padding-bottom: 3rem!important
    }

    .ps-xl-0 {
        padding-left: 0!important
    }

    .ps-xl-1 {
        padding-left: .25rem!important
    }

    .ps-xl-2 {
        padding-left: .5rem!important
    }

    .ps-xl-3 {
        padding-left: 1rem!important
    }

    .ps-xl-4 {
        padding-left: 1.5rem!important
    }

    .ps-xl-5 {
        padding-left: 3rem!important
    }

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

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

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

@media(min-width: 1494px) {
    .d-xxl-inline {
        display:inline!important
    }

    .d-xxl-inline-block {
        display: inline-block!important
    }

    .d-xxl-block {
        display: block!important
    }

    .d-xxl-grid {
        display: grid!important
    }

    .d-xxl-inline-grid {
        display: inline-grid!important
    }

    .d-xxl-table {
        display: table!important
    }

    .d-xxl-table-row {
        display: table-row!important
    }

    .d-xxl-table-cell {
        display: table-cell!important
    }

    .d-xxl-flex {
        display: flex!important
    }

    .d-xxl-inline-flex {
        display: inline-flex!important
    }

    .d-xxl-none {
        display: none!important
    }

    .flex-xxl-fill {
        flex: 1 1 auto!important
    }

    .flex-xxl-row {
        flex-direction: row!important
    }

    .flex-xxl-column {
        flex-direction: column!important
    }

    .flex-xxl-row-reverse {
        flex-direction: row-reverse!important
    }

    .flex-xxl-column-reverse {
        flex-direction: column-reverse!important
    }

    .flex-xxl-grow-0 {
        flex-grow: 0!important
    }

    .flex-xxl-grow-1 {
        flex-grow: 1!important
    }

    .flex-xxl-shrink-0 {
        flex-shrink: 0!important
    }

    .flex-xxl-shrink-1 {
        flex-shrink: 1!important
    }

    .flex-xxl-wrap {
        flex-wrap: wrap!important
    }

    .flex-xxl-nowrap {
        flex-wrap: nowrap!important
    }

    .flex-xxl-wrap-reverse {
        flex-wrap: wrap-reverse!important
    }

    .justify-content-xxl-start {
        justify-content: flex-start!important
    }

    .justify-content-xxl-end {
        justify-content: flex-end!important
    }

    .justify-content-xxl-center {
        justify-content: center!important
    }

    .justify-content-xxl-between {
        justify-content: space-between!important
    }

    .justify-content-xxl-around {
        justify-content: space-around!important
    }

    .justify-content-xxl-evenly {
        justify-content: space-evenly!important
    }

    .align-items-xxl-start {
        align-items: flex-start!important
    }

    .align-items-xxl-end {
        align-items: flex-end!important
    }

    .align-items-xxl-center {
        align-items: center!important
    }

    .align-items-xxl-baseline {
        align-items: baseline!important
    }

    .align-items-xxl-stretch {
        align-items: stretch!important
    }

    .align-content-xxl-start {
        align-content: flex-start!important
    }

    .align-content-xxl-end {
        align-content: flex-end!important
    }

    .align-content-xxl-center {
        align-content: center!important
    }

    .align-content-xxl-between {
        align-content: space-between!important
    }

    .align-content-xxl-around {
        align-content: space-around!important
    }

    .align-content-xxl-stretch {
        align-content: stretch!important
    }

    .align-self-xxl-auto {
        align-self: auto!important
    }

    .align-self-xxl-start {
        align-self: flex-start!important
    }

    .align-self-xxl-end {
        align-self: flex-end!important
    }

    .align-self-xxl-center {
        align-self: center!important
    }

    .align-self-xxl-baseline {
        align-self: baseline!important
    }

    .align-self-xxl-stretch {
        align-self: stretch!important
    }

    .order-xxl-first {
        order: -1!important
    }

    .order-xxl-0 {
        order: 0!important
    }

    .order-xxl-1 {
        order: 1!important
    }

    .order-xxl-2 {
        order: 2!important
    }

    .order-xxl-3 {
        order: 3!important
    }

    .order-xxl-4 {
        order: 4!important
    }

    .order-xxl-5 {
        order: 5!important
    }

    .order-xxl-last {
        order: 6!important
    }

    .m-xxl-0 {
        margin: 0!important
    }

    .m-xxl-1 {
        margin: .25rem!important
    }

    .m-xxl-2 {
        margin: .5rem!important
    }

    .m-xxl-3 {
        margin: 1rem!important
    }

    .m-xxl-4 {
        margin: 1.5rem!important
    }

    .m-xxl-5 {
        margin: 3rem!important
    }

    .m-xxl-auto {
        margin: auto!important
    }

    .mx-xxl-0 {
        margin-left: 0!important;
        margin-right: 0!important
    }

    .mx-xxl-1 {
        margin-left: .25rem!important;
        margin-right: .25rem!important
    }

    .mx-xxl-2 {
        margin-left: .5rem!important;
        margin-right: .5rem!important
    }

    .mx-xxl-3 {
        margin-left: 1rem!important;
        margin-right: 1rem!important
    }

    .mx-xxl-4 {
        margin-left: 1.5rem!important;
        margin-right: 1.5rem!important
    }

    .mx-xxl-5 {
        margin-left: 3rem!important;
        margin-right: 3rem!important
    }

    .mx-xxl-auto {
        margin-left: auto!important;
        margin-right: auto!important
    }

    .my-xxl-0 {
        margin-bottom: 0!important;
        margin-top: 0!important
    }

    .my-xxl-1 {
        margin-bottom: .25rem!important;
        margin-top: .25rem!important
    }

    .my-xxl-2 {
        margin-bottom: .5rem!important;
        margin-top: .5rem!important
    }

    .my-xxl-3 {
        margin-bottom: 1rem!important;
        margin-top: 1rem!important
    }

    .my-xxl-4 {
        margin-bottom: 1.5rem!important;
        margin-top: 1.5rem!important
    }

    .my-xxl-5 {
        margin-bottom: 3rem!important;
        margin-top: 3rem!important
    }

    .my-xxl-auto {
        margin-bottom: auto!important;
        margin-top: auto!important
    }

    .mt-xxl-0 {
        margin-top: 0!important
    }

    .mt-xxl-1 {
        margin-top: .25rem!important
    }

    .mt-xxl-2 {
        margin-top: .5rem!important
    }

    .mt-xxl-3 {
        margin-top: 1rem!important
    }

    .mt-xxl-4 {
        margin-top: 1.5rem!important
    }

    .mt-xxl-5 {
        margin-top: 3rem!important
    }

    .mt-xxl-auto {
        margin-top: auto!important
    }

    .me-xxl-0 {
        margin-right: 0!important
    }

    .me-xxl-1 {
        margin-right: .25rem!important
    }

    .me-xxl-2 {
        margin-right: .5rem!important
    }

    .me-xxl-3 {
        margin-right: 1rem!important
    }

    .me-xxl-4 {
        margin-right: 1.5rem!important
    }

    .me-xxl-5 {
        margin-right: 3rem!important
    }

    .me-xxl-auto {
        margin-right: auto!important
    }

    .mb-xxl-0 {
        margin-bottom: 0!important
    }

    .mb-xxl-1 {
        margin-bottom: .25rem!important
    }

    .mb-xxl-2 {
        margin-bottom: .5rem!important
    }

    .mb-xxl-3 {
        margin-bottom: 1rem!important
    }

    .mb-xxl-4 {
        margin-bottom: 1.5rem!important
    }

    .mb-xxl-5 {
        margin-bottom: 3rem!important
    }

    .mb-xxl-auto {
        margin-bottom: auto!important
    }

    .ms-xxl-0 {
        margin-left: 0!important
    }

    .ms-xxl-1 {
        margin-left: .25rem!important
    }

    .ms-xxl-2 {
        margin-left: .5rem!important
    }

    .ms-xxl-3 {
        margin-left: 1rem!important
    }

    .ms-xxl-4 {
        margin-left: 1.5rem!important
    }

    .ms-xxl-5 {
        margin-left: 3rem!important
    }

    .ms-xxl-auto {
        margin-left: auto!important
    }

    .p-xxl-0 {
        padding: 0!important
    }

    .p-xxl-1 {
        padding: .25rem!important
    }

    .p-xxl-2 {
        padding: .5rem!important
    }

    .p-xxl-3 {
        padding: 1rem!important
    }

    .p-xxl-4 {
        padding: 1.5rem!important
    }

    .p-xxl-5 {
        padding: 3rem!important
    }

    .px-xxl-0 {
        padding-left: 0!important;
        padding-right: 0!important
    }

    .px-xxl-1 {
        padding-left: .25rem!important;
        padding-right: .25rem!important
    }

    .px-xxl-2 {
        padding-left: .5rem!important;
        padding-right: .5rem!important
    }

    .px-xxl-3 {
        padding-left: 1rem!important;
        padding-right: 1rem!important
    }

    .px-xxl-4 {
        padding-left: 1.5rem!important;
        padding-right: 1.5rem!important
    }

    .px-xxl-5 {
        padding-left: 3rem!important;
        padding-right: 3rem!important
    }

    .py-xxl-0 {
        padding-bottom: 0!important;
        padding-top: 0!important
    }

    .py-xxl-1 {
        padding-bottom: .25rem!important;
        padding-top: .25rem!important
    }

    .py-xxl-2 {
        padding-bottom: .5rem!important;
        padding-top: .5rem!important
    }

    .py-xxl-3 {
        padding-bottom: 1rem!important;
        padding-top: 1rem!important
    }

    .py-xxl-4 {
        padding-bottom: 1.5rem!important;
        padding-top: 1.5rem!important
    }

    .py-xxl-5 {
        padding-bottom: 3rem!important;
        padding-top: 3rem!important
    }

    .pt-xxl-0 {
        padding-top: 0!important
    }

    .pt-xxl-1 {
        padding-top: .25rem!important
    }

    .pt-xxl-2 {
        padding-top: .5rem!important
    }

    .pt-xxl-3 {
        padding-top: 1rem!important
    }

    .pt-xxl-4 {
        padding-top: 1.5rem!important
    }

    .pt-xxl-5 {
        padding-top: 3rem!important
    }

    .pe-xxl-0 {
        padding-right: 0!important
    }

    .pe-xxl-1 {
        padding-right: .25rem!important
    }

    .pe-xxl-2 {
        padding-right: .5rem!important
    }

    .pe-xxl-3 {
        padding-right: 1rem!important
    }

    .pe-xxl-4 {
        padding-right: 1.5rem!important
    }

    .pe-xxl-5 {
        padding-right: 3rem!important
    }

    .pb-xxl-0 {
        padding-bottom: 0!important
    }

    .pb-xxl-1 {
        padding-bottom: .25rem!important
    }

    .pb-xxl-2 {
        padding-bottom: .5rem!important
    }

    .pb-xxl-3 {
        padding-bottom: 1rem!important
    }

    .pb-xxl-4 {
        padding-bottom: 1.5rem!important
    }

    .pb-xxl-5 {
        padding-bottom: 3rem!important
    }

    .ps-xxl-0 {
        padding-left: 0!important
    }

    .ps-xxl-1 {
        padding-left: .25rem!important
    }

    .ps-xxl-2 {
        padding-left: .5rem!important
    }

    .ps-xxl-3 {
        padding-left: 1rem!important
    }

    .ps-xxl-4 {
        padding-left: 1.5rem!important
    }

    .ps-xxl-5 {
        padding-left: 3rem!important
    }

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

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

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

@media print {
    .d-print-inline {
        display: inline!important
    }

    .d-print-inline-block {
        display: inline-block!important
    }

    .d-print-block {
        display: block!important
    }

    .d-print-grid {
        display: grid!important
    }

    .d-print-inline-grid {
        display: inline-grid!important
    }

    .d-print-table {
        display: table!important
    }

    .d-print-table-row {
        display: table-row!important
    }

    .d-print-table-cell {
        display: table-cell!important
    }

    .d-print-flex {
        display: flex!important
    }

    .d-print-inline-flex {
        display: inline-flex!important
    }

    .d-print-none {
        display: none!important
    }
}

.sticky {
    position: sticky!important;
    top: 1.5rem
}

.cta__label,.text-shadow {
    /* text-shadow: 0 2px 4px #050003; */
}

.regular {
    font-weight: 400
}

.bold {
    font-weight: 700
}

.small {
    font-size: 14px
}

.medium {
    font-size: 20px
}

.large {
    font-size: 24px
}

.b-top {
    border-top: 1px solid #d8d8d8
}

.b-bottom {
    border-bottom: 1px solid #d8d8d8
}

.b-left {
    border-left: 1px solid #d8d8d8
}

.b-right {
    border-right: 1px solid #d8d8d8
}

.cart-dropdown__products,.hide-scrollbar,.thread,.thread__panel .form__group textarea {
    -ms-overflow-style: none;
    scrollbar-width: none
}

.cart-dropdown__products::-webkit-scrollbar,.hide-scrollbar::-webkit-scrollbar,.thread::-webkit-scrollbar,.thread__panel .form__group textarea::-webkit-scrollbar {
    display: none
}

.table-responsive {
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    display: block;
    overflow-x: auto;
    width: 100%
}

@media(min-width: 992px) {
    .mw-20 {
        max-width:20%
    }
}

.bg-color-primary {
    background-color: #4c1a3a
}

.bg-color-primary\:hover:hover,.color-primary,.color-primary\:hover:hover {
    color: #4c1a3a
}

.bg-color-secondary {
    background-color: #1b2127
}

.bg-color-secondary\:hover:hover,.color-secondary,.color-secondary\:hover:hover {
    color: #1b2127
}

.bg-color-white {
    background-color: #fff
}

.bg-color-white\:hover:hover,.color-white,.color-white\:hover:hover {
    color: #fff
}

.bg-color-black {
    background-color: #050003
}

.bg-color-black\:hover:hover,.color-black,.color-black\:hover:hover {
    color: #050003
}

.bg-color-gray-lighter {
    background-color: #f4f4f4
}

.bg-color-gray-lighter\:hover:hover,.color-gray-lighter,.color-gray-lighter\:hover:hover {
    color: #f4f4f4
}

.bg-color-gray-light {
    background-color: #c4c4c4
}

.bg-color-gray-light\:hover:hover,.color-gray-light,.color-gray-light\:hover:hover {
    color: #c4c4c4
}

.bg-color-gray {
    background-color: #a8a8a8
}

.bg-color-gray\:hover:hover,.color-gray,.color-gray\:hover:hover {
    color: #a8a8a8
}

.bg-color-gray-dark {
    background-color: #5f5f5f
}

.bg-color-gray-dark\:hover:hover,.color-gray-dark,.color-gray-dark\:hover:hover {
    color: #5f5f5f
}

.bg-color-transparent {
    background-color: transparent
}

.bg-color-transparent\:hover:hover,.color-transparent,.color-transparent\:hover:hover {
    color: transparent
}

.bg-color-success {
    background-color: #3c763d
}

.bg-color-success\:hover:hover,.color-success,.color-success\:hover:hover {
    color: #3c763d
}

.bg-color-warning {
    background-color: #8a6d3b
}

.bg-color-warning\:hover:hover,.color-warning,.color-warning\:hover:hover {
    color: #8a6d3b
}

.bg-color-danger {
    background-color: #a94442
}

.bg-color-danger\:hover:hover,.color-danger,.color-danger\:hover:hover {
    color: #a94442
}

.bg-color-gold {
    background-color: #837550
}

.bg-color-gold\:hover:hover,.color-gold,.color-gold\:hover:hover {
    color: #837550
}

#supply-cta,.brand,.cart-item__img,.embed .embed__iframe,.menu__promo,.missing-image,.modal-product__img,.order-summary-product__img,.partner__img,.product-brand,.product-flag,.product-thumbnail,.recipe-feature__left,.recipe-feature__right,.related-news__item,.value-member__img {
    background-color: rgba(255,221,243,.2);
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' fill='none' stroke='%2300162f' stroke-linecap='round' stroke-linejoin='round' class='css-i6dzq1' viewBox='0 0 24 24'%3E%3Crect width='18' height='18' x='3' y='3' rx='2' ry='2'/%3E%3Ccircle cx='8.5' cy='8.5' r='1.5'/%3E%3Cpath d='m21 15-5-5L5 21'/%3E%3C/svg%3E");
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 60px
}

.white-space-nowrap {
    white-space: nowrap
}

@media(min-width: 992px) {
    .white-space-nowrap-desktop {
        white-space:nowrap
    }
}

.negative-header-margin {
    margin-top: -105px
}

.negative-top-margin {
    margin-top: -25px
}

header {
    background-color: #4c1a3a;
    height: 60px;
    isolation: isolate;
    left: 0;
    padding: 0;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 300
}

header .header__mobile-search {
    height: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: calc(100% - 1px)
}

header .header__top {
background: #341226;
    height: 35px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 12px;
    color: rgba(250, 246, 241, 0.75);
}
a.link-header {
    color: rgba(250, 246, 241, 1);
	padding: 0 10px;
}
header .header__top a:hover {
    color: #a8a8a8;
    text-decoration: none
}

@media(min-width: 768px) {
    header .header__top {
        display:block
    }
}

header .header__inner {
    background-color: #FAF6F1;
    isolation: isolate;
    position: relative;
    z-index: 11
}

@media(min-width: 992px) {
    header .header__inner {
        padding:1.5rem 0 0
    }
}

header .header__icon {
    cursor: pointer;
    display: block;
    flex: 0 0 auto;
    height: 23px;
    margin-right: 1.5rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 23px
}

header .header__icon:last-of-type {
    margin-right: 0
}

header .header__icon i,header .header__icon svg {
    display: block;
    height: 23px;
    width: 23px
}

@media(min-width: 576px) {
    header .header__icon i,header .header__icon svg {
        height:26px;
        width: 26px
    }
}

@media(min-width: 992px) {
    header .header__icon i,header .header__icon svg {
        height:31px;
        width: 31px
    }
}

@media(min-width: 576px) {
    header .header__icon {
        height:26px;
        width: 26px
    }
}

@media(min-width: 992px) {
    header .header__icon {
        height:31px;
        margin-right: 2rem;
        width: 31px
    }
}

@media(min-width: 1200px) {
    header .header__icon {
        margin-right:3rem
    }
}

header .reminder {
    left: 0;
    position: absolute;
    right: 0;
    top: 100%
}

@media(min-width: 768px) {
    header .reminder {
        position:relative;
        top: unset
    }
}

@media(min-width: 576px) {
    header {
        height:78px
    }
}

@media(min-width: 768px) {
    header {
        height:127px
    }
}

@media(min-width: 992px) {
    header {
        height:auto;
        position: relative
    }
}

.footer {
    background: #241019;
    color: #fff;
    font-weight: 300;
    padding: 1.5rem 0
}

.footer__main {
    padding: 0 0 1.5rem
}

@media(min-width: 992px) {
    .footer__main {
        padding:2rem 0
    }
}

.footer__compliance {
    align-items: flex-start;
    border-top: 2px solid #d8d8d8;
    color: #a8a8a8;
    display: flex;
    flex-direction: column;
    font-size: 12px;
    justify-content: flex-start;
    padding-top: 1.5rem
}

@media(min-width: 992px) {
    .footer__compliance {
        align-items:center;
        flex-direction: row;
        justify-content: space-between
    }
}

.menu {
    isolation: isolate;
    margin-top: 1.5rem;
    z-index: 1
}

.menu,.menu__list {
    display: block;
    width: 100%
}

.menu__list {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.menu__list--depth-0 {
    align-items: center;
    display: flex;
    justify-content: space-between
}

.menu__list--depth-0>.menu__item {
    padding: 1rem;
}

.menu__list--depth-0>.menu__item:first-of-type>.menu__link {
    padding-left: 0
}

.menu__list--depth-0>.menu__item:last-of-type>.menu__link {
    padding-right: 0
}

.menu__list--depth-0>.menu__item>.menu__link {
    color: #fff;
    font-size: 20px;
    margin-bottom: 0
}

@media(min-width: 1200px) {
    .menu__list--depth-0>.menu__item>.menu__link {
        padding:0 1rem;
    }
}

.menu__item:hover .menu__dropdown {
    display: block
}

.menu__link {
    color: inherit;
    position: relative
}

.menu__link--has-children {
    align-items: center;
    display: flex;
    flex-direction: row
}

.menu__link--has-children:after {
    background: transparent;
    border-bottom: 2px solid;
    border-right: 2px solid;
    content: "";
    display: block;
    height: 7px;
    margin-left: .5rem;
    margin-top: -3.5px;
    transform: rotate(45deg);
    transform-origin: center;
    width: 7px
}

.menu__link--primary {
    color: #4c1a3a;
    display: flex;
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 1rem;
    padding-right: .5rem;
    text-transform: uppercase
}

.menu__dropdown {
    background: #fff;
    box-shadow: 0 3px 1px 0 #c9c9c9;
    display: none;
    left: 0;
    padding: 2rem;
    position: absolute;
    right: 0;
    top: 100%
}

.menu__container {
    align-items: flex-start;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    height: 100%;
    justify-content: space-between;
    position: relative
}

.menu__columns {
    grid-gap: 0;
    display: grid;
    flex: 1;
    grid-auto-flow: dense;
    grid-template-columns: repeat(12,1fr);
    grid-template-rows: auto
}

.menu__column {
    display: flex;
    flex-direction: column;
    grid-column: span 3
}

.menu__column--1 {
    grid-column: span 1
}

.menu__column--2 {
    grid-column: span 2
}

.menu__column--3 {
    grid-column: span 3
}

.menu__column--4 {
    grid-column: span 4
}

.menu__column--5 {
    grid-column: span 5
}

.menu__column--6 {
    grid-column: span 6
}

.menu__column--7 {
    grid-column: span 7
}

.menu__column--8 {
    grid-column: span 8
}

.menu__column--9 {
    grid-column: span 9
}

.menu__column--10 {
    grid-column: span 10
}

.menu__column--11 {
    grid-column: span 11
}

.menu__column--12 {
    grid-column: span 12
}

.menu__column--break {
    grid-column-start: 1
}

.menu__column .list__item {
    padding-right: 1.25rem
}

.menu__column .list__item--children {
    position: relative
}

.menu__column .list__item--children:hover>.list {
    display: flex
}

.menu__column .list__item--children>.list__link {
    align-items: flex-start;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    padding-right: .5rem
}

.menu__column .list__item--children>.list__link:after {
    align-self: center;
    background: transparent;
    border-bottom: 1px solid;
    border-right: 1px solid;
    content: "";
    display: block;
    height: 6px;
    pointer-events: none;
    transform: rotate(-45deg);
    transform-origin: center;
    width: 6px
}

.menu__column .list__link {
    font-size: 14px;
    font-weight: lighter;
    line-height: 18px
}

.menu__block {
    margin-bottom: 1.5rem
}

.menu__block .list[data-depth="4"] {
    background: #fff;
    border: 1px solid #d8d8d8;
    display: none;
    flex-direction: column;
    isolation: isolate;
    left: calc(100% - 10px);
    min-width: 244px;
    padding: 1rem;
    position: absolute;
    top: -10px;
    z-index: 1
}

.menu__promo {
    align-items: center;
    border: 1px solid #d8d8d8;
    color: #fff;
    display: flex;
    height: auto;
    justify-content: center;
    overflow: hidden;
    position: relative;
    width: 100%
}

.menu__promo img {
    aspect-ratio: 1;
    height: 100%;
    max-width: none;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

@media(hover: hover) {
    .menu a:hover {
        color:#a8a8a8;
        text-decoration: none
    }
}

.mobile-menu__arrow {
    align-items: center;
    cursor: pointer;
    display: flex;
    height: 50px;
    justify-content: flex-end;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 50px
}

.mobile-menu__arrow:after {
    background: none;
    border-bottom: 2px solid #4c1a3a;
    border-right: 2px solid #4c1a3a;
    content: "";
    display: block;
    height: 8px;
    margin-top: -5px;
    pointer-events: none;
    transform: rotate(45deg);
    transform-origin: center;
    width: 8px
}

.mobile-menu>.list {
    border-left: none!important;
    margin: 0
}

.mobile-menu>.list .list {
    display: none;
    margin: 0;
    padding: 0 0 0 1rem
}

.mobile-menu>.list .list.active {
    display: block
}

.mobile-menu .list {
    border-left: 1px solid #eee
}

.mobile-menu .list__item {
    color: #4c1a3a;
    display: block;
    font-family: 'Work Sans',sans-serif;
    font-size: 1rem;
    font-weight: 300;
    margin: 0;
    text-transform: capitalize;
    width: 100%
}

.mobile-menu .list__item--primary {
    font-family: Newsreader,sans-serif;
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase
}

.mobile-menu .list__item--secondary {
    font-family: 'Work Sans',sans-serif;
    font-weight: 600;
    text-transform: uppercase
}

.mobile-menu .list__link {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding: .5rem 0;
    position: relative;
    width: 100%
}

.newsletter {
    background: #F5F0E9;
    color: #fff;
    margin-top: auto;
    padding: 25px 0;
    text-align: center
}

.newsletter,.newsletter__form {
    display: flex;
    flex-direction: column;
    justify-content: center
}

.newsletter__form {
    align-items: center
}

@media(min-width: 768px) {
    .newsletter__form {
        flex-direction:row
    }
}

.newsletter__input {
width: 340px; padding: 14px 18px; border: 1px solid rgb(216, 205, 195); border-radius: 2px; font-size: 13px; font-family: 'Work Sans', sans-serif;
}

@media(min-width: 768px) {
    .newsletter__input {
        margin-bottom:0;
        margin-right: 1rem;
        width: 400px
    }
}

.newsletter__heading {
    margin-bottom: 1.5rem
}

@media(min-width: 992px) {
    .newsletter__heading {
        margin-bottom:0;
        margin-right: 3rem
    }
}

@media(min-width: 768px) {
    .newsletter {
        align-items:center;
        flex-direction: row
    }
}

.glide__slides {
    flex-direction: row
}

.glide__slide {
    height: auto!important
}

.glide__control {
    align-items: center;
    cursor: pointer;
    display: none;
    height: 60px;
    justify-content: center;
    opacity: 1;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    transition: opacity .3s ease;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 60px
}

.glide__control:hover {
    opacity: .6
}

.glide__control--prev {
    left: calc(-60px - 1rem)
}

.glide__control--next {
    right: calc(-60px - 1rem)
}

@media(min-width: 992px) {
    .glide__control {
        display:flex
    }
}

#js-product-list-top {
    isolation: isolate;
    position: relative;
    z-index: 11
}

#js-product-list {
    isolation: isolate;
    z-index: 1
}

#js-product-list,#js-product-list-bottom {
    position: relative
}

.sort-by {
    align-items: center;
    display: flex;
    flex-direction: row
}

.sort-by__label {
    font-size: 13px;
    font-weight: 400;
    margin: 0 1rem 0 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.homepage-text {
    background: linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.7)),url(/themes/classic-fine-foods/assets/img/stock/stock_about_mobile.jpg) 50%;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    isolation: isolate;
    padding: 3rem 0 15rem;
    position: relative;
    z-index: 1
}

.homepage-text:before {
    background: linear-gradient(180deg,#71737d 0,#71737d 50%,transparent);
    content: "";
    display: none;
    height: 210px;
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1
}

.homepage-text__overlay {
    position: relative;
    z-index: 2
}

.homepage-text__title {
    font-size: 30px
}

@media(min-width: 768px) {
    .homepage-text__title {
        font-size:48px
    }
}

.homepage-text__body {
    font-size: 1rem
}

@media(min-width: 768px) {
    .homepage-text__body {
        font-size:20px
    }
}

@media(min-width: 576px) {
    .homepage-text {
        background-attachment:fixed;
        background-image: url(/themes/classic-fine-foods/assets/img/stock/stock_about.jpg);
        padding: 8rem 0
    }

    .homepage-text:before {
        background: linear-gradient(270deg,rgba(0,0,0,.6) 0,rgba(0,0,0,.6) 25%,transparent);
        bottom: 0;
        content: "";
        height: 100%;
        left: 0;
        pointer-events: none;
        position: absolute;
        right: 0;
        top: 0;
        z-index: 1
    }
}

.homepage-feature {
    background-color: #050003;
    color: #fff;
    min-height: 280px;
    padding: calc(280px + 2rem) 0 2rem;
    position: relative
}

.homepage-feature__img {
    align-items: center;
    bottom: 0;
    display: flex;
    height: 280px;
    justify-content: center;
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

.homepage-feature__img img {
    max-width: none;
    min-height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

@media(min-width: 992px) {
    .homepage-feature__img {
        height:100%;
        left: unset;
        width: 50%
    }

    .homepage-feature {
        height: 580px;
        padding: 6rem 0
    }
}

.recipe-feature {
    display: grid;
    padding: 20px 0;
    position: relative
}

@media(min-width: 768px) {
    .recipe-feature {
        grid-gap:1rem;
        grid-template-columns: repeat(3,1fr);
        grid-template-rows: 1fr
    }
}

@media(min-width: 992px) {
    .recipe-feature {
        grid-gap:2rem
    }
}

.recipe-feature:hover .recipe-feature__left {
    transform: translateY(-20px)
}

.recipe-feature:hover .recipe-feature__right {
    transform: translateY(20px)
}

.recipe-feature__left,.recipe-feature__right {
    align-items: center;
    border: 1px solid #d8d8d8;
    display: flex;
    justify-content: center;
    overflow: hidden;
    transition: all .6s ease
}

.recipe-feature__left img,.recipe-feature__right img {
    aspect-ratio: 1;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.recipe-feature__left {
    grid-column: 1/1;
    opacity: .6
}

.recipe-feature__right {
    grid-column: 2/-1
}

.recipe-feature__overlay {
    background: #fff;
    border: 1px solid #4c1a3a;
    display: flex;
    flex-direction: column;
    max-width: 650px;
    padding: 1rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%
}

@media(min-width: 768px) {
    .recipe-feature__overlay {
        left:10%;
        max-width: 550px
    }
}

@media(min-width: 992px) {
    .recipe-feature__overlay {
        padding:2rem
    }
}

.related-news {
    display: grid;
    grid-auto-flow: dense;
    grid-template-columns: repeat(1,1fr);
    grid-template-rows: repeat(3,auto)
}

@media(min-width: 992px) {
    .related-news {
        grid-gap:2rem;
        grid-template-columns: repeat(4,1fr);
        grid-template-rows: repeat(2,1fr);
        max-height: 1000px
    }

    .related-news__item {
        align-items: center;
        border: 1px solid #d8d8d8;
        display: flex;
        justify-content: center;
        opacity: 1;
        overflow: hidden;
        position: relative;
        text-decoration: none;
        transition: opacity .3s ease
    }

    .related-news__item:hover {
        opacity: .6;
        text-decoration: none
    }

    .related-news__item--one {
        grid-column: 1/3;
        grid-row: 1/-1
    }

    .related-news__item--one .related-news__overlay {
        bottom: 1.5rem;
        left: 1.5rem;
        right: 1.5rem
    }

    .related-news__item--two {
        grid-column: 3/-1;
        grid-row: 1/1
    }

    .related-news__item--two .related-news__overlay {
        bottom: 1.5rem;
        left: 1.5rem;
        width: 60%
    }

    .related-news__item--three {
        grid-column: 3/-1;
        grid-row: 2/-2
    }

    .related-news__item--three .related-news__overlay {
        bottom: 1.5rem;
        right: 1.5rem;
        width: 60%
    }

    .related-news__item img {
        aspect-ratio: 1;
        height: auto;
        min-height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        width: 100%
    }
}

.related-news__overlay {
    background: #fff;
    border: 1px solid #4c1a3a;
    padding: 1.5rem
}

@media(min-width: 992px) {
    .related-news__overlay {
        display:block;
        overflow: hidden;
        position: absolute
    }
}

.search-mobile {
    isolation: isolate;
    position: relative;
    transform: translateY(-100%);
    transition: all .3s ease;
    z-index: 1
}

.search-mobile.active {
    transform: translateY(0)
}

.search-mobile.active .search-mobile__overlay {
    opacity: 1;
    visibility: visible
}

.search-mobile__wrap {
    background: #fff;
    border-bottom: 1px solid #d8d8d8;
    padding: 1rem 0;
    position: relative;
    z-index: 2
}

.search-mobile__overlay {
    background: rgba(0,0,0,.55);
    height: 100vh;
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition: all .3s ease;
    visibility: hidden;
    z-index: 1
}

.search-mobile__results {
    border-top: 1px solid #d8d8d8;
    display: flex;
    flex-direction: column;
    margin-top: 1.5rem
}

.search-mobile__result {
    cursor: pointer;
    line-height: 35px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.search-mobile__result:first-of-type {
    padding-top: .75rem
}

@media(min-width: 992px) {
    .search-mobile {
        display:none
    }
}

.termsfeed-com---nb {
    background-color: transparent!important;
    max-width: 100%;
    width: 100%
}

.termsfeed-com---palette-light .cc-nb-okagree {
    background-color: #4c1a3a!important
}

.termsfeed-com---palette-light .cc-nb-okagree:hover {
    background-color: #260d1d!important
}

.termsfeed-com---palette-light .cc-pc-head-lang-close:focus,.termsfeed-com---palette-light .cc-pc-head-lang-select:focus {
    box-shadow: 0 0 0 2px #4c1a3a!important
}

.termsfeed-com---palette-light .cc-cp-foot-save {
    background-color: #4c1a3a!important
}

.termsfeed-com---palette-light .cc-cp-foot-save:hover {
    background-color: #260d1d!important
}

.termsfeed-com---palette-light .cc-custom-checkbox:checked+label:before {
    background-color: #4c1a3a!important
}

.cc-nb-main-container {
    background-color: #e7e7e7;
    padding: 20px!important
}

.checkbox,.custom-checkbox {
    display: inline-block;
    position: relative
}

.checkbox [type=checkbox]:checked,.checkbox [type=checkbox]:not(:checked),.custom-checkbox [type=checkbox]:checked,.custom-checkbox [type=checkbox]:not(:checked) {
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

.checkbox [type=checkbox]:checked+label,.checkbox [type=checkbox]:not(:checked)+label,.custom-checkbox [type=checkbox]:checked+label,.custom-checkbox [type=checkbox]:not(:checked)+label {
    cursor: pointer;
    display: inline-block;
    padding-left: 30px;
    position: relative
}

.checkbox [type=checkbox]:checked+label em,.checkbox [type=checkbox]:not(:checked)+label em,.custom-checkbox [type=checkbox]:checked+label em,.custom-checkbox [type=checkbox]:not(:checked)+label em {
    display: inline-block
}

.checkbox [type=checkbox]:checked+label:before,.checkbox [type=checkbox]:not(:checked)+label:before,.custom-checkbox [type=checkbox]:checked+label:before,.custom-checkbox [type=checkbox]:not(:checked)+label:before {
    background: #fff;
    border: 1px solid #d8d8d8;
    border-radius: 3px;
    content: "";
    height: 16px;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    transition: .1s ease;
    width: 16px
}

.checkbox [type=checkbox]:checked+label:after,.checkbox [type=checkbox]:not(:checked)+label:after,.custom-checkbox [type=checkbox]:checked+label:after,.custom-checkbox [type=checkbox]:not(:checked)+label:after {
    background-color: #1b2127;
    border-radius: 3px;
    content: "";
    height: 12px;
    left: 3px;
    position: absolute;
    top: 50%;
    right: 1%;
    transform: translateY(-50%);
    transition: .1s ease;
    width: 12px;
}

.checkbox [type=checkbox]:not(:checked)+label:after,.custom-checkbox [type=checkbox]:not(:checked)+label:after {
    opacity: 0
}

.checkbox [type=checkbox]:checked+label:after,.checkbox [type=checkbox]:hover+label:after,.custom-checkbox [type=checkbox]:checked+label:after,.custom-checkbox [type=checkbox]:hover+label:after {
    opacity: 1
}

.file {
    background: none!important;
    border: none!important
}

#signaturePad {
    border: 1px solid #5f5f5f;
    border-radius: 0
}

#signaturePad,.input,input {
    background: #f4f4f4;
    display: block
}

.input,input {
    -moz-appearance: none;
    appearance: none;
    -webkit-appearance: none;
    border: 1px solid #d8d8d8;
    border-radius: 0;
    font-size: 16px;
    height: 50px;
    outline: 0;
    padding: 0 1rem;
    width: 100%
}

.input:active,.input:focus,input:active,input:focus {
    background: #fff;
    border-color: #4c1a3a
}

.input--number::-webkit-inner-spin-button,.input--number::-webkit-outer-spin-button,input--number::-webkit-inner-spin-button,input--number::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0
}

.input--number[type=number],input--number[type=number] {
    -moz-appearance: textfield
}

.input--sm,input--sm {
    font-size: 14px;
    height: 40px;
    line-height: 40px
}

.input--reset,input--reset {
    border: 0
}

.input--reset:active,.input--reset:focus,input--reset:active,input--reset:focus {
    border-color: #d8d8d8
}

.file-upload {
    align-items: center;
    display: flex;
    flex-direction: row
}

.file-upload input {
    height: .1px;
    opacity: 0;
    position: absolute;
    visibility: hidden;
    width: .1px
}

.file-upload__input {
    background: #f4f4f4;
    border: 1px solid #d8d8d8;
    border-radius: 0;
    border-right: 0;
    flex: 1;
    height: 50px;
    line-height: 48px;
    order: 0;
    overflow: hidden;
    padding: 0 1rem;
    text-overflow: ellipsis;
    white-space: nowrap
}

.file-upload label {
    align-items: center;
    border-color: #4c1a3a!important;
    display: flex!important;
    flex: 0 0 auto;
    justify-content: center;
    margin: 0;
    order: 1
}

.custom-radio {
    display: inline-block;
    position: relative
}

.custom-radio [type=radio]:checked,.custom-radio [type=radio]:not(:checked) {
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

.custom-radio [type=radio]:checked+label,.custom-radio [type=radio]:not(:checked)+label {
    cursor: pointer;
    display: inline-block;
    padding-left: 30px;
    position: relative
}

.custom-radio [type=radio]:checked+label em,.custom-radio [type=radio]:not(:checked)+label em {
    display: inline-block
}

.custom-radio [type=radio]:checked+label:before,.custom-radio [type=radio]:not(:checked)+label:before {
    background: #fff;
    border: 1px solid #d8d8d8;
    border-radius: 100%;
    content: "";
    height: 18px;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    transition: .1s ease;
    width: 18px
}

.custom-radio [type=radio]:checked+label:after,.custom-radio [type=radio]:not(:checked)+label:after {
    background-color: #1b2127;
    border-radius: 100%;
    content: "";
    height: 10px;
    left: 0;
    margin-left: 4px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    transition: .1s ease;
    width: 10px
}

.custom-radio [type=radio]:not(:checked)+label:after {
    opacity: 0
}

.custom-radio [type=radio]:checked+label:after,.custom-radio [type=radio]:hover+label:after {
    opacity: 1
}

.select-wrapper {
    position: relative
}

.select-wrapper:hover .icon {
    color: #1b2127
}

.select-wrapper .icon {
    pointer-events: none;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    transition: .1s ease
}

select {
    -moz-appearance: none;
    appearance: none;
    -webkit-appearance: none;
    background: #f4f4f4;
    border: 1px solid #d8d8d8;
    border-radius: 0;
    cursor: pointer;
    display: block;
    font-size: 16px;
    height: 50px;
    outline: 0;
    padding: 0 40px 0 1rem;
    width: 100%
}

select::-ms-expand {
    display: none
}

select:active,select:focus {
    background: #fff;
    border-color: #4c1a3a
}

select:active::-ms-value,select:focus::-ms-value {
    background-color: transparent;
    color: #000
}

label {
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    margin-bottom: .25rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    vertical-align: top
}

.textarea,textarea {
    -moz-appearance: none;
    appearance: none;
    -webkit-appearance: none;
    background: #f4f4f4;
    border: 1px solid #d8d8d8;
    border-radius: 0;
    display: block;
    font-family: 'Work Sans',sans-serif;
    font-size: 1rem;
    min-height: 150px;
    outline: 0;
    padding: 1rem;
    resize: vertical;
    width: 100%
}

.textarea:active,.textarea:focus,textarea:active,textarea:focus {
    border-color: #4c1a3a
}

.icon {
    cursor: pointer;
    display: block;
    opacity: 1;
    position: relative;
    transition: opacity .3s ease
}

@media(hover: hover) {
    .icon:hover {
        opacity:.6
    }
}

.icon--sm {
    font-size: 16px
}

.icon--md {
    font-size: 24px
}

.icon--large {
    font-size: 32px
}

.icon--primary {
    color: #4c1a3a
}

.icon--secondary {
    color: #1b2127
}

.icon--tertiary {
    color: #ffe642
}

.icon--white {
    color: #fff
}

.icon--black {
    color: #050003
}

.icon--cross {
    height: 1em;
    width: 1em
}

.icon--cross:after,.icon--cross:before {
    background-color: currentColor;
    content: "";
    height: 3px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    transform-origin: center;
    width: 100%
}

.icon--cross:before {
    transform: translate(-50%,-50%) rotate(45deg)
}

.icon--cross:after {
    transform: translate(-50%,-50%) rotate(-45deg)
}

.address-item {
    border: 1px solid #d8d8d8;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-bottom: 15px;
    width: 100%
}

.address-item:last-of-type {
    margin-bottom: 0
}

.address-item__content {
    flex: 1;
    padding: 1rem
}

.address-item__actions {
    border-top: 1px solid #d8d8d8;
    display: flex;
    flex: 1;
    flex-direction: row;
    justify-content: flex-end;
    min-height: 50px
}

@media(min-width: 768px) {
    .address-item__actions {
        border-top:0;
        max-width: 20%
    }
}

.address-item__action {
    align-items: center;
    background: #f4f4f4;
    border-right: 1px solid #d8d8d8;
    display: flex;
    flex: 0 0 50%;
    justify-content: center;
    max-width: 50%;
    text-decoration: none!important
}

.address-item__action:last-of-type {
    border-right: 0
}

.address-item__action:hover {
    background: #4c1a3a;
    color: #fff
}

@media(min-width: 768px) {
    .address-item__action:first-of-type {
        border-left:1px solid #d8d8d8
    }

    .address-item {
        flex-direction: row
    }
}

.product-advert {
    display: block;
    transition: all .4s ease-in-out
}

.product-advert__image {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.product-advert__image--mobile {
    display: block
}

@media(min-width: 768px) {
    .product-advert__image--mobile {
        display:none
    }
}

.product-advert__image--desktop {
    display: none
}

@media(min-width: 768px) {
    .product-advert__image--desktop {
        display:block
    }
}

.product-advert__content * {
    color: #fff;
    padding: 36px 24px
}

.product-advert__content :last-child {
    margin-bottom: 0
}

.product-advert:hover {
    cursor: pointer;
    filter: drop-shadow(0 8px 12px #a3a3a3);
    transform: scale(1.025)
}

.alert,.product-message {
    border: 1px solid;
    border-left: 5px solid;
    border-radius: 0;
    clear: both;
    display: block;
    font-size: 14px;
    margin-bottom: 1.5rem;
    padding: 10px;
    width: 100%
}

.alert--success {
    background-color: #dff0d8;
    border-color: #d0e9c6;
    color: #3c763d
}

.alert--warning,.product-message {
    background-color: #fcf8e3;
    border-color: #faf2cc;
    color: #8a6d3b
}

.alert--danger,.alert--error {
    background-color: #f2dede;
    border-color: #ebcccc;
    color: #a94442
}

.alert ul,.product-message ul {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.alert a,.product-message a {
    color: inherit;
    text-decoration: underline
}

@media(min-width: 992px) {
    .alert,.product-message {
        font-size:1rem
    }
}

.banner {
    background-color: rgba(255,221,243,.2);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    isolation: isolate;
    min-height: 472px;
    overflow: hidden;
    padding: 2rem 0;
    position: relative;
    z-index: 1
}

.banner:after {
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    top: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 60%;
    z-index: 2
}

@media(max-width: 767.98px) {
    .banner--hide-mobile-bg .banner__image {
        display:none
    }
}

.banner--light:after {
    background: linear-gradient(90deg,#e3e7ea 0,#e3e7ea 30%,transparent)
}

.banner--no-overlay:after {
    background: unset
}

@media(min-width: 992px) {
    .banner--sm {
        height:360px!important
    }

    .banner--lg {
        height: 750px!important
    }
}

.banner--white .banner__content,.banner--white .banner__title {
    color: #fff;
    text-shadow: 0 0 0 #000
}

.banner--about .banner__content {
    max-width: 340px
}

.banner__overlay {
    align-items: flex-start;
    background-color: transparent;
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 3
}

.banner__title {
    color: #4c1a3a;
    display: block;
    line-height: 66px;
    margin: 0 0 1.5rem
}

@media(min-width: 992px) {
    .banner__title {
        font-size:60px
    }
}

.banner__link:hover {
    text-decoration: none!important
}

.banner__content {
    font-size: 20px;
    font-weight: 600;
    line-height: 26px
}

.banner__content--full {
    max-width: none!important
}

.banner__content p:last-of-type {
    margin: 0
}

@media(min-width: 992px) {
    .banner__content {
        max-width:40%
    }
}

.banner__image {
    align-items: center;
    bottom: 0;
    display: flex;
    justify-content: center;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    z-index: 1
}

.banner__image img {
    aspect-ratio: 1;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.bg {
    background-position: 50%;
    background-repeat: no-repeat
}

.bg--fixed {
    background-attachment: fixed
}

.bg--cover {
    background-size: cover
}

.brand {
    background-color: #fff;
    border: 1px solid #d8d8d8;
    display: block;
    opacity: 1;
    overflow: hidden;
    padding: 1rem;
    position: relative;
    transition: opacity .3s ease
}

.brand:hover {
    opacity: .6
}

.brand:before {
    content: "";
    display: block;
    padding-top: 100%
}

.brand__img {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 100%
}

.breadcrumb {
    margin-bottom: 5px
}

.breadcrumb ol {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 24px 0 0px;
    font-size: 14px;
    color: rgb(138, 123, 130);
}

.breadcrumb ol,.breadcrumb__crumb {
    align-items: center;
    list-style-type: none
}

.breadcrumb__crumb {
    color: #a8a8a8;
    display: none;
    margin-right: .25rem;
    vertical-align: top
}

.breadcrumb__crumb:last-of-type {
    margin-right: 0
}

.breadcrumb__crumb:last-of-type a {
    padding-right: 0
}

.breadcrumb__crumb:last-of-type span {
    color: #4c1a3a
}

.breadcrumb__crumb a {
    color: inherit;
    font-weight: 600;
    padding-right: .25rem
}

.breadcrumb__crumb a:hover {
    text-decoration: none
}

.breadcrumb__crumb a span {
    font-size: 12px
}

.breadcrumb__crumb a span:hover {
    color: #1b2127
}

@media(min-width: 768px) {
    .breadcrumb__crumb a span {
        font-size:14px
    }
}

@media(min-width: 1200px) {
    .breadcrumb__crumb a span {
        font-size:1rem
    }
}

.breadcrumb__crumb:nth-last-child(-n+2) {
    display: flex!important
}

@media(min-width: 768px) {
    .breadcrumb__crumb {
        display:flex
    }
}

@media(min-width: 992px) {
    .breadcrumb {
        margin-bottom:5px
    }
}

.btn,.file-upload label,.promo__btn {
    -moz-appearance: none;
    appearance: none;
    -webkit-appearance: none;
    border: 1px solid;
    border-radius: 0;
    color: inherit;
    cursor: pointer;
    display: inline-block;
    font-weight: 600;
    height: 50px;
    line-height: 50px;
    outline: 0;
    padding: 0 1.5rem;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    vertical-align: top
}

.btn:hover,.file-upload label:hover,.promo__btn:hover {
    color: inherit;
    text-decoration: none
}

.btn[disabled],.file-upload label[disabled],[disabled].promo__btn {
    opacity: .2;
    pointer-events: none
}

.btn.loading,.file-upload label.loading,.loading.promo__btn {
    pointer-events: none;
    position: relative
}

.btn.loading.btn--purple,.file-upload label.loading,.loading.btn--purple.promo__btn {
    color: #4c1a3a
}

.btn.loading:before,.file-upload label.loading:before,.loading.promo__btn:before {
    animation: spinner .6s linear infinite;
    border: 2px solid #fff;
    border-radius: 50%;
    border-top-color: #000;
    box-sizing: border-box;
    content: "";
    height: 20px;
    left: 50%;
    margin-left: -10px;
    margin-top: -10px;
    position: absolute;
    top: 50%;
    width: 20px
}

.btn--active {
    cursor: not-allowed
}

.btn--sm {
    font-size: 14px;
    height: 40px;
    line-height: 40px;
    padding: 0 1rem
}

.btn--reset {
    background: none;
    border: 0
}

.btn--icon {
    align-items: center;
    display: inline-flex;
    justify-content: center
}

.btn--fixed {
    max-width: 263px;
    width: 100%
}

.btn--square {
    align-items: center;
    display: flex;
    justify-content: center;
    padding: 0;
    height: 38px;
    /* line-height: 22px; */
}

.btn--outline {
    background: transparent;
    border-color: currentColor
}

.btn--muted {
    opacity: .4
}

.btn--muted:hover:not(:disabled) {
    opacity: 1
}

.btn--gold {
    background: #837550;
    border-color: #fff;
    color: #fff
}

.btn--gold:hover {
    background: #fff;
    color: #837550
}

.btn--purple,.file-upload label {
    background: #4c1a3a;
    border-color: #4c1a3a;
    color: #fff
}

.btn--purple:hover,.file-upload label:hover {
    background: #fff;
    color: #4c1a3a
}

.btn--purple-outline {
    border-color: #fff
}

.btn--purple-outline:hover {
    color: #4c1a3a!important
}

.btn--white {
    background: #fff;
    color: #4c1a3a
}

.btn--white-outline,.promo__btn {
    background: #fff;
    border-color: #4c1a3a;
    color: #000
}

.btn--white-outline:hover:not(:disabled),.promo__btn:hover:not(:disabled) {
    background: #4c1a3a;
    border-color: #4c1a3a;
    color: #fff
}

.btn--white:hover:not(:disabled) {
    background: #fff;
    color: #4c1a3a
}

.btn--fullwidth {
    width: 100%
}

@media(max-width: 991.98px) {
    .btn--fullwidth-mobile {
        max-width:none;
        width: 100%!important
    }
}

.btn.show-more,.file-upload label.show-more,.show-more.promo__btn {
    color: #fff
}

.btn.show-more:hover,.file-upload label.show-more:hover,.show-more.promo__btn:hover {
    color: #4c1a3a
}

.cart-item {
    align-items: center;
    border-bottom: 1px solid #d8d8d8;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    overflow: hidden;
    padding: .75rem;
    position: relative;
    text-decoration: none;
    transition: padding-right .3s ease;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 100%
}

.cart-item--active .cart-item__draw {
    left: calc(100% - 45px)
}

@media(min-width: 768px) {
    .cart-item--active {
        padding-right:90px!important
    }

    .cart-item--active .cart-item__draw {
        left: calc(100% - 90px)
    }
}

.cart-item:last-of-type {
    border-bottom: none
}

.cart-item__img {
    align-self: flex-start;
    border: 1px solid #d8d8d8;
    flex: 0 0 30%;
    max-width: 30%;
    overflow: hidden;
    position: relative
}

.cart-item__img:before {
    content: "";
    display: block;
    padding-top: 100%
}

.cart-item__img img {
    bottom: 0;
    left: 0;
    min-height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

@media(min-width: 768px) {
    .cart-item__img {
        align-self:center;
        flex: 0 0 10%;
        max-width: 10%;
        min-width: 100px
    }
}

.cart-item__product {
    align-self: flex-start;
    display: flex;
    flex: 1;
    flex-direction: column;
    font-size: 14px;
    justify-content: flex-start;
    max-width: none;
    padding-left: .75rem;
    padding-right: .75rem
}

@media(min-width: 576px) {
    .cart-item__product {
        font-size:1rem
    }
}

@media(min-width: 768px) {
    .cart-item__product {
        align-self:center;
        max-width: 40%;
        padding-left: 1.5rem;
        padding-right: 0
    }
}

.cart-item__quantity {
    display: flex;
    flex: 0 0 80%;
    justify-content: flex-start;
    margin-top: 1rem;
    max-width: 80%;
    padding: 0 .5rem 0 0
}

.cart-item__quantity input {
    height: 40px;
    max-width: none
}

@media(min-width: 768px) {
    .cart-item__quantity input {
        height:50px;
        max-width: 80px
    }

    .cart-item__quantity {
        flex: 0 0 40%;
        justify-content: center;
        margin-top: 0;
        max-width: 40%;
        padding: 0 .5rem
    }
}

@media(min-width: 992px) {
    .cart-item__quantity {
        flex:0 0 25%;
        max-width: 25%
    }
}

.cart-item__price {
    display: none;
    flex: 0 0 15%;
    justify-content: center;
    max-width: 15%;
    padding: 0 .5rem
}

@media(min-width: 992px) {
    .cart-item__price {
        display:flex
    }
}

.cart-item__handle {
    align-items: center;
    color: #a8a8a8;
    cursor: pointer;
    display: flex;
    flex: 0 0 20%;
    height: 100%;
    justify-content: flex-end;
    margin-left: auto;
    margin-top: 1rem;
    max-width: 20%;
    opacity: 1;
    padding: 0 0 0 .5rem;
    transition: opacity .3s ease
}

.cart-item__handle:hover {
    opacity: .6
}

@media(min-width: 768px) {
    .cart-item__handle {
        flex:0 0 10%;
        margin-top: 0;
        max-width: 10%;
        padding: 0 .5rem
    }
}

.cart-item__draw {
    align-items: center;
    background: #f2dede;
    bottom: 0;
    display: flex;
    justify-content: center;
    left: 100%;
    padding: .5rem;
    position: absolute;
    text-align: center;
    top: 0;
    transition: left .3s ease;
    transition: all .3s ease;
    width: 45px;
    will-change: left
}

@media(hover: hover) {
    .cart-item__draw:hover {
        background:#ebcccc
    }
}

.cart-item__draw svg {
    stroke: #a94442
}

@media(min-width: 768px) {
    .cart-item__draw {
        padding:1rem;
        width: 90px
    }

    .cart-item {
        padding: 1rem
    }
}

.cart__voucher-form__inner {
    display: flex;
    margin-bottom: 15px
}

.cart__voucher-form__btn {
    background: #4c1a3a;
    border: 1px solid #4c1a3a;
    color: #fff
}

.cart__voucher-applied {
    background-color: #fff;
    border: 1px solid #d8d8d8;
    list-style: none;
    padding: 10px
}

.cart__voucher-applied li {
    display: flex
}

.cart__voucher-applied li a {
    margin-left: auto
}

.cta {
    align-items: flex-start;
    display: flex;
    height: auto;
    justify-content: center;
    overflow: hidden;
    padding: .5rem;
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 100%;
    flex-direction: column;
}

.cta:hover .cta__img {
    filter: blur(6px)
}

.cta--square:before {
    content: "";
    display: block;
    padding-top: 100%
}

.cta--square .cta__img {
    bottom: 0;
    left: 0;
    min-height: 100%;
    min-width: 100%;
    position: absolute;
    right: 0;
    top: 0
}

.cta--sm .cta__label {
    font-size: 24px;
    padding: 0
}

.cta__img {
    height: 100%;
    min-height: 320px;
    -o-object-fit: cover;
    object-fit: cover;
    transition: filter .6s ease;
    width: 100%
}

.cta__label {
    /* backface-visibility: hidden; */
    /* color: #fff; */
    /* font-family: Newsreader,sans-serif; */
    /* font-size: 1.4rem; */
    /* font-weight: 600; */
    /* left: 50%; */
    /* padding: 1rem; */
    /* position: absolute; */
    /* text-align: center; */
    /* top: 50%; */
    /* transform: translate(-50%,-50%); */
    font-family: Newsreader, serif;
    font-size: 22px!important;
    margin: 18px 0px 0;
    color: rgb(36, 26, 32);
    font-weight: 500;
    text-align: left;
}

@media(min-width: 992px) {
    .cta__label {
        font-size:2.4rem
    }
}

.cta-grid {
    display: none;
    gap: 2rem;
    grid-template-columns: repeat(3,1fr);
    grid-template-rows: auto;
    isolation: isolate;
    margin: 0 2rem;
    z-index: 1
}

.cta-grid__item {
    align-items: center;
    backface-visibility: hidden;
    display: flex;
    height: 100%;
    justify-content: center;
    max-width: none;
    min-height: 500px;
    overflow: hidden;
    position: relative
}

.cta-grid__item--tag {
    min-height: 450px
}

.cta-grid__item--tag .cta-grid__item-overlay {
    padding: 1.5rem
}

.cta-grid__item:hover .cta-grid__item-img {
    transform: scale(1.02)
}

.cta-grid__item:before {
    background: linear-gradient(0deg,rgba(0,0,0,.75) 0,rgba(0,0,0,.75) 30%,transparent);
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2
}

.cta-grid__item-img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    position: relative;
    transition: transform 1.4s ease;
    width: 100%;
    z-index: 1
}

.cta-grid__item-tag {
    color: #fff;
    margin: 0 0 auto
}

.cta-grid__item-overlay {
    align-items: flex-start;
    bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    left: 0;
    padding: 2rem .75rem;
    position: absolute;
    right: 0;
    text-align: left;
    top: 0;
    z-index: 3
}

@media(min-width: 576px) {
    .cta-grid__item-overlay {
        padding:2rem
    }
}

@media(min-width: 992px) {
    .cta-grid__item-overlay {
        padding:3rem 3rem 5rem
    }
}

.cta-grid__item-title {
    color: #fff;
    display: block;
    font-size: 26px;
    margin-bottom: .75rem
}

.cta-grid__item-date {
    color: #a8a8a8;
    display: block;
    font-size: 16px;
    margin-bottom: .75rem
}

.cta-grid__item-excerpt {
    color: #fff;
    display: block;
    font-weight: 300;
    margin-bottom: .75rem
}

@media(min-width: 992px) {
    .cta-grid {
        display:grid;
        height: 600px
    }
}

.embed {
    overflow: hidden;
    padding-top: 56.25%;
    position: relative;
    width: 100%
}

.embed .embed__iframe {
    border: 0;
    bottom: 0;
    height: 100%;
    left: 0;
    outline: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

.facet {
    margin-bottom: 1.5rem
}

.facet:last-of-type {
    margin-bottom: 0
}

.facet__list {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.facet__item {
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: .5rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 100%
}

.facet__item:last-of-type {
    margin-bottom: 0
}

.facet__item .checkbox {
    display: block;
    width: 100%
}

.facet__label {
    padding: 0!important;
    width: 100%
}

.facet__label:after,.facet__label:before {
    left: auto!important;
    right: 0
}

@media(min-width: 992px) {
    .facet {
        -ms-overflow-style:none;
        max-height: 240px;
        overflow-x: hidden;
        overflow-y: scroll;
        scrollbar-width: none
    }

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

.flyout {
    -ms-overflow-style: none;
    background: rgba(0,0,0,.55);
    bottom: 0;
    display: flex;
    flex-direction: column;
    isolation: isolate;
    left: 0;
    opacity: 0;
    overflow-x: hidden;
    overflow-y: scroll;
    position: fixed;
    right: 0;
    scrollbar-width: none;
    top: 0;
    top: 60px;
    transition: all .3s ease;
    visibility: hidden;
    width: 100%;
    z-index: 500
}

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

.flyout--active {
    opacity: 1;
    visibility: visible
}

.flyout--right {
    align-items: flex-end
}

.flyout--right.flyout--active .flyout__dialog {
    transform: translateX(0)
}

.flyout--right .flyout__dialog {
    border-left: 1px solid #d8d8d8;
    transform: translateX(100%)
}

.flyout--left {
    align-items: flex-start
}

.flyout--left.flyout--active .flyout__dialog {
    transform: translateX(0)
}

.flyout--left .flyout__dialog {
    border-right: 1px solid #d8d8d8;
    transform: translateX(-100%)
}

.flyout__dialog {
    background: #fff;
    flex: 1;
    max-width: 400px;
    transform: translateX(0);
    transition: all .3s ease;
    transition-delay: .3s;
    width: 100%
}

.flyout__close {
    cursor: pointer;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%)
}

.flyout__header {
    align-items: center;
    background: #f4f4f4;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    padding: .5rem 1rem
}

.flyout__body {
    padding: 1rem
}

@media(min-width: 576px) {
    .flyout {
        top:78px
    }
}

@media(min-width: 768px) {
    .flyout {
        top:127px
    }
}

@media(min-width: 992px) {
    .flyout {
        display:none!important
    }
}

.form__fields {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between
}

.form__fields .form__group:last-of-type {
    margin-bottom: 0
}

.form__group {
    flex: 0 0 100%;
    margin-bottom: 1.5rem
}

.form__group--split {
    flex: 0 0 100%;
    max-width: 100%
}

@media(min-width: 992px) {
    .form__group--split {
        flex:0 0 calc(50% - 1rem);
        max-width: calc(50% - 1rem)
    }
}

.form__group--thirds {
    flex: 0 0 calc(33.33333% - 0.5rem);
    max-width: calc(33.33333% - .5rem)
}

.flag {
    align-items: center;
    border-radius: 50%;
    display: flex;
    font-size: 12px;
    font-weight: 700;
    height: 50px;
    justify-content: center;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: .25rem;
    width: 50px
}

.flag--new {
    background: #4c1a3a;
    color: #fff;
    left: .25rem
}

.flag--sale {
    background: #b00;
    color: #fff;
    right: .25rem
}

.flag--out_of_stock {
    background: #a8a8a8;
    color: #fff;
    right: .25rem
}

.hero {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    isolation: isolate;
    min-height: 472px;
    overflow: hidden;
    position: relative
}

.hero,.hero__bg {
    align-items: center;
    display: flex;
    z-index: 1
}

.hero__bg {
    background-color: rgba(255,221,243,.2);
    bottom: 0;
    height: 100%;
    justify-content: center;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

.hero__bg img {
    aspect-ratio: 1;
    background: linear-gradient(90deg,hsla(0,0%,100%,.5),hsla(0,0%,100%,0));
    height: 100%;
    max-width: none;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.hero__bg img:not([src]) {
    visibility: hidden
}

.hero__overlay {
    position: relative;
    z-index: 2
}

.hero__link {
    display: block;
    max-width: 550px
}

.hero__link,.hero__link:hover {
    text-decoration: none
}

.hero__title {
    display: block;
    font-size: 36px;
    font-weight: 700;
    line-height: 42px;
    margin-bottom: 2rem
}

@media(min-width: 768px) {
    .hero__title {
        font-size:60px;
        line-height: 66px
    }
}

.hero__text {
    color: #000;
    display: block;
    font-size: 1rem;
    margin-bottom: 3rem
}

@media(min-width: 768px) {
    .hero__text {
        font-size:20px
    }
}

.hero__control {
    bottom: .5rem;
    cursor: pointer;
    position: absolute;
    z-index: 3
}

.hero__control--prev {
    align-items: center;
    display: flex;
    height: 100%;
    left: 0
}

@media(max-width: 575px) {
    .hero__control--prev {
        align-items:flex-end
    }
}

.hero__control--next {
    align-items: center;
    display: flex;
    height: 100%;
    right: 0
}

@media(max-width: 575px) {
    .hero__control--next {
        align-items:flex-end
    }
}

@media(min-width: 992px) {
    .hero__control {
        display:none
    }
}

@media(min-width: 768px) {
    .hero {
        justify-content:center
    }
}

.icon {
    stroke: currentColor;
    stroke-width: 1.75;
    stroke-linecap: round;
    stroke-linejoin: round;
    fill: none;
    height: 24px;
    width: 24px
}

.icon--primary {
    stroke: #4c1a3a
}

.icon--secondary {
    stroke: #1b2127
}

.icon--tertiary {
    stroke: #ffe642
}

.icon--white {
    stroke: #4c1a3a;
}

.icon--gray {
    stroke: #a8a8a8
}

.icon--red {
    stroke: #a94442
}

.icon--sm {
    height: 12px;
    width: 12px
}

.icon--md {
    height: 24px;
    width: 24px
}

.icon--lg {
    height: 36px;
    width: 36px
}

@media(max-width: 991.98px) {
    .icon--lg--responsive {
        height:28px;
        width: 28px
    }
}

.list {
    list-style-type: none;
    margin: 0 0 1.5rem;
    padding: 0
}

.list--white .list__link {
    color: #fff
}

.list--gray .list__link {
    color: #c4c4c4
}

.list__item {
    margin-bottom: .5rem
}

.list__item:last-of-type {
    margin-bottom: 0
}

.list__link {
    align-items: center;
    color: #000;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap
}

.list__link:hover {
    text-decoration: underline
}

@media(min-width: 992px) {
    .list {
        margin-bottom:0
    }
}

.logo {
    display: block;
    height: auto
}

.logo--footer {
    width: 110px
}

@media(min-width: 576px) {
    .logo--footer {
        width:200px
    }
}

.logo--header {
    max-width: 50px;
    padding: .75rem 0;
    width: 100%
}

@media(min-width: 576px) {
    .logo--header {
        max-width:75px
    }
}

@media(min-width: 992px) {
    .logo--header {
        max-width:150px;
        padding: 0;
    }
}

.logo--metro {
    margin-bottom: 15px;
    margin-top: 10px;
    width: 120px!important;
}

.modal {
    animation: fadeIn .3s ease forwards;
    background: rgba(0,0,0,.55);
    display: none;
    height: 100%;
    isolation: isolate;
    left: 0;
    opacity: 0;
    outline: 0;
    overflow-x: hidden;
    overflow-y: auto;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 2000
}

.modal--active {
    display: block
}

@media(min-width: 768px) {
    .modal--lg .modal__dialog {
        max-width:1000px
    }
}

.modal__dialog {
    margin: .5rem;
    pointer-events: none;
    position: relative;
    width: auto
}

@media(min-width: 768px) {
    .modal__dialog {
        margin:10rem auto 2rem;
        max-width: 800px
    }
}

.modal__content {
    animation: slideUp .3s ease forwards;
    animation-delay: .3s;
    background-clip: padding-box;
    background-color: #fff;
    border: 1px solid #a8a8a8;
    display: flex;
    flex-direction: column;
    opacity: 0;
    outline: 0;
    pointer-events: auto;
    position: relative;
    width: 100%
}

.modal__close {
    cursor: pointer;
    height: 25px;
    position: absolute;
    right: 1.5rem;
    top: 1.5rem;
    width: 25px
}

.modal__close:hover {
    opacity: .6
}

.modal__close--white:after,.modal__close--white:before {
    background: #fff!important
}

.modal__close:before {
    height: 3px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transform-origin: center;
    width: 100%
}

.modal__close:after,.modal__close:before {
    background: #000;
    content: "";
    position: absolute
}

.modal__close:after {
    height: 100%;
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
    transform-origin: center;
    width: 3px
}

.modal__header {
    padding: 1.5rem 1.5rem 0
}

.modal__body {
    padding: 1.5rem
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes slideUp {
    0% {
        opacity: 0;
        transform: translateY(30px)
    }

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

.pagination__list {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    list-style-type: none;
    margin: 0;
    padding: 0
}

.pagination__page {
    background: #fff;
    border: 1px solid #d8d8d8;
    cursor: pointer;
    display: block;
    height: 40px;
    margin-right: -1px;
    width: 40px
}

.pagination__page:hover {
    background: #f4f4f4;
    opacity: .4
}

.pagination__page:last-of-type {
    margin-right: 0
}

.pagination__page--active {
    background: #f4f4f4;
    pointer-events: none
}

.pagination__page--active a {
    opacity: .4
}

.pagination__page a {
    align-items: center;
    color: #4c1a3a;
    display: flex;
    height: 100%;
    justify-content: center;
    padding: .25rem;
    text-align: center;
    text-decoration: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 100%
}

.panel {
    background-color: #fff;
    border: 1px solid #d8d8d8;
    border-radius: 0;
    display: block;
    padding: 15px;
    position: relative
}

.panel--has-image {
    padding-top: 280px!important
}

.panel__img {
    align-items: center;
    display: flex;
    height: 250px;
    justify-content: center;
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0
}

.panel__img img {
    max-width: none;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.panel--transparent {
    background-color: transparent
}

.panel--lg {
    padding: 30px
}

.panel--light {
    background-color: #f8f9fa
}

.partner {
    background: #fff;
    border: 1px solid #d8d8d8;
    display: flex;
    flex-direction: column;
    height: 100%;
    opacity: 1;
    padding: 1.5rem;
    position: relative;
    text-decoration: none;
    transition: opacity .3s ease
}

.partner:hover {
    opacity: .6;
    text-decoration: none
}

.partner__img {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    border: 1px solid #d8d8d8;
    display: block;
    margin-bottom: 1.5rem;
    overflow: hidden;
    position: relative
}

.partner__img:before {
    content: "";
    display: block;
    padding-top: 100%
}

.partner__img img {
    bottom: 0;
    height: auto;
    left: 0;
    min-height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

.partner__desc,.partner__title {
    display: block;
    margin-bottom: 1.5rem
}

.partner__desc {
    font-size: 16px
}

.partner__btn {
    display: block;
    margin-top: auto
}

.price {
    display: flex
}

.price__final {
    color: #5f5f5f;
    font-size: 30px;
    font-weight: 500
}

@media(min-width: 992px) {
    .price__final {
        font-size:30px
    }
}

.product.has_second_image:hover {
    text-decoration: none
}

.product.has_second_image:hover .product__thumbnail {
    display: none
}

.product.has_second_image:hover .product__wrap {
    background: #f4f4f4;
    border-color: #d8d8d8
}

.product.has_second_image:hover .product__desc {
    display: block
}

.product {
    color: #000;
    flex-direction: column;
    height: 100%;
    text-decoration: none;
    transition: all .3s ease;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.product,.product__wrap {
    display: flex;
    position: relative
}

.product__wrap {
    border: 1px solid transparent;
    flex: 1;
    flex-direction: column;
    justify-content: flex-start;
    padding-bottom: .25rem
}

.product__desc {
    display: none;
    margin-bottom: 1.8rem;
    overflow: hidden;
    padding: .75rem .75rem 0
}

.product__thumbnail {
    border: none;
    display: block;
    height: 170px;
    margin: -1px -1px 1rem;
    opacity: 1;
    overflow: hidden;
    position: relative;
    transition: opacity .3s ease
}

@media(min-width: 576px) {
    .product__thumbnail {
        align-items:center;
        display: flex;
        height: auto;
        justify-content: center
    }
}

.product__img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.product__availability,.product__features,.product__name,.product__price,.product__weight {
    margin: 0;
    padding: 0 .25rem
}

.product__availability-message,.product__features-message,.product__name-message,.product__price-message,.product__weight-message {
    background-color: #4c1a3a;
    color: #fff;
    display: block;
    flex: 0 1 auto;
    font-size: 12px;
    font-weight: 700;
    margin: .25rem auto 0;
    padding: .25rem .5rem;
    text-align: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

@media(min-width: 768px) {
    .product__availability,.product__features,.product__name,.product__price,.product__weight {
        padding:0 .75rem
    }
}

.product__name {
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: .25rem
}

@media(min-width: 768px) {
    .product__name {
        font-size:20px
    }
}

.product__weight {
    color: #4c1a3a;
    margin-bottom: .25rem;
    margin-top: auto
}

.product__features {
    align-items: center;
    display: flex;
    flex-direction: row
}

.product__features>span:first-child {
    flex: 1
}

.product__features>img {
    height: 20px;
    width: 20px
}

.product__availability {
    align-items: center;
    display: flex;
    flex-direction: row;
    margin-bottom: .25rem;
    margin-top: auto;
    position: relative
}

.product__availability:before {
    border-radius: 50%;
    content: "";
    display: block;
    height: 12px;
    margin-right: .25rem;
    width: 12px
}

@media(min-width: 768px) {
    .product__availability:before {
        height:16px;
        margin-right: .75rem;
        width: 16px
    }
}

.product__availability--ready:before {
    background: #49d135
}

.product__availability--unavailable:before {
    background: #dc3545
}

.product__availability--preorder:before {
    background: #ffc107
}

.product__availability--low-stock:before {
    background: #fd7e14
}

.product__price {
    color: #5f5f5f;
    flex: 1;
    flex-direction: row;
    font-size: 20px;
    font-weight: 700;
    margin-right: .5rem
}

.product__price,.product__row {
    align-items: center;
    display: flex;
    justify-content: flex-start
}

.product__row {
    flex-direction: row
}

.product__favorite {
    cursor: pointer;
    margin-left: auto;
    padding-right: .75rem
}

.product__actions {
    align-items: center;
    display: flex;
    flex-direction: row;
    margin-top: .5rem
}

.product__btn {
    flex: 1;
    overflow: hidden;
    padding: 0 .5rem;
    white-space: nowrap
}

.product__quick-add {
    flex: 0 0 50px;
    margin-left: .75rem;
    max-width: 50px
}

.post {
    background: #fff;
    border: 1px solid #d8d8d8;
    display: flex;
    flex-direction: column;
    height: 100%;
    opacity: 1;
    padding: 1rem;
    position: relative;
    text-decoration: none;
    transition: opacity .3s ease
}

.post:hover {
    opacity: .6;
    text-decoration: none
}

.post__tag {
    background: #4c1a3a;
    color: #fff;
    display: inline-flex;
    font-size: 12px;
    font-weight: 700;
    left: 3rem;
    line-height: 100%;
    padding: .5rem .75rem;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: 3rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.post__img,.post__tag {
    align-items: center;
    justify-content: center
}

.post__img {
    display: flex;
    margin-bottom: 1rem;
    min-height: 300px;
    overflow: hidden;
    position: relative
}

.post__img img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

@media(min-width: 768px) {
    .post__img {
        margin-bottom:1.5rem
    }
}

.post__title {
    margin-bottom: 1rem
}

@media(min-width: 768px) {
    .post__title {
        margin-bottom:1.5rem
    }
}

.post__meta {
    align-items: center;
    color: #a8a8a8;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    font-size: 14px;
    margin-bottom: .25rem;
    margin-top: auto
}

.post__date {
    margin-right: .5rem
}

.post__category {
    margin-left: .5rem
}

.post__excerpt {
    display: block;
    margin-bottom: 1rem
}

@media(min-width: 768px) {
    .post__excerpt {
        margin-bottom:1.5rem
    }
}

.post__btn {
    margin-top: auto
}

@media(min-width: 768px) {
    .post__btn {
        align-self:flex-start
    }

    .post {
        padding: 1.5rem
    }
}

.promo {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.promo,.promo:hover {
    text-decoration: none
}

.promo--slim .promo__img {
    overflow: hidden;
    position: relative
}

.promo--slim .promo__img:before {
    content: "";
    display: block;
    padding-top: 100%
}

.promo--slim .promo__img img {
    bottom: 0;
    height: 100%;
    left: 0;
    max-width: none;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

.promo--slim .promo__img_desktop {
    display: block
}

@media(max-width: 991.98px) {
    .promo--slim .promo__img_desktop {
        display:none
    }
}

.promo--slim .promo__img_mobile {
    display: none
}

@media(max-width: 991.98px) {
    .promo--slim .promo__img_mobile {
        display:block
    }
}

.promo--slim .promo__description {
    font-size: 20px;
    font-weight: 700;
    max-height: 120px;
    overflow: hidden;
    text-overflow: ellipsis
}

.promo--slim .promo__btn {
    margin-top: 2rem;
    width: 100%
}

.promo--top .promo__img_desktop {
    display: block
}

@media(max-width: 991.98px) {
    .promo--top .promo__img_desktop {
        display:none
    }
}

.promo--top .promo__img_mobile {
    display: none
}

@media(max-width: 991.98px) {
    .promo--top .promo__img_mobile {
        display:block
    }
}

.promo--left-hand .promo__img img {
    aspect-ratio: 1/1
}

@media(min-width: 992px) {
    .promo--left-hand .promo__img img {
        aspect-ratio:1/1.75
    }
}

.promo--left-hand .promo__img_desktop {
    display: block
}

@media(max-width: 991.98px) {
    .promo--left-hand .promo__img_desktop {
        display:none
    }
}

.promo--left-hand .promo__img_mobile {
    display: none
}

@media(max-width: 991.98px) {
    .promo--left-hand .promo__img_mobile {
        display:block
    }
}

.promo--banner .promo__overlay {
    display: none
}

.promo--banner .promo__img img {
    height: 190px
}

@media(max-width: 767.98px) {
    .promo--banner .promo__img img {
        height:250px
    }
}

.promo--banner .promo__img_desktop {
    display: block
}

@media(max-width: 767.98px) {
    .promo--banner .promo__img_desktop {
        display:none
    }
}

.promo--banner .promo__img_mobile {
    display: none
}

@media(max-width: 767.98px) {
    .promo--banner .promo__img_mobile {
        display:block
    }
}

.promo__img {
    align-items: center;
    display: flex;
    flex: 0 1 auto;
    justify-content: center;
    position: relative
}

.promo__img:before {
    background: #4c1a3a;
    background: linear-gradient(0deg,#4c1a3a,hsla(0,0%,100%,0) 16%,hsla(0,0%,100%,0));
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.promo__img img {
    height: 100%;
    max-width: none;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.promo__img_desktop {
    display: block
}

@media(max-width: 991.98px) {
    .promo__img_desktop {
        display:none
    }
}

.promo__img_mobile {
    display: none
}

@media(max-width: 991.98px) {
    .promo__img_mobile {
        display:block
    }
}

.promo__overlay {
    background: #4c1a3a;
    color: #fff;
    display: flex;
    flex-direction: column;
    padding: 1rem
}

@media(min-width: 992px) {
    .promo__overlay {
        padding:1.5rem
    }
}

.promo__title {
    font-size: 26px;
    font-weight: 600;
    line-height: 34px;
    margin: 0 0 1.5rem
}

.promo__description {
    margin-bottom: 1rem
}

.promo__btn {
    align-self: flex-start;
    margin-top: auto
}

.profile {
    position: relative
}

.profile:hover .profile__quote {
    opacity: 1;
    visibility: visible
}

.profile__quote {
    background: rgba(0,0,0,.4);
    bottom: 0;
    color: #fff;
    font-size: 32px;
    justify-content: center;
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0;
    transition: all .3s ease;
    visibility: hidden
}

.profile__quote,.quantity {
    align-items: center;
    display: flex
}

.quantity {
    flex-direction: row;
    flex-wrap: nowrap
}

.quantity.disabled {
    opacity: .2;
    pointer-events: none
}

.quantity__input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #fff;
    border: 1px solid #d8d8d8;
    flex: 0 1 100%;
    font-size: 20px;
    font-weight: 700;
    height: 50px;
    max-width: 80px;
    min-width: 60px;
    outline: 0;
    padding: 0 .1rem;
    text-align: center
}

.quantity__input::-webkit-inner-spin-button,.quantity__input::-webkit-outer-spin-button {
    display: none
}

@media(min-width: 576px) {
    .quantity__input {
        max-width:110px
    }
}

@media(min-width: 992px) {
    .quantity__input {
        height:40px;
        max-width: 100px
    }
}

.quantity__down,.quantity__up {
    align-items: center;
    border: 3px solid #d8d8d8;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    height: 30px;
    justify-content: center;
    min-width: 30px;
    opacity: 1;
    padding: 4px;
    position: relative;
    transition: opacity .3s ease
}

.quantity__down:hover,.quantity__up:hover {
    opacity: .6
}

.quantity__up {
    margin-left: 1rem
}

.quantity__up:before {
    transform: translateY(-50%) rotate(90deg)
}

.quantity__up:after,.quantity__up:before {
    background: #d8d8d8;
    content: "";
    display: block;
    height: 3px;
    left: 4px;
    position: absolute;
    right: 4px;
    top: 50%
}

.quantity__up:after {
    transform: translateY(-50%)
}

@media(min-width: 992px) {
    .quantity__up {
        margin-left:.5rem
    }
}

.quantity__down {
    margin-right: 1rem
}

.quantity__down:before {
    background: #d8d8d8;
    content: "";
    display: block;
    height: 3px;
    left: 4px;
    position: absolute;
    right: 4px;
    top: 50%;
    transform: translateY(-50%)
}

@media(min-width: 992px) {
    .quantity__down {
        margin-right:.5rem
    }
}

.quote {
    display: block;
    font-size: 18px;
    font-weight: 400;
    margin-bottom: 1.5rem;
    width: 100%
}

.quote--white {
    color: #fff
}

.quote--white .quote__closing,.quote--white .quote__opening {
    filter: invert(46%) sepia(13%) saturate(1026%) hue-rotate(6deg) brightness(96%) contrast(87%)
}

.quote__closing,.quote__opening {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    height: 40px;
    vertical-align: top;
    width: 40px
}

@media(min-width: 992px) {
    .quote__closing,.quote__opening {
        height:80px;
        width: 80px
    }
}

.quote__opening {
    background-image: url(/modules/teapotinformationpages/views/img/join/opening.svg);
    float: left;
    margin: 0 1.5rem 0 0
}

.quote__closing {
    background-image: url(/modules/teapotinformationpages/views/img/join/closing.svg);
    margin: 0 0 0 1.5rem
}

@media(min-width: 992px) {
    .quote {
        font-size:30px
    }
}

.reminder {
    background-color: #fff;
    border-bottom: 1px solid #d8d8d8;
    padding: 1rem 0
}

.reminder__wrapper {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    position: relative
}

@media(min-width: 768px) {
    .reminder__wrapper {
        padding-right:calc(40px + 1rem)
    }
}

.reminder__icon {
    flex: 0 0 30px;
    margin-right: .25rem;
    max-width: 30px
}

.reminder__label {
    flex: 0 0 auto;
    font-weight: 700;
    margin-right: .75rem;
    text-transform: uppercase
}

.reminder__msg {
    flex: 0 0 100%;
    font-size: 14px;
    margin-top: 1rem
}

@media(min-width: 768px) {
    .reminder__msg {
        flex:1;
        font-size: 1rem;
        margin-top: 0
    }
}

.reminder__dismiss {
    position: absolute;
    right: 0;
    top: 0
}

@media(min-width: 992px) {
    .reminder__dismiss {
        top:50%;
        transform: translateY(-50%)
    }
}

::-webkit-scrollbar {
    width: 10px
}

::-webkit-scrollbar-track {
    background-color: #c4c4c4;
    border-left: 1px solid #fff
}

::-webkit-scrollbar-thumb {
    background-color: #1b2127;
    border-radius: 0
}

::-webkit-scrollbar-thumb:hover {
    background-color: #111418
}

.select {
    background: #fff;
    border: 1px solid #d8d8d8;
    border-bottom: 0;
    cursor: pointer;
    display: block;
    height: 35px;
    min-width: 263px;
    position: relative
}

.select:after {
    background: transparent;
    border-bottom: 2px solid #d8d8d8;
    border-right: 2px solid #d8d8d8;
    bottom: 0;
    content: "";
    display: block;
    height: 10px;
    margin-top: -3px;
    pointer-events: none;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: rotate(45deg) translateY(-50%);
    transform-origin: center;
    transition: transform .3s ease;
    width: 10px
}

.select--has-no-sort .select__option:first-of-type {
    border-top: 0;
    pointer-events: none
}

.select--active:after {
    border-bottom: 0;
    border-left: 2px solid #d8d8d8;
    border-right: 0;
    border-top: 2px solid #d8d8d8;
    margin-top: 0
}

.select--active .select__list {
    height: auto
}

.select__list {
    background: #fff;
    border-bottom: 1px solid #d8d8d8;
    border-left: 1px solid #d8d8d8;
    border-right: 1px solid #d8d8d8;
    display: flex;
    flex-direction: column;
    height: 35px;
    left: -1px;
    overflow: hidden;
    position: absolute;
    right: -1px;
    top: 0
}

.select__option {
    border-top: 1px solid #d8d8d8;
    color: #4c1a3a;
    cursor: pointer;
    display: block;
    font-size: 13px;
    font-weight: 400;
    height: 35px;
    line-height: 35px;
    order: 1;
    padding: 0 1rem;
    text-decoration: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.select__option:hover {
    background: #4c1a3a;
    color: #fff;
    text-decoration: none
}

.select__option--current {
    border-top: 0;
    height: 49px;
    order: 0;
    padding-right: 40px;
    pointer-events: none
}

section {
    padding: 1.5rem 0;
    position: relative
}

section.animate-title:hover .title:after,section.animate-title:hover .title:before {
    max-width: 140px
}

@media(min-width: 992px) {
    section.animate-title:hover .title:after,section.animate-title:hover .title:before {
        max-width:280px
    }
}

section.sm {
    padding: 1.5rem 0
}

@media(min-width: 992px) {
    section.md {
        padding:3rem 0
    }

    section.lg {
        padding: 4.5rem 0
    }

    section.xl-desktop {
        margin: 6rem 0!important
    }

    section.xl {
        padding: 6rem 0
    }

    section.xxl-desktop {
        margin: 10rem 0!important
    }

    section.xxl {
        padding: 10rem 0
    }
}

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

.sidebar__item {
    border-bottom: 1px solid #d8d8d8;
    flex: 0 0 100%
}

.sidebar__item:last-of-type {
    border-bottom: 0
}

.sidebar__link {
    align-items: center;
    cursor: pointer;
    display: flex;
    justify-content: flex-start;
    padding: .75rem 1rem;
    position: relative
}

.sidebar__link:hover {
    text-decoration: none
}

.sidebar__link--active,.sidebar__link:hover {
    font-weight: 600
}

.sidebar__link--active:before,.sidebar__link:hover:before {
    background: #4c1a3a;
    bottom: 0;
    content: "";
    display: block;
    left: -1px;
    position: absolute;
    top: 0;
    width: 4px
}

.sidebar__link svg {
    margin-right: 1rem
}

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

table.narrow td,table.narrow th {
    padding: .35rem
}

table.responsive {
    max-width: 100%;
    width: 100%
}

@media(max-width: 1199.98px) {
    table.column-fixed {
        margin-left:-100px;
        max-width: none;
        table-layout: fixed;
        width: 950px
    }

    table.column-fixed .grey-header .first-col {
        background: #f4f4f4
    }

    table.column-fixed .first-col {
        background-color: #fff;
        height: 76px;
        left: 0;
        position: absolute;
        width: 160px;
        z-index: 1
    }

    thead table.column-fixed .first-col {
        height: 55px
    }
}

@media(max-width: 991.98px) {
    table.column-fixed .first-col {
        height:84px
    }
}

table.small td,table.small th {
    padding: .5rem
}

table.block {
    width: 100%
}

table.bordered td,table.bordered th,table.outlined {
    border: 1px solid #d8d8d8
}

table thead.grey-header th,table.striped tr:nth-child(2n) td {
    background: #f4f4f4
}

table thead th {
    border-bottom: 1px solid #d8d8d8
}

table th {
    font-size: 14px
}

table td,table th {
    padding: 1rem
}

table td.grey-cell {
    background: #f4f4f4
}

.tabs {
    position: relative
}

.tabs,.tabs__wrap {
    display: flex;
    flex-direction: column
}

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

@media(min-width: 992px) {
    .tabs__wrap {
        border-bottom:3px solid #d8d8d8;
        flex-direction: row
    }
}

.tabs__tab {
    border-bottom: 1px solid #d8d8d8;
    color: #d8d8d8;
    cursor: pointer;
    flex: 0 0 100%;
    font-size: 22px;
    font-weight: 600;
    padding: .75rem 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 100%
}

@media(min-width: 992px) {
    .tabs__tab {
        border-bottom: 1px solid transparent;
        flex: 0 0 auto;
        font-size: 26px;
        margin-bottom: -3px;
        margin-right: 3rem;
        padding: 1.5rem 0;
        width: auto
    }
}

.tabs__tab:last-of-type {
    margin-right: 0
}

.tabs__tab:hover {
    color: #4c1a3a
}

.tabs__tab.active {
    border-bottom: 1px solid #d8d8d8;
    color: #4c1a3a
}

@media(min-width: 992px) {
    .tabs__tab.active {
        border-bottom:3px solid #4c1a3a
    }
}

.tabs__content {
    display: none;
    padding: 1rem 0 0;
}

.tabs__content.active {
    display: block
}

@media(max-width: 767.98px) {
    .tabs__content p:has(iframe) {
        height:0;
        padding-bottom: 56.25%;
        padding-top: 25px;
        position: relative
    }

    .tabs__content p:has(iframe) iframe {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }
}

.tag {
    border-radius: 6px;
    display: inline-block;
    font-size: .8rem;
    font-weight: 600;
    line-height: 15px;
    padding: .25rem .5rem;
    text-transform: uppercase;
    vertical-align: top
}

.tag--primary {
    background: #4c1a3a;
    color: #fff
}

.tag--secondary {
    background: #1b2127;
    color: #fff
}

.tag--gray {
    background: #a8a8a8;
    color: #fff
}

.tag--success {
    background: #3c763d;
    color: #fff
}

.tag--warning {
    background: #8a6d3b;
    color: #fff
}

.tag--danger {
    background: #a94442;
    color: #fff
}

.testimonial {
    backface-visibility: hidden;
    padding-top: 14px;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.testimonial__info {
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    margin-bottom: 1.5rem
}

.testimonial__img {
    border: 1px solid #d8d8d8;
    border-radius: 50%;
    display: block;
    flex: 0 0 116px;
    height: 116px;
    margin-right: 1.5rem;
    max-width: 116px;
    overflow: hidden
}

.testimonial__author {
    font-family: Newsreader,sans-serif;
    font-size: 26px;
    font-weight: 700;
    margin: 0;
    overflow: hidden;
    white-space: nowrap
}

.testimonial__rating {
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    white-space: nowrap
}

.testimonial__star {
    margin-right: .25rem
}

.testimonial__star:last-of-type {
    margin-right: 0
}

.testimonial__body {
    font-family: 'Work Sans',sans-serif;
    font-weight: 300;
    line-height: 22px
}

@keyframes bounceUp {
    0% {
        transform: translateY(0)
    }

    30% {
        transform: translateY(-14px)
    }

    60% {
        transform: translateY(-11px)
    }

    to {
        transform: translateY(-14px)
    }
}

@keyframes bounceDown {
    0% {
        transform: translateY(-14px)
    }

    30% {
        transform: translateY(0)
    }

    60% {
        transform: translateY(-3px)
    }

    to {
        transform: translateY(0)
    }
}

.title {
    align-items: center;
    display: flex;
    font-size: 28px;
    font-weight: 300;
    justify-content: center;
    margin-bottom: 1.5rem;
    text-align: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.title--white {
    color: #fff
}

.title--block:after,.title--block:before {
    max-width: 1500px!important
}

.title:after,.title:before {
    border-top: 1px solid #c4c4c4;
    content: "";
    flex: 1;
    height: 7px;
    margin-top: 8px;
    max-width: 80px;
    transition: max-width .6s ease-in-out
}

@media(min-width: 992px) {
    .title:after,.title:before {
        border-top:2px solid #c4c4c4;
        height: 12px;
        max-width: 220px
    }
}

.title:before {
    background: linear-gradient(270deg,#c4c4c4 0,#c4c4c4 80%,transparent 0,transparent) 0 100% transparent no-repeat;
    background-size: 100% 1px;
    margin-right: 1rem
}

@media(min-width: 992px) {
    .title:before {
        background-size:100% 2px;
        margin-right: 3rem
    }
}

.title:after {
    background: linear-gradient(90deg,#c4c4c4 0,#c4c4c4 80%,transparent 0,transparent) 0 100% transparent no-repeat;
    background-size: 100% 1px;
    margin-left: 1rem
}

@media(min-width: 992px) {
    .title:after {
        background-size:100% 2px;
        margin-left: 3rem
    }

    .title {
        font-size: 48px;
        margin-bottom: 6rem
    }
}

.truncated {
    max-height: 120px;
    overflow: hidden;
    position: relative;
    transition: max-height .6s cubic-bezier(0,1,0,1)
}

.truncated:after {
    background: linear-gradient(transparent,#fff);
    bottom: 0;
    content: "";
    display: block;
    height: 80%;
    left: 0;
    position: absolute;
    right: 0
}

.truncated--visible {
    max-height: 1600px;
    transition: max-height 1.2s ease-in-out
}

.truncated--visible:after {
    display: none
}

.fade-in-bottom-hidden {
    opacity: 0;
    transform: translateY(50px)
}

.fade-in-bottom {
    animation: fadeInBottom 1.2s ease forwards
}

@keyframes fadeInBottom {
    0% {
        opacity: 0;
        transform: translateY(50px)
    }

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

.fade-in-left-hidden {
    opacity: 0;
    transform: translateX(-50px)
}

.fade-in-left {
    animation: fadeInLeft 1.2s ease forwards
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        transform: translateX(-50px)
    }

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

.fade-in-right-hidden {
    opacity: 0;
    transform: translateX(50px)
}

.fade-in-right {
    animation: fadeInRight 1.2s ease forwards
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        transform: translateX(50px)
    }

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

.fade-in-top-hidden {
    opacity: 0;
    transform: translateY(-50px)
}

.fade-in-top {
    animation: fadeInTop 1.2s ease forwards
}

@keyframes fadeInTop {
    0% {
        opacity: 0;
        transform: translateY(-50px)
    }

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

.cart-popup-header {
    align-items: center;
    background: #4c1a3a;
    color: #fff;
    display: flex;
    justify-content: space-between;
    margin: -1px;
    padding: .5rem 1rem;
    position: relative
}

.cart-popup-header .modal__close {
    position: relative;
    right: unset;
    top: unset
}

@media(min-width: 992px) {
    .cart-popup-left {
        border-right:1px solid #d8d8d8
    }
}

.modal-product {
    align-items: flex-start;
    border-bottom: 1px solid #d8d8d8;
    display: flex;
    flex-direction: row;
    height: 100%;
    padding-bottom: 1.5rem
}

.modal-product__img {
    border: 1px solid #d8d8d8;
    flex: 0 0 25%;
    max-width: 25%;
    overflow: hidden;
    position: relative
}

.modal-product__img:before {
    content: "";
    display: block;
    padding-top: 100%
}

.modal-product__img img {
    bottom: 0;
    left: 0;
    max-width: none;
    min-height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

@media(min-width: 768px) {
    .modal-product__img {
        flex:0 0 40%;
        max-width: 40%
    }
}

.modal-product__info {
    display: flex;
    flex: 0 0 60%;
    flex-direction: column;
    max-width: 60%;
    padding-left: 1rem
}

@media(min-width: 768px) {
    .modal-product__info {
        padding-left:1.5rem
    }
}

.modal-product__name {
    display: block;
    margin: 0
}

@media(max-width: 767.98px) {
    .modal-product__name {
        font-size:1rem
    }
}

.modal-product__qty {
    display: block;
    margin: 0
}

@media(max-width: 767.98px) {
    .modal-product__qty {
        font-size:14px
    }
}

.modal-product__price {
    color: #4c1a3a;
    display: block;
    font-weight: 600
}

@media(max-width: 767.98px) {
    .modal-product__price {
        font-size:14px
    }
}

@media(min-width: 768px) {
    .modal-product {
        border-bottom:none;
        padding-bottom: 0
    }
}

.blockcart {
    position: relative
}

.blockcart:hover .cart-dropdown {
    display: block
}

.blockcart .count {
    align-items: center;
    background: #ffe642;
    border-radius: 50%;
    display: flex;
    font-size: 12px;
    font-weight: 700;
    height: 20px;
    justify-content: center;
    position: absolute;
    right: -10px;
    text-align: center;
    top: -10px;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 20px
}

.cart-dropdown {
    display: none;
    isolation: isolate;
    padding-top: 1.5rem;
    position: absolute;
    right: 0;
    top: 100%;
    width: 280px;
    z-index: 5000
}

.cart-dropdown__dialog {
    background: #fff;
    border: 1px solid #d8d8d8;
    display: flex;
    flex-direction: column;
    padding: 1.25rem;
    position: relative;
    width: 100%
}

.cart-dropdown__total {
    border-top: 1px solid #d8d8d8;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-top: 1rem;
    padding-top: 1rem;
    width: 100%
}

.cart-dropdown__total .value {
    font-weight: 700
}

.cart-dropdown__footer {
    border-top: 1px solid #d8d8d8;
    margin-top: 1rem;
    padding-top: 1rem
}

.cart-dropdown__products {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 200px;
    overflow-x: hidden;
    overflow-y: scroll
}

.cart-dropdown__product {
    align-items: center;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    margin-bottom: 1rem
}

.cart-dropdown__product:last-of-type {
    margin-bottom: 0
}

.cart-dropdown__product .name {
    text-overflow: ellipsis;
    white-space: nowrap
}

.cart-dropdown__product .strap {
    background: #f4f4f4;
    flex: 1;
    height: 1px;
    margin: 0 .75rem;
    min-width: 20px
}

.cart-dropdown__product .qty {
    font-weight: 700
}

@media(max-width: 991.98px) {
    .cart-dropdown {
        display:none!important
    }
}

#category .modal-product__qty,#manufacturer .modal-product__qty,#product .modal-product__qty-adjustment {
    display: none
}

.socials {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    list-style-type: none;
    margin: 1rem 0 0;
    padding: 0
}

.socials li {
    margin: 0 .3rem .3rem 0
}

.socials li a {
    align-items: center;
    background-color: #1b2127;
    border-radius: 50%;
    display: flex;
    height: 30px;
    justify-content: center;
    line-height: 30px;
    overflow: hidden;
    text-align: center;
    width: 30px
}

.socials li a svg {
    fill: #fff;
    height: auto;
    width: 16px
}

.socials li a:hover {
    background-color: #060809
}

.socials li a:hover svg {
    fill: #e6e6e6
}

.search {
    border: 1px solid #d8d8d8;
    display: flex;
    flex: 1;
    isolation: isolate;
    position: relative;
    z-index: 5000
}

.search__input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #fff;
    border: 0;
    font-family: 'Work Sans',sans-serif;
    height: auto;
    padding-left: 1rem;
    padding-right: calc(40px + 1.5rem);
    width: 100%
}

.search__input::-moz-placeholder {
    color: #a8a8a8;
    font-family: 'Work Sans',sans-serif;
    text-transform: capitalize
}

.search__input::placeholder {
    color: #a8a8a8;
    font-family: 'Work Sans',sans-serif;
    text-transform: capitalize
}

.search__btn {
    bottom: 0;
    position: absolute;
    right: 12px;
    top: 0
}

.search__results {
    background: #fff;
    border-bottom: 1px solid #d8d8d8;
    border-left: 1px solid #d8d8d8;
    border-right: 1px solid #d8d8d8;
    display: flex;
    flex-direction: column;
    left: -1px;
    padding: 0 1rem 1rem;
    position: absolute;
    right: -1px;
    top: calc(100% - 1px)
}

.search__result {
    cursor: pointer;
    line-height: 35px;
    text-overflow: ellipsis;
    white-space: nowrap
}

.search__result:first-of-type {
    border-top: 1px solid #d8d8d8;
    padding-top: 1rem
}

@media(min-width: 992px) {
    .search {
        margin-right:2rem
    }
}

@media(min-width: 1200px) {
    .search {
        margin-right:3rem
    }
}

.thread {
    background: #f4f4f4;
    border: 1px solid #d8d8d8;
    overflow-x: hidden;
    overflow-y: scroll
}

.thread,.thread__list {
    display: flex;
    flex-direction: column
}

.thread__list {
    align-items: flex-start;
    border-left: 1px solid #c4c4c4;
    flex: 1;
    justify-content: flex-start;
    list-style-type: none;
    margin: 1.5rem 0 1.5rem 1.5rem;
    padding: 0 1.5rem
}

@media(min-width: 992px) {
    .thread__list {
        margin-left:0
    }
}

.thread__message {
    display: flex;
    flex-direction: column;
    margin-bottom: 1.5rem;
    position: relative
}

.thread__message--customer .thread__icon {
    background: #ffe642;
    color: #050003
}

.thread__message--admin .thread__icon {
    background: #4c1a3a
}

.thread__message:last-of-type {
    margin-bottom: 0
}

.thread__content {
    background: #fff;
    border: 1px solid #d8d8d8;
    border-radius: 0;
    padding: .75rem
}

.thread__icon {
    border-radius: 50%;
    color: #fff;
    height: 24px;
    justify-content: center;
    left: -38px;
    padding: 5px;
    position: absolute;
    top: 0;
    width: 24px
}

.thread__icon,.thread__meta {
    align-items: center;
    display: flex
}

.thread__meta {
    color: #5f5f5f;
    font-size: 11px;
    justify-content: flex-start;
    margin-bottom: .25rem;
    padding: 0 .5rem 0 .25rem;
    width: 100%
}

.thread__panel {
    background: #fff;
    border-top: 1px solid #d8d8d8;
    display: flex;
    flex: 0 0 100%;
    flex-direction: column;
    max-width: none;
    padding: 1rem
}

.thread__panel .form__group {
    display: flex;
    flex: 1;
    flex-direction: column;
    margin-bottom: 1rem
}

.thread__panel .form__group textarea {
    flex: 1;
    overflow-x: hidden;
    overflow-y: scroll;
    resize: none
}

@media(min-width: 992px) {
    .thread__panel {
        border-left:1px solid #d8d8d8;
        border-top: 0;
        flex: 0 0 30%;
        max-width: 30%
    }

    .thread {
        flex-direction: row;
        max-height: 450px;
        padding-left: 1.5rem
    }
}

@media(max-width: 1199.98px) {
    .column-fixed-inner {
        margin-left:69px
    }
}

.quick-order-oos:before {
    background: red
}

#quickOrderTable {
    max-width: 100%
}

#quickOrderTable th {
    background-color: #4c1a3a;
    color: #fff;
    font-weight: 700;
    text-transform: uppercase
}

#quickOrderTable_wrapper .top:after {
    content: "";
    display: table;
    width: 100%
}

#quickOrderTable_wrapper .bottom {
    margin-bottom: 15px
}

#quickOrderTable_length label {
    align-items: center;
    display: flex
}

#quickOrderTable_length label select {
    height: auto;
    margin: 0 .25rem;
    text-align: center
}

@media(max-width: 767.98px) {
    #quickOrderTable_wrapper .bottom,#quickOrderTable_wrapper .top {
        left:0;
        position: sticky
    }
}

@media(min-width: 576px) {
    #quickOrderTable_wrapper .top {
        margin:0 5px
    }
}

.dataTables_wrapper .dataTables_filter input {
    font-size: inherit;
    height: auto
}

.share {
    align-items: center;
    border-top: 1px solid #d8d8d8;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 1rem 0
}

.share__label {
    color: #4c1a3a;
    font-size: 24px;
    font-weight: 700;
    margin: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.share__list {
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    list-style-type: none;
    margin: 0;
    padding: 0
}

.share__icon {
    background: #f4f4f4;
    border-radius: 50%;
    display: block;
    height: 40px;
    margin: 0 .4rem;
    padding: 2px;
    width: 40px
}

.share__icon:hover {
    opacity: .4
}

.share__icon:first-of-type {
    margin-left: 0
}

.share__icon:last-of-type {
    margin-right: 0
}

.share__icon a {
    align-items: center;
    color: #4c1a3a;
    display: flex;
    height: 100%;
    justify-content: center;
    text-align: center;
    width: 100%
}

#module-teapotblog-post main img {
    height: 100%
}

.delivery_dates_message {
    font-size: 16px;
    font-weight: bolder
}

.delivery_dates__wrapper {
    margin-top: 20px;
    padding-bottom: 40px;
    padding-top: 10px
}

.delivery_dates__product__title {
    display: block
}

.delivery_dates__product__column {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.delivery_dates__row {
    border-bottom: 1px solid #d8d8d8;
    padding-bottom: 15px;
    padding-top: 15px
}

#facet_brand {
    max-height: 480px
}

@media(max-width: 575.98px) {
    .product__btn {
        font-size:.8rem
    }
}

.knowledgehub__content .facet__options,.knowledgehub__content button[data-target="#sort-by-mobile"] {
    display: none
}

.knowledgehub__content .facet__list {
    max-height: 400px;
    overflow-y: auto
}

@media(max-width: 767.98px) {
    .knowledgehub__content .facet__list {
        max-height:800px
    }
}

.erudus__info-grid {
    display: grid;
    grid-template-columns: repeat(2,1fr)
}

@media(max-width: 767.98px) {
    .erudus__info-grid {
        grid-template-columns:repeat(1,1fr)
    }
}

.erudus__info-grid p {
    margin-bottom: 0;
    padding: .5rem 1rem
}

.erudus__info-grid>p:nth-child(4n+1),.erudus__info-grid>p:nth-child(4n+2) {
    background: #f0f0f0
}

.erudus__info-grid>p:nth-child(4n+3),.erudus__info-grid>p:nth-child(4n+4) {
    background: #fff
}

.erudus__accordion {
    border: 1px solid #e3e3e3
}

.erudus__accordion:not(:last-of-type) {
    margin-bottom: 30px
}

.erudus__accordion-title {
    align-items: center;
    color: #4c1a3a;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    padding: 1rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.erudus__accordion-title h4 {
    font-size: clamp(1.25rem,1.749vw + .785rem,1.625rem)
}

.erudus__accordion-title img {
    width: clamp(1.125rem,1.166vw + .815rem,1.375rem)
}

.erudus__accordion-content {
    display: none;
    padding: 1rem
}

.erudus__accordion.open .erudus__accordion-title img {
    transform: rotateX(180deg)
}

.erudus__accordion.open .erudus__accordion-content {
    display: block
}

.erudus__nutrition-blocks {
    display: grid;
    gap: 15px;
    grid-template-columns: repeat(auto-fill,minmax(125px,1fr))
}

.erudus__nutrition-block {
    align-items: center;
    border: 4px solid #c4c4c4;
    border-radius: 24px;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    height: 160px;
    justify-content: space-between;
    padding: 1rem;
    width: 100%
}

.erudus__nutrition-block p {
    margin-bottom: 0
}

.nutrition__key {
    font-weight: 800
}

.nutrition__key-low {
    color: #49d135
}

.nutrition__key-moderate {
    color: #e09f19
}

.nutrition__key-high {
    color: #b00
}

.nutrition--default .erudus__nutrition-block {
    border-color: #f4f4f4
}

.nutrition--low.erudus__nutrition-block {
    border-color: #49d135
}

.nutrition--low .nutrition__percentage {
    color: #49d135
}

.nutrition--medium.erudus__nutrition-block {
    border-color: #e09f19
}

.nutrition--medium .nutrition__percentage {
    color: #e09f19
}

.nutrition--high.erudus__nutrition-block {
    border-color: #b00
}

.nutrition--high .nutrition__percentage {
    color: #b00
}

.nutrition__name,.nutrition__percentage {
    font-weight: 800
}

.nutrition__percentage,.nutrition__value {
    font-size: 1.25rem
}

.allergens__key {
    display: flex;
    font-weight: 800;
    gap: 10px
}

.allergens__key-does {
    color: #b00
}

.allergens__key-may {
    color: #e09f19
}

.allergens__key-does_not {
    color: #b4a9ad
}

.diet__key {
    display: flex;
    font-weight: 800;
    gap: 10px
}

.diet__key-suitable {
    color: #3c7600
}

.diet__key-not-suitable {
    color: #b00
}

.icon-grid {
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(auto-fill,minmax(120px,1fr))
}

.icon-grid__block {
    align-items: center;
    display: flex;
    flex-direction: column
}

.icon-grid__icon {
    border-radius: 100%;
    padding: 1.2rem
}

.icon-grid__icon img {
    height: 60px;
    width: 60px
}

.icon-grid__name {
    font-size: .875rem;
    text-align: center
}

.icon-grid.allergens .icon-grid__icon {
    background: #b4a9ad
}

.icon-grid.allergens .icon-grid__block--does-contain .icon-grid__icon {
    background: #b00
}

.icon-grid.allergens .icon-grid__block--may-contain .icon-grid__icon {
    background: #e09f19
}

.icon-grid.dietary .icon-grid__icon-suitable {
    background: #3c7600
}

.icon-grid.dietary .icon-grid__icon-not-suitable {
    background: #b00
}

.erudusloading:before {
    background: #fff;
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    opacity: .7;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1
}

.erudusloading:after {
    animation: spinner .6s linear infinite;
    border: 3px solid #d8d8d8;
    border-radius: 50%;
    border-top-color: #4c1a3a;
    content: "";
    height: 36px;
    left: 50%;
    margin-left: -18px;
    margin-top: -18px;
    opacity: 1;
    position: absolute;
    top: 50%;
    width: 36px;
    z-index: 2
}

.register-header {
    display: flex
}

.register-header .col-6>h3 {
    font-size: 26px
}

@media(max-width: 991.98px) {
    .register-accordion {
        position:relative
    }

    .register-accordion:first-child:before {
        background: #f4f4f4;
        border: 1px solid #d8d8d8;
        border-radius: .375rem .375rem 0 0;
        content: "Create an account (For New Customers Only)";
        cursor: pointer;
        display: block;
        font-weight: 600;
        padding: 1rem;
        transition: background-color .3s ease;
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none
    }

    .register-accordion:first-child:hover:before {
        background: #c4c4c4
    }

    .register-accordion:first-child:focus-within:before {
        background: #c4c4c4;
        outline: 2px solid #4c1a3a;
        outline-offset: -2px
    }

    .register-accordion:last-child:before {
        background: #f4f4f4;
        border: 1px solid #d8d8d8;
        border-radius: .375rem .375rem 0 0;
        content: "Register to Access Account (For Existing Credit Customers Only)";
        cursor: pointer;
        display: block;
        font-weight: 600;
        padding: 1rem;
        transition: background-color .3s ease;
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none
    }

    .register-accordion:last-child:hover:before {
        background: #c4c4c4
    }

    .register-accordion:last-child:focus-within:before {
        background: #c4c4c4;
        outline: 2px solid #4c1a3a;
        outline-offset: -2px
    }

    .register-accordion:first-child {
        margin-bottom: 1rem
    }

    .register-accordion .panel {
        background: #fff;
        border: 1px solid #d8d8d8;
        border-radius: 0 0 .375rem .375rem;
        border-top: none;
        box-shadow: 0 2px 4px rgba(5,0,3,.1);
        display: none;
        padding: 1rem
    }

    .register-accordion:first-child.expanded .panel {
        display: block
    }

    .register-accordion.expanded .panel {
        animation: slideDown .3s ease-out;
        display: block
    }

    .register-header {
        display: none!important
    }

    @keyframes slideDown {
        0% {
            opacity: 0;
            transform: translateY(-10px)
        }

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

#product-question {
    align-items: center;
    cursor: pointer;
    display: flex;
    flex-direction: row;
    font-size: 14px;
    font-weight: 700;
	font-family: 'Work Sans';
}

.product-middle,.product-top {
    align-items: flex-start;
    display: flex;
    flex-direction: row;
    justify-content: space-between
}

.product-middle {
    align-items: flex-start;
    margin-top: 1rem
}

@media(min-width: 992px) {
    .product-middle {
        margin-top:1.5rem
    }
}

.product-brand {
    border: 1px solid #d8d8d8;
    flex: 0 1 auto;
    min-height: 50px;
    width: 50px
}

@media(min-width: 1200px) {
    .product-brand {
        min-height:146px;
        width: 146px
    }
}

.product-message {
    margin: 0
}

.product-flags {
    align-items: center;
    display: flex;
    flex-direction: row
}

.product-flag {
    border: 1px solid #d8d8d8;
    height: 50px;
    margin-right: .5rem
}

.product-flag:last-of-type {
    margin-right: 0
}

.product-flag>img {
    height: auto;
    margin: 0 auto;
    max-height: 100%;
    width: auto
}

@media(min-width: 1200px) {
    .product-flag {
        height:80px
    }
}

.product-title {
    color: #4c1a3a;
    display: block;
    font-size: 36px;
    font-weight: 600;
    line-height: 42px;
    margin-bottom: 0;
    margin-top: 1rem
}

@media(min-width: 1200px) {
    .product-title {
        font-size:36px;
        line-height: auto;
        margin-top: 1.5rem
    }
}

.product-reference {
    display: block;
    font-size: 1rem;
    font-weight: 300;
    margin: 10px 0 0
}

.product-actions {
    display: block;
    isolation: isolate;
    margin-top: 1.5rem;
    position: relative;
    z-index: 1
}

.product-actions.loading:before {
    background: #fff;
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    opacity: .7;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1
}

.product-actions.loading:after {
    animation: spinner .6s linear infinite;
    border: 3px solid #d8d8d8;
    border-radius: 50%;
    border-top-color: #4c1a3a;
    content: "";
    height: 36px;
    left: 50%;
    margin-left: -18px;
    margin-top: -18px;
    opacity: 1;
    position: absolute;
    top: 50%;
    width: 36px;
    z-index: 2
}

@keyframes spinner {
    to {
        transform: rotate(1turn)
    }
}

.product-stock {
    background: rgb(211 229 211);
    color: rgb(46, 107, 62);
    font-size: 14px;
    font-weight: 600;
    padding: 5px 12px;
    border-radius: 3px;
}

/*.product-stock:before{border-radius:50%;content:"";display:block;height:20px;margin-right:.5rem;width:20px}.product-stock.success:before{background-color:#49d135}.product-stock.warning:before{background-color:orange}.product-stock.danger:before{background-color:red}*/
.product-short-description {
    margin-top: 1rem
}

@media(min-width: 992px) {
    .product-short-description {
        margin-top:1.5rem
    }
}

.product-read-more {
    color: #4c1a3a;
    cursor: pointer;
    display: block;
    margin-top: .25rem;
    opacity: 1;
    text-decoration: underline;
    transition: opacity .3s ease
}

.product-read-more:hover {
    opacity: .6
}

.product-minimal-quantity {
    display: block;
    margin-top: .25rem
}

.product-packaging {
color: #4c1a3a;
    font-size: 15px;
    font-weight: 600;
}

.product-catch-weight {
    color: #000;
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase
}

.product-add-to-cart {
    align-items: center;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 1rem
}

@media(min-width: 992px) {
    .product-add-to-cart {
        border-bottom:1px solid #d8d8d8;
        margin-top: 1.5rem;
        padding-bottom: .75rem
    }
}

.product-variants {
    display: block;
    margin-bottom: 1.5rem;
    width: 100%
}

.product-availability {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 1.5rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 100%
}

@media(min-width: 1200px) {
    .product-availability {
        align-items:flex-start;
        flex-direction: column;
        justify-content: space-between;
        margin-bottom: 0;
        margin-right: .5rem;
        width: auto
    }
}

.product-controls {
    align-items: center;
    display: inline-flex;
    flex: 0 0 100%;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

@media(min-width: 1200px) {
    .product-controls {
        flex:0 0 auto;
        flex-wrap: nowrap
    }
}

.product-add-to-cart-btn {
    flex: 0 0 100%;
    margin-top: 1.5rem;
    width: 100%
}

@media(min-width: 1200px) {
    .product-add-to-cart-btn {
        flex:auto;
        margin-top: 0
    }
}

@media(min-width: 1494px) {
    .product-add-to-cart-btn {
        width:260px
    }
}

.product-cover {
    border: 1px solid #d8d8d8;
    display: block;
    margin-bottom: 1rem;
    margin-top: 1rem;
    overflow: hidden;
    padding-top: 100%;
    position: relative;
    width: 100%
}

.product-cover iframe,.product-cover img {
    aspect-ratio: 1;
    bottom: 0;
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

@media(min-width: 992px) {
    .product-cover {
        margin-bottom:1.5rem;
        margin-top: 0
    }
}

.product-thumbnails {
    align-items: center;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow: hidden;
    position: relative
}

.product-thumbnails:after {
    background: linear-gradient(270deg,#fff,transparent);
    bottom: 0;
    content: "";
    display: block;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    width: 80px
}

@media(min-width: 768px) {
    .product-thumbnails:after {
        display:none
    }

    .product-thumbnails {
        padding: 0 3rem
    }
}

.product-thumbnail {
    border: 1px solid #d8d8d8;
    cursor: pointer;
    flex: 1;
    margin-right: 1.25rem;
    opacity: 1;
    position: relative;
    transition: opacity .3s ease
}

.product-thumbnail:hover {
    opacity: .6
}

.product-thumbnail:last-of-type {
    margin-right: 0
}

.product-thumbnail.active {
    border-color: #4c1a3a
}

.product-thumbnail:before {
    content: "";
    display: block;
    padding-top: 100%;
    pointer-events: none
}

.product-thumbnail img {
    aspect-ratio: 1;
    bottom: 0;
    cursor: pointer;
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

@media(min-width: 1200px) {
    .product-thumbnail {
        max-width:123.5px
    }
}

.product-thumbnail-control {
    align-items: center;
    cursor: pointer;
    display: none;
    height: 100%;
    justify-content: flex-start;
    opacity: 1;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    transition: opacity .3s ease;
    width: 3rem
}

.product-thumbnail-control:hover {
    opacity: .6
}

.product-thumbnail-control--prev {
    justify-content: flex-start;
    left: -3rem
}

.product-thumbnail-control--next {
    justify-content: flex-end;
    right: -3rem
}

@media(min-width: 768px) {
    .product-thumbnail-control {
        display:flex
    }
}

.product-icons {
    align-items: center;
    display: flex;
    flex-direction: row
}

.product-icon {
    height: 20px;
    margin-right: .25rem;
    width: 20px
}

.product-icon:last-of-type {
    margin-right: 0
}

@media(min-width: 768px) {
    .product-icon {
        height:30px;
        margin-right: .5rem;
        width: 30px
    }
}

@keyframes shimmer {
    0% {
        background-position: -1200px 0
    }

    to {
        background-position: 1200px 0
    }
}

.frozen-desc {
    color: #0091ff
}

.allergen {
    background: #c4c4c4;
    border: 1px solid #d8d8d8;
    border-radius: 50%;
    cursor: pointer;
    display: block;
    height: 40px;
    margin-left: .25rem;
    width: 40px
}

.allergen.does-contain {
    background: #dc3545
}

.allergen.may-contain {
    background: #fab000
}

.allergens-title {
    margin-left: .25rem
}

@media(max-width: 991.98px) {
    .allergens-title {
        display:none
    }
}

.features-table table tr td {
    padding: .5rem!important
}

.frozen-desc {
    margin-left: .25rem
}

#wishlist-btn .icon--red {
    fill: #a94442
}

div.product-thumbnails>div.product-thumbnail {
    max-width: 95px
}

div.product-thumbnails:has(>div.product-thumbnail:only-child) {
    padding-left: 0;
    padding-right: 0
}

.checkout-step {
    transition: all .3s ease
}

.checkout-step.-reachable {
    cursor: pointer
}

.checkout-step.-unreachable {
    display: none
}

.checkout-step.-complete {
    opacity: .5
}

.checkout-step.-complete .checkout-step__title:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%233c763d' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E")
}

.checkout-step.-current {
    opacity: 1
}

.checkout-step.-current .checkout-step__title:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z'/%3E%3C/svg%3E")
}

.checkout-step.-current .checkout-step__continue,.checkout-step.-current .continue {
    display: block
}

.checkout-step__title {
    align-items: center;
    display: flex;
    position: relative
}

.checkout-step__title:after {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: inline-block;
    height: 20px;
    margin-left: 1rem;
    vertical-align: top;
    width: 20px
}

.checkout-step .continue,.checkout-step__continue {
    display: none
}

.payment-options {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 1.5rem
}

.payment-option {
    flex: 0 0 100%;
    margin-bottom: 1rem;
    max-width: none;
    min-height: 100%
}

@media(min-width: 768px) {
    .payment-option {
        flex:0 0 calc(50% - 0.5rem);
        max-width: calc(50% - .5rem)
    }
}

@media(min-width: 992px) {
    .payment-option {
        flex:0 0 calc(33.33333% - 0.5rem);
        max-width: calc(33.33333% - .5rem)
    }
}

.payment-option:hover:not(.active) .payment-option__panel {
    border-color: #4c1a3a
}

.payment-option.active .payment-option__panel {
    background: #fff;
    border-color: #4c1a3a;
    opacity: 1
}

.payment-option input {
    display: none!important
}

.payment-option input:checked+.payment-option__panel {
    background: #fff;
    border-color: #4c1a3a;
    opacity: 1
}

.payment-option input:checked+.payment-option__panel:after {
    align-items: center;
    background-color: #4c1a3a;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 70%;
    border-radius: 50%;
    content: "";
    display: flex;
    height: 20px;
    justify-content: center;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    width: 20px
}

.payment-option__panel {
    align-items: center;
    background: #f4f4f4;
    border: 1px solid #d8d8d8;
    display: flex;
    font-size: 1rem;
    height: 100%;
    justify-content: center;
    opacity: 1;
    padding: 1.5rem 3rem;
    position: relative;
    text-align: center;
    transition: all .3s ease
}

@media(min-width: 768px) {
    .payment-option__panel {
        font-size:18px
    }
}

.payment-option__title {
    margin: 0
}

.payment-option__logo {
    height: auto;
    max-width: 120px
}

.delivery-options,.payment-option__logo {
    display: block;
    margin-bottom: 1.5rem
}

.delivery-option input {
    display: none!important
}

.delivery-option input:checked+.delivery-option__panel {
    background: #fff;
    border-color: #4c1a3a;
    opacity: 1
}

.delivery-option input:checked+.delivery-option__panel:after {
    align-items: center;
    background-color: #4c1a3a;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 70%;
    border-radius: 50%;
    content: "";
    display: flex;
    height: 20px;
    justify-content: center;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    width: 20px
}

.delivery-option__panel {
    align-items: center;
    background: #f4f4f4;
    border: 1px solid #d8d8d8;
    display: flex;
    justify-content: flex-start;
    margin-bottom: 1rem;
    min-width: 100%;
    opacity: .4;
    padding: 1rem 4rem 1rem 1rem;
    position: relative
}

.delivery-option__logo {
    height: auto;
    margin-left: 1rem;
    max-width: 120px
}

.delivery-option__info {
    display: flex;
    flex-direction: column
}

.delivery-option__title {
    line-height: 22px;
    margin: 0 0 .25rem
}

.delivery-option__price {
    font-size: 18px;
    font-weight: 600;
    margin-left: auto
}

.form_buttons>:not(:last-child) {
    margin-right: .75rem
}

.subcategory-grid {
    grid-gap: 1.5rem;
    display: grid;
    grid-auto-flow: dense;
    grid-auto-rows: 1fr;
    grid-template-columns: repeat(2,1fr)
}

.subcategory-grid .cta {
    grid-column: span 1;
    grid-row: span 1
}

.subcategory-grid .promo {
    grid-column: span 2;
    grid-row: span 2
}

@media(min-width: 992px) {
    .subcategory-grid .promo {
        grid-column:4/6;
        grid-row: 1/3
    }

    .subcategory-grid {
        grid-template-columns: repeat(5,1fr)
    }
}

.brand-header {
    display: flex;
    flex-direction: column;
    isolation: isolate;
    position: relative;
    z-index: 11
}

@media(min-width: 992px) {
    .brand-header {
        align-items:flex-start;
        flex-direction: row
    }
}

.brand-header .breadcrumb {
    margin-bottom: 5px
}

@media(min-width: 992px) {
    .brand-header .breadcrumb {
        margin-bottom:5px
    }
}

.brand-header__img {
    display: block;
    margin-right: 1rem;
    position: relative;
    width: 275px
}

@media(min-width: 768px) {
    .brand-header__img {
        margin-bottom:60px
    }
}

@media(min-width: 992px) {
    .brand-header__img {
        width:550px
    }
}

.brand-header__img img {
    background-color: #fff;
    border: 1px solid #d8d8d8;
    height: auto;
    margin-bottom: 1rem;
    margin-top: -137.5px;
    width: 137.5px
}

@media(min-width: 768px) {
    .brand-header__img img {
        bottom:-40px;
        left: 0;
        margin-bottom: 0;
        margin-top: 0;
        position: absolute
    }
}

@media(min-width: 992px) {
    .brand-header__img img {
        width:275px
    }
}

.brand-header__desc {
    flex: 0 0 100%;
    font-weight: 700;
    margin-top: 2rem
}

.brand-header__title {
    flex: 1
}

.brand-header__h1 {
    display: block;
    flex: 1;
    font-size: 20px;
    overflow: hidden;
    white-space: nowrap;
    width: 100%
}

@media(min-width: 576px) {
    .brand-header__h1 {
        font-size:24px
    }
}

@media(min-width: 992px) {
    .brand-header__h1 {
        font-size:36px
    }
}

.brand-awards {
    display: flex;
    flex-direction: row
}

.brand-awards>.product-flag {
    background-image: none;
    border: 1px solid #d8d8d8;
    flex: 1;
    margin-right: 0
}

.brand-awards>.product-flag>img {
    height: 60px;
    margin: 0 auto
}

@media(min-width: 1200px) {
    .brand-awards>.product-flag>img {
        height:80px
    }
}

.order-summary {
    align-items: center;
    border-bottom: 1px solid #d8d8d8;
    border-top: 1px solid #d8d8d8;
    display: flex;
    justify-content: center;
    padding: 1rem 0;
    width: 100%
}

.order-summary__block {
    border-right: 1px solid #d8d8d8;
    display: flex;
    flex: 1;
    flex-direction: column;
    justify-content: center;
    padding: .5rem
}

.order-summary__block:first-of-type {
    padding-left: 0
}

.order-summary__block:last-of-type {
    border-right: 0;
    padding-right: 0
}

@media(min-width: 576px) {
    .order-summary__block {
        padding:.5rem 1.5rem
    }
}

.order-summary__label {
    color: #a8a8a8;
    font-size: .8rem;
    margin: 0
}

.order-summary__value {
    font-size: .8rem;
    font-weight: 700;
    margin: 0
}

@media(min-width: 576px) {
    .order-summary__value {
        font-size:1rem
    }
}

.order-summary-product {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 1rem;
    padding: .5rem 0;
    width: 100%
}

.order-summary-product:last-of-type {
    margin-bottom: 0
}

.order-summary-product__img {
    align-items: center;
    background-size: 20px;
    border: 1px solid #d8d8d8;
    border-radius: 0;
    display: flex;
    flex: 0 0 auto;
    justify-content: center;
    max-width: 80px;
    overflow: hidden
}

.order-summary-product__img img {
    font-size: 10px;
    font-style: italic;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.order-summary-product__info {
    display: flex;
    flex-direction: row;
    padding-right: 1rem
}

.order-summary-product__name {
    color: #4c1a3a;
    font-weight: 700;
    margin: 0 0 .25rem
}

.order-summary-product__price {
    font-weight: 700;
    margin-left: auto
}

.order-summary-product__attr {
    color: #a8a8a8;
    display: block;
    margin: 0 0 .25rem
}

#about-section-top {
    min-height: 600px;
    overflow: hidden;
    position: relative
}

#about-section-top .about-img-1 {
    min-height: 100%
}

#about-section-top .about-img-1 img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

@media(min-width: 992px) {
    #about-section-top .about-img-1 {
        bottom:0;
        left: 50%;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 25%
    }
}

#about-section-top .about-img-2 {
    min-height: 100%
}

#about-section-top .about-img-2 img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

@media(min-width: 992px) {
    #about-section-top .about-img-2 {
        bottom:0;
        left: 75%;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 25%
    }
}

#about-section-timeline {
    overflow: hidden
}

#about-section-timeline .timeline {
    margin-bottom: 6rem;
    position: relative
}

#about-section-timeline .timeline--light:before {
    background: #fff!important
}

#about-section-timeline .timeline--light .timeline__item {
    color: #000
}

#about-section-timeline .timeline--light .timeline__badge {
    background: #4c1a3a;
    border-color: #4c1a3a;
    box-shadow: inset 0 0 0 5px #fff;
    color: #fff
}

#about-section-timeline .timeline--even:after {
    transform-origin: center
}

#about-section-timeline .timeline:before {
    background: #4c1a3a;
    bottom: -80px;
    content: "";
    display: block;
    height: 15px;
    left: calc(50% + 7.5px);
    position: absolute;
    transform: translateX(-50%) rotate(45deg);
    transform-origin: center;
    width: 15px;
    z-index: 1
}

#about-section-timeline .timeline:after {
    border: 15px solid #b4a9ad;
    border-bottom: 0;
    border-left: 0;
    border-radius: 50px;
    border-bottom-right-radius: 0;
    border-top-left-radius: 0;
    bottom: -72.5px;
    content: "";
    display: block;
    height: 80px;
    position: absolute;
    right: 50%;
    width: 80px
}

#about-section-timeline .timeline__item {
    align-items: flex-start;
    color: #fff;
    display: flex;
    padding: 4rem 0;
    position: relative
}

#about-section-timeline .timeline__item:first-of-type {
    padding-top: 0
}

#about-section-timeline .timeline__item:first-of-type:before {
    border-bottom-right-radius: 0;
    border-right: 0;
    border-top: 0;
    border-top-left-radius: 0;
    top: 0
}

#about-section-timeline .timeline__item:nth-last-child(2):before {
    width: 60%
}

#about-section-timeline .timeline__item:last-of-type:before {
    width: calc(50% - 85px)
}

#about-section-timeline .timeline__item:before {
    border: 15px solid #b4a9ad;
    border-radius: 50px;
    bottom: -7.5px;
    content: "";
    position: absolute;
    top: -7.5px;
    width: 50%
}

#about-section-timeline .timeline__item:nth-child(odd):before {
    border-bottom-right-radius: 0;
    border-right: 0;
    border-top-right-radius: 0;
    left: 36.5px
}

#about-section-timeline .timeline__item:nth-child(2n):before {
    border-bottom-left-radius: 0;
    border-left: 0;
    border-top-left-radius: 0;
    right: 36.5px
}

#about-section-timeline .timeline__item--left .timeline__badge {
    order: 0
}

#about-section-timeline .timeline__item--left .timeline__content {
    order: 1;
    padding-left: 2rem;
    text-align: left
}

@media(min-width: 768px) {
    #about-section-timeline .timeline__item--left .timeline__content {
        padding-left:4rem
    }
}

#about-section-timeline .timeline__item--right .timeline__badge {
    order: 1
}

#about-section-timeline .timeline__item--right .timeline__content {
    order: 0;
    padding-right: 2rem;
    text-align: right
}

@media(min-width: 768px) {
    #about-section-timeline .timeline__item--right .timeline__content {
        padding-left:8rem;
        padding-right: 4rem
    }
}

#about-section-timeline .timeline__badge {
    align-items: center;
    background: #fff;
    border: 2px solid #fff;
    border-radius: 50%;
    box-shadow: inset 0 0 0 5px #4c1a3a;
    color: #4c1a3a;
    display: flex;
    flex: 0 0 88px;
    font-size: 20px;
    font-weight: 700;
    height: 88px;
    justify-content: center;
    overflow: hidden;
    position: relative;
    white-space: nowrap;
    width: 88px
}

#about-section-timeline .timeline__content {
    flex: 1
}

#about-section-timeline .timeline__content p:last-of-type {
    margin-bottom: 0
}

@media(min-width: 992px) {
    #about-section-timeline .timeline {
        padding:0 8rem
    }
}

.figure {
    align-items: center;
    color: #fff;
    display: flex;
    flex: 0 0 50%;
    flex-direction: column;
    justify-content: flex-start;
    margin-bottom: 3rem;
    max-width: 100%;
    padding: 0 1.5rem;
    text-align: center
}

.figure--black {
    color: #000
}

.figure--lg .figure__badge {
    height: 170px;
    width: 170px
}

.figure__badge {
    align-items: center;
    background: #4c1a3a;
    border-radius: 50%;
    display: flex;
    height: 122px;
    justify-content: center;
    margin: 0 0 1rem;
    padding: 1.75rem;
    width: 122px
}

.figure__count {
    display: block;
    font-size: 48px;
    font-weight: 700;
    line-height: 40px;
    margin: 0;
    white-space: nowrap
}

.figure__label {
    display: block;
    margin: 0;
    max-width: 80%
}

@media(min-width: 768px) {
    .figure {
        flex:1
    }
}

#figures {
    background-attachment: fixed;
    background-image: url(/modules/teapotinformationpages/views/img/about/about_background.jpg);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative
}

#figures:before {
    background: rgba(0,0,0,.8);
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1
}

#figures .banner__overlay,#figures .container,#figures .menu__container {
    position: relative;
    z-index: 2
}

#contact-us {
    background-image: url(/modules/teapotinformationpages/views/img/about/about_footer_flipped.jpg);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover
}

@media(min-width: 768px) {
    #contact-us {
        background-image:url(/modules/teapotinformationpages/views/img/about/about_footer.jpg)
    }
}

#sponsorships {
    background-image: url(/themes/classic-fine-foods/assets/img/stock/stock_sponsorships.jpg);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 5rem 0 18rem;
    position: relative
}

#sponsorships:before {
    background: linear-gradient(180deg,#fff 0,transparent);
    content: "";
    display: block;
    height: 400px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 1
}

#sponsorships .banner__overlay,#sponsorships .container,#sponsorships .menu__container {
    position: relative;
    z-index: 2
}

@media(min-width: 768px) {
    #sponsorships {
        padding:16rem 0 18rem
    }
}

.values {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%
}

@media(min-width: 992px) {
    .values {
        flex-direction:row;
        flex-wrap: nowrap
    }
}

.values__tabs {
    align-self: stretch;
    display: flex;
    flex: 0 0 100%;
    flex-direction: column;
    justify-content: space-between;
    max-width: none;
    width: 100%
}

@media(min-width: 992px) {
    .values__tabs {
        flex:1 0 20%;
        max-width: 20%
    }
}

.values__tab {
    align-items: center;
    background: #fff;
    border: 1px solid #4c1a3a;
    color: #4c1a3a;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    margin-bottom: 1.5rem;
    padding: .75rem 1rem;
    text-align: center;
    text-transform: uppercase;
    width: 100%
}

.values__tab:last-of-type {
    margin-bottom: 0
}

.values__tab.active,.values__tab:hover {
    background: #4c1a3a;
    color: #fff
}

.values__tab h4 {
    font-size: 1.25rem
}

.values svg,.values__icon {
    color: currentColor;
    display: block;
    height: 50px;
    margin: 0 auto 1rem;
    width: auto
}

.values__content {
    display: flex;
    flex: 0 0 100%;
    flex-direction: column;
    margin-top: 1.5rem;
    max-width: none;
    opacity: 0;
    order: 2;
    visibility: hidden;
    width: 100%
}

.values__content.active {
    display: flex;
    opacity: 1;
    order: 1;
    visibility: visible
}

@media(max-width: 991.98px) {
    .values__content {
        display:none
    }
}

@media(min-width: 992px) {
    .values__content {
        flex:0 0 80%;
        margin-top: 0;
        max-width: 80%;
        padding-left: 8rem
    }
}

.value-member {
    flex-direction: column
}

.value-member,.value-member__img {
    display: flex;
    overflow: hidden;
    position: relative
}

.value-member__img {
    align-items: center;
    flex: 1;
    justify-content: center
}

.value-member__img:before {
    content: "";
    display: block;
    padding-top: 60%
}

.value-member__img img {
    height: 100%;
    left: 50%;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 100%
}

.value-member__overlay {
    flex: 1;
    padding: 1.5rem 6rem;
    position: relative;
    width: 100%
}

.value-member__overlay-purple {
    background: #4c1a3a;
    color: #fff
}

.value-member__overlay-white {
    background: #fff;
    color: #4c1a3a
}

.value-member__quote {
    display: block;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 1.5rem;
    position: relative
}

.value-member__quote-left,.value-member__quote-right {
    height: auto;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px
}

.value-member__quote-left {
    left: calc(-50px - 1rem)
}

.value-member__quote-right {
    right: calc(-50px - 1rem)
}

#social-section {
    background-attachment: fixed;
    background-image: url(/modules/teapotinformationpages/views/img/join/social_bg.webp);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover
}

#diversity-section {
    background-color: #fff;
    position: relative
}

#diversity-section:before {
    background: linear-gradient(180deg,#fff 0,transparent);
    content: "";
    display: block;
    height: 70%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 1
}

#diversity-section .banner__overlay,#diversity-section .container,#diversity-section .menu__container {
    position: relative;
    z-index: 2
}

@media(min-width: 992px) {
    #diversity-section {
        background-image:url(/modules/teapotinformationpages/views/img/join/diversity_bg.jpg);
        background-position: bottom;
        background-repeat: no-repeat;
        background-size: cover;
        padding-bottom: 800px
    }
}

.join-container.banner {
    height: auto!important
}

.join-container.banner>.banner__image img {
    -o-object-position: top center;
    object-position: top center
}

#supply-cta {
    align-items: center;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-top: 3rem;
    padding: 2rem;
    width: 100%
}

#supply-section {
    margin-top: calc(150px + 1.5rem);
    position: relative
}

#supply-section:before {
    background-image: url(/modules/teapotinformationpages/views/img/csr/cff-tear.svg);
    background-position: bottom;
    background-repeat: repeat-x;
    background-size: contain;
    bottom: 100%;
    content: "";
    display: block;
    height: 150px;
    left: 0;
    position: absolute;
    right: 0
}

#impact {
    background-image: url(/themes/classic-fine-foods/assets/img/impact.jpg);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 600px;
    position: relative
}

#impact:before {
    background: linear-gradient(180deg,#fff 0,transparent);
    content: "";
    display: block;
    height: 400px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 1
}

#impact .banner__overlay,#impact .container,#impact .menu__container {
    position: relative;
    z-index: 2
}

@media(min-width: 992px) {
    #impact {
        min-height:900px
    }
}

#wellbeing {
    background-attachment: fixed;
    background-image: url(/modules/teapotinformationpages/views/img/csr/wellbeing.jpg);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover
}

.csr-quote {
    font-size: 24px
}

@media(min-width: 768px) {
    .csr-quote {
        font-size:34px
    }
}

@media(min-width: 992px) {
    .csr-quote {
        font-size:48px
    }
}

#taste-lab {
    background-attachment: fixed;
    background-color: #050003;
    background-image: url(/modules/teapotinformationpages/views/img/tastelab/hero.webp);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    min-height: 1200px;
    position: relative;
    z-index: 1
}

#taste-lab:before {
    background: rgba(0,0,0,.7);
    top: 0;
    z-index: -2
}

#taste-lab:after,#taste-lab:before {
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    right: 0
}

#taste-lab:after {
    background: linear-gradient(0deg,#050003 0,transparent);
    height: 40%;
    z-index: -1
}

#taste-lab .glide__control img {
    filter: invert(46%) sepia(13%) saturate(1026%) hue-rotate(6deg) brightness(96%) contrast(87%)
}

#chefs-section {
    background-attachment: fixed;
    background-image: url(/modules/teapotinformationpages/views/img/customers/our-customers_3.jpg);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative
}

#chefs-section:before {
    background: rgba(0,0,0,.6);
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    min-height: 100%;
    min-width: 100%;
    position: absolute;
    right: 0;
    top: 0
}

#chefs-section h2 {
    position: relative;
    z-index: 1
}

#tastelab-hero {
    background-image: url(/modules/teapotinformationpages/views/img/customers/our-customers_4.jpg)
}

#tastelab-hero,.customer-hero {
    background-position: 0;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    overflow: hidden;
    position: relative;
    width: 100%
}

.customer-hero {
    background-image: url(/modules/teapotinformationpages/views/img/customers/our-customers_2.jpg)
}

@media(min-width: 1200px) {
    .customer-hero {
        background-size:contain;
        min-height: 450px
    }
}

@media(min-width: 1494px) {
    .customer-hero {
        background-size:60vw
    }
}

.customer-hero__overlay {
    color: #fff;
    padding-bottom: 6rem;
    padding-top: 6rem;
    position: relative
}

.customer-hero__overlay:before {
    background-color: rgba(0,0,0,.6);
    bottom: 0;
    content: "";
    display: block;
    left: -25vw;
    position: absolute;
    right: -25vw;
    top: 0
}

@media(min-width: 992px) {
    .customer-hero__overlay:before {
        left:unset;
        right: 100%;
        width: 50vw
    }
}

.customer-hero__overlay>* {
    z-index: 1
}

@media(min-width: 992px) {
    .customer-hero__overlay {
        background-color:rgba(0,0,0,.6);
        padding-bottom: 6rem;
        padding-right: 6rem;
        padding-top: 6rem
    }
}

.customer-hero__img {
    min-height: 450px;
    padding: 0;
    position: relative
}

.customer-hero__img:before {
    background-image: url(/modules/teapotinformationpages/views/img/customers/our-customers_1.jpg);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    bottom: 0;
    content: "";
    display: block;
    left: -20vw;
    position: absolute;
    right: -20vw;
    top: 0
}

@media(min-width: 992px) {
    .customer-hero__img:before {
        left:0;
        width: 50vw
    }
}

.success-video {
    height: 650px
}

@media(max-width: 991.98px) {
    .success-video {
        height:400px
    }
}

.interactive-map {
    display: none;
    isolation: isolate;
    min-height: 900px;
    overflow: hidden;
    z-index: 1
}

.interactive-map,.interactive-map__locations {
    flex-direction: row;
    position: relative;
    width: 100%
}

.interactive-map__locations {
    background-color: #4c1a3a;
    color: #fff;
    display: flex;
    flex: 0 0 30vw;
    justify-content: flex-end;
    max-width: 30vw;
    text-align: left;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    z-index: 2
}

.interactive-map__inner {
    background: #4c1a3a;
    display: flex;
    justify-content: flex-end;
    width: 100%
}

.interactive-map__wrap {
    padding: 4rem
}

.interactive-map__address {
    color: #000;
    display: flex;
    flex-direction: column;
    margin-bottom: 1.5rem;
    -webkit-user-select: all;
    -moz-user-select: all;
    user-select: all
}

.interactive-map__address:last-of-type {
    margin-bottom: 0
}

.interactive-map__close {
    background: #4c1a3a;
    border-radius: 50%;
    color: #fff;
    cursor: pointer;
    display: block;
    height: 25px;
    position: absolute;
    right: 1rem;
    top: 1rem;
    width: 25px
}

.interactive-map__close:hover {
    background: #fff;
    color: #4c1a3a
}

.interactive-map__close:after,.interactive-map__close:before {
    background: currentColor;
    content: "";
    display: block;
    height: 2px;
    left: 50%;
    pointer-events: none;
    position: absolute;
    top: 50%;
    width: 12px
}

.interactive-map__close:before {
    transform: translate(-50%,-50%) rotate(45deg)
}

.interactive-map__close:after {
    transform: translate(-50%,-50%) rotate(-45deg)
}

.interactive-map__overlay {
    background: #f4f4f4;
    bottom: 1px;
    display: flex;
    flex-direction: column;
    opacity: 0;
    padding: 4rem;
    position: absolute;
    right: 0;
    top: 1px;
    transition: all .4s ease;
    visibility: hidden;
    width: 420px;
    z-index: -1
}

.interactive-map__overlay.active {
    opacity: 1;
    right: -420px;
    visibility: visible
}

.interactive-map__overlay:after {
    background: linear-gradient(90deg,#e7e7e7,transparent);
    bottom: 0;
    content: "";
    display: block;
    left: 100%;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 6px
}

.interactive-map__title {
    border-bottom: 1px solid #d8d8d8;
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
    text-transform: uppercase
}

.interactive-map__list {
    display: flex;
    flex-direction: column;
    list-style-type: none;
    margin: 0;
    padding: 0
}

.interactive-map__list-item {
    color: #b1b1b1;
    cursor: pointer;
    display: block;
    font-size: 20px;
    font-weight: 600;
    line-height: 40px;
    text-transform: uppercase;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.interactive-map__list-item:hover {
    color: #fff
}

.interactive-map__list-item span {
    display: block;
    pointer-events: none
}

.interactive-map__img {
    border-bottom: 1px solid #4c1a3a;
    border-top: 1px solid #4c1a3a;
    flex: 1;
    overflow: hidden;
    z-index: 1
}

.interactive-map__img svg {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

@media(min-width: 1200px) {
    .interactive-map {
        display:flex
    }
}

#AE,#CHINAMAP,#FR,#INDONESIAMAP,#JAKARTAMAP,#JAPAN,#MALA,#SA,#UK,#VN {
    cursor: pointer
}

#AE:hover,#CHINAMAP:hover,#FR:hover,#INDONESIAMAP:hover,#JAKARTAMAP:hover,#JAPAN:hover,#MALA:hover,#SA:hover,#UK:hover,#VN:hover {
    fill: #fff
}

.banner-container {
    width: 100vw
}

.group-hero {
    background-blend-mode: overlay;
    background-image: url(/modules/teapotinformationpages/views/img/group/group-1.jpg),linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.6));
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    overflow: hidden;
    position: relative;
    width: 100%
}

@media(min-width: 1200px) {
    .group-hero {
        min-height:850px
    }
}

.group-hero__overlay {
    color: #fff;
    padding-bottom: 6rem;
    padding-top: 6rem;
    position: relative
}

.group-hero__overlay:before {
    bottom: 0;
    content: "";
    display: block;
    left: -25vw;
    position: absolute;
    right: -25vw;
    top: 0
}

@media(min-width: 992px) {
    .group-hero__overlay:before {
        left:unset;
        right: 100%;
        width: 50vw
    }
}

.group-hero__overlay>* {
    z-index: 1
}

@media(min-width: 992px) {
    .group-hero__overlay {
        padding-bottom:6rem;
        padding-right: 6rem;
        padding-top: 6rem
    }
}

.file-upload label.group-hero__button,.group-hero__button.btn,.group-hero__button.promo__btn {
    height: auto;
    line-height: 145%;
    min-height: 50px;
    padding: 1rem 1.5rem
}

.group-hero__images {
    display: none;
    flex-direction: column;
    position: absolute;
    right: 0
}

.group-hero__images>div:last-child {
    display: flex;
    flex-direction: column
}

@media(min-width: 768px) {
    .group-hero__images {
        display:flex
    }
}

@media(min-width: 1200px) {
    .group-hero__images {
        flex-direction:row
    }
}

#group-section-timeline {
    overflow: hidden
}

#group-section-timeline .timeline {
    margin-bottom: 6rem;
    position: relative
}

#group-section-timeline .timeline--light:before {
    background: #fff!important
}

#group-section-timeline .timeline--light .timeline__item {
    color: #000
}

#group-section-timeline .timeline--light .timeline__badge {
    background: #4c1a3a;
    border-color: #4c1a3a;
    box-shadow: inset 0 0 0 5px #fff;
    color: #fff
}

#group-section-timeline .timeline--even:after {
    transform-origin: center
}

#group-section-timeline .timeline:before {
    background: #4c1a3a;
    bottom: -80px;
    content: "";
    display: block;
    height: 15px;
    left: calc(50% + 7.5px);
    position: absolute;
    transform: translateX(-50%) rotate(45deg);
    transform-origin: center;
    width: 15px;
    z-index: 1
}

#group-section-timeline .timeline:after {
    border: 15px solid #b4a9ad;
    border-bottom: 0;
    border-left: 0;
    border-radius: 50px;
    border-bottom-right-radius: 0;
    border-top-left-radius: 0;
    bottom: -72.5px;
    content: "";
    display: block;
    height: 80px;
    position: absolute;
    right: 50%;
    width: 80px
}

#group-section-timeline .timeline__item {
    align-items: flex-start;
    color: #fff;
    display: flex;
    padding: 4rem 0;
    position: relative
}

#group-section-timeline .timeline__item:first-of-type {
    padding-top: 0
}

#group-section-timeline .timeline__item:first-of-type:before {
    border-bottom-right-radius: 0;
    border-right: 0;
    border-top: 0;
    border-top-left-radius: 0;
    top: 0
}

#group-section-timeline .timeline__item:nth-last-child(2):before {
    width: 60%
}

#group-section-timeline .timeline__item:last-of-type:before {
    width: calc(50% - 85px)
}

#group-section-timeline .timeline__item:before {
    border: 15px solid #b4a9ad;
    border-radius: 50px;
    bottom: -7.5px;
    content: "";
    position: absolute;
    top: -7.5px;
    width: 50%
}

#group-section-timeline .timeline__item:nth-child(odd):before {
    border-bottom-right-radius: 0;
    border-right: 0;
    border-top-right-radius: 0;
    left: 36.5px
}

#group-section-timeline .timeline__item:nth-child(2n):before {
    border-bottom-left-radius: 0;
    border-left: 0;
    border-top-left-radius: 0;
    right: 36.5px
}

#group-section-timeline .timeline__item--left .timeline__badge {
    order: 0
}

#group-section-timeline .timeline__item--left .timeline__content {
    color: #000;
    order: 1;
    padding-left: 2rem;
    text-align: left
}

@media(min-width: 768px) {
    #group-section-timeline .timeline__item--left .timeline__content {
        padding-left:4rem
    }
}

#group-section-timeline .timeline__item--right .timeline__badge {
    order: 1
}

#group-section-timeline .timeline__item--right .timeline__content {
    color: #000;
    order: 0;
    padding-right: 2rem;
    text-align: right
}

@media(min-width: 768px) {
    #group-section-timeline .timeline__item--right .timeline__content {
        padding-left:8rem;
        padding-right: 4rem
    }
}

#group-section-timeline .timeline__badge {
    align-items: center;
    background: #4c1a3a;
    border: 2px solid #4c1a3a;
    border-radius: 50%;
    box-shadow: inset 0 0 0 4px #fff;
    color: #fff;
    display: flex;
    flex: 0 0 88px;
    font-size: 20px;
    font-weight: 700;
    height: 88px;
    justify-content: center;
    overflow: hidden;
    position: relative;
    white-space: nowrap;
    width: 88px
}

#group-section-timeline .timeline__content {
    flex: 1
}

#group-section-timeline .timeline__content p:last-of-type {
    margin-bottom: 0
}

@media(min-width: 992px) {
    #group-section-timeline .timeline {
        padding:0 8rem
    }
}

.glide {
    box-sizing: border-box;
    position: relative;
    width: 100%
}

.glide * {
    box-sizing: inherit
}

.glide__slides,.glide__track {
    overflow: hidden
}

.glide__slides {
    backface-visibility: hidden;
    display: flex;
    flex-wrap: nowrap;
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
    touch-action: pan-Y;
    transform-style: preserve-3d;
    white-space: nowrap;
    width: 100%;
    will-change: transform
}

.glide__slide,.glide__slides--dragging {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.glide__slide {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    flex-shrink: 0;
    height: 100%;
    white-space: normal;
    width: 100%
}

.glide__slide a {
    -webkit-user-drag: none;
    -webkit-user-select: none;
    user-select: none;
    -moz-user-select: none;
    -ms-user-select: none
}

.glide__arrows,.glide__bullets {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.glide--rtl {
    direction: rtl
}

.datepicker {
    width: -moz-min-content;
    width: min-content
}

.datepicker:not(.active) {
    display: none
}

.datepicker-dropdown {
    padding-top: 4px;
    position: absolute;
    z-index: 20
}

.datepicker-dropdown.datepicker-orient-top {
    padding-bottom: 4px;
    padding-top: 0
}

.datepicker-picker {
    background-color: #fff;
    border-radius: 4px;
    display: flex;
    flex-direction: column
}

.datepicker-dropdown .datepicker-picker {
    box-shadow: 0 2px 3px hsla(0,0%,4%,.1),0 0 0 1px hsla(0,0%,4%,.1)
}

.datepicker-main {
    flex: auto;
    padding: 2px
}

.datepicker-footer {
    background-color: #f5f5f5;
    box-shadow: inset 0 1px 1px hsla(0,0%,4%,.1)
}

.datepicker-title {
    background-color: #f5f5f5;
    box-shadow: inset 0 -1px 1px hsla(0,0%,4%,.1);
    font-weight: 700;
    padding: .375rem .75rem;
    text-align: center
}

.datepicker-controls {
    display: flex
}

.datepicker-header .datepicker-controls {
    padding: 2px 2px 0
}

.datepicker-header .datepicker-controls .button {
    border-color: transparent;
    font-weight: 700
}

.datepicker-header .datepicker-controls .button:hover {
    background-color: #f9f9f9
}

.datepicker-header .datepicker-controls .button:focus:not(:active) {
    box-shadow: 0 0 0 .125em hsla(0,0%,100%,.25)
}

.datepicker-header .datepicker-controls .button:active {
    background-color: #f2f2f2
}

.datepicker-footer .datepicker-controls .button {
    border-radius: 2px;
    flex: auto;
    font-size: .75rem;
    margin: calc(.375rem - 1px) .375rem
}

.datepicker-controls .view-switch {
    flex: auto
}

.datepicker-controls .next-button,.datepicker-controls .prev-button {
    flex: 0 0 14.2857142857%;
    padding-left: .375rem;
    padding-right: .375rem
}

.datepicker-controls .next-button.disabled,.datepicker-controls .prev-button.disabled {
    visibility: hidden
}

.datepicker-grid,.datepicker-view {
    display: flex
}

.datepicker-view {
    align-items: stretch;
    width: 15.75rem
}

.datepicker-grid {
    flex: auto;
    flex-wrap: wrap
}

.datepicker .days {
    display: flex;
    flex: auto;
    flex-direction: column
}

.datepicker .days-of-week {
    display: flex
}

.datepicker .week-numbers {
    display: flex;
    flex: 0 0 9.6774193548%;
    flex-direction: column
}

.datepicker .weeks {
    align-items: stretch;
    display: flex;
    flex: auto;
    flex-direction: column
}

.datepicker span {
    -webkit-touch-callout: none;
    align-items: center;
    border-radius: 4px;
    cursor: default;
    display: flex;
    justify-content: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.datepicker .dow {
    font-size: .875rem;
    font-weight: 700;
    height: 1.5rem
}

.datepicker .week {
    color: #b5b5b5;
    flex: auto;
    font-size: .75rem
}

.datepicker .days .dow,.datepicker-cell {
    flex-basis: 14.2857142857%
}

.datepicker-cell {
    height: 2.25rem
}

.datepicker-cell:not(.day) {
    flex-basis: 25%;
    height: 4.5rem
}

.datepicker-cell:not(.disabled):hover {
    background-color: #f9f9f9;
    cursor: pointer
}

.datepicker-cell.focused:not(.selected) {
    background-color: #e9e9e9
}

.datepicker-cell.selected,.datepicker-cell.selected:hover {
    background-color: #485fc7;
    color: #fff;
    font-weight: 600
}

.datepicker-cell.disabled {
    color: #dbdbdb
}

.datepicker-cell.next:not(.disabled),.datepicker-cell.prev:not(.disabled) {
    color: #7a7a7a
}

.datepicker-cell.next.selected,.datepicker-cell.prev.selected {
    color: #e6e6e6
}

.datepicker-cell.highlighted:not(.selected):not(.range):not(.today) {
    background-color: #f5f5f5;
    border-radius: 0
}

.datepicker-cell.highlighted:not(.selected):not(.range):not(.today):not(.disabled):hover {
    background-color: #efefef
}

.datepicker-cell.highlighted:not(.selected):not(.range):not(.today).focused {
    background-color: #e9e9e9
}

.datepicker-cell.today:not(.selected) {
    background-color: #00d1b2
}

.datepicker-cell.today:not(.selected):not(.disabled) {
    color: #fff
}

.datepicker-cell.today.focused:not(.selected) {
    background-color: #00ccad
}

.datepicker-cell.range-end:not(.selected),.datepicker-cell.range-start:not(.selected) {
    background-color: #b5b5b5;
    color: #fff
}

.datepicker-cell.range-end.focused:not(.selected),.datepicker-cell.range-start.focused:not(.selected) {
    background-color: #b1b1b1
}

.datepicker-cell.range-start:not(.range-end) {
    border-radius: 4px 0 0 4px
}

.datepicker-cell.range-end:not(.range-start) {
    border-radius: 0 4px 4px 0
}

.datepicker-cell.range {
    background-color: #dbdbdb;
    border-radius: 0
}

.datepicker-cell.range:not(.disabled):not(.focused):not(.today):hover {
    background-color: #d6d6d6
}

.datepicker-cell.range.disabled {
    color: #c5c5c5
}

.datepicker-cell.range.focused {
    background-color: #d0d0d0
}

.datepicker-input.in-edit {
    border-color: #3d56c3
}

.datepicker-input.in-edit:active,.datepicker-input.in-edit:focus {
    box-shadow: 0 0 .25em .25em rgba(61,86,195,.2)
}

.language-selector {
    position: relative;
    margin-right: 20px;
}

.language-selector ul {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    z-index: 999;
    list-style: none;
    padding: 0;
    margin: 0;
    min-width: 150px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}

.language-selector:hover ul, .language-selector.active ul {
    display: block;
}

.language-selector ul li a {
    display: block;
    padding: 8px 12px;
    color: #333;
}

.address-item__inner {
    display: flex;
    align-items: flex-end;
    width: 98%;
}

a.subcategory {
    font-size: 12px;
    padding: 8px 16px;
    border: 1px solid rgb(231, 223, 216);
    border-radius: 20px;
    color: rgb(90, 77, 83);
    margin-right: 15px;
}

body, section.lg.bg-color-white,.bg-color-gray-lighter,.bg-color-white {
    background: #FAF6F1
}

div.col-12.col-lg.mw-20.left-column > div.d-none.d-lg-block {
    background: white;
    border: 1px solid rgb(231, 223, 216);
    border-radius: 4px;
    padding: 26px;
}

#js-product-list a.product {
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: rgba(36, 26, 32, 0.08) 0px 1px 3px;
    font-size: 13px;
    color: rgb(36, 26, 32);
    line-height: 1.4;
    margin-bottom: 10px;
    font-weight: 500;
    min-height: 36px;
}

h5.product__name {
    font-family: 'Work Sans';
    font-size: 15px;
    color: rgb(36, 26, 32);
    line-height: 1.3;
    margin-bottom: 10px;
    font-weight: 500;
    min-height: 36px;
    letter-spacing: 0;
}

span.product__price-message {
    font-weight: 400;
}

span.product__availability.product__availability--ready {
    padding: 0;
}

.product__brand {
    font-size: 12px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: rgb(138, 123, 130);
    margin-bottom: 5px;
    padding-left: 0.75rem;
}

h4.color-primary.mb-0.me-auto {
    font-family: 'Work Sans';
    font-size: 19px;
}

section.bg-color-gray-lighter.subcategories {
    padding: 0.5rem;
}

#product h1.product-title {
    font-family: Newsreader, serif;
    font-size: 30px;
    line-height: 1.3;
    color: rgb(36, 26, 32);
    margin: 18px 0px 10px;
    font-weight: 500;
}

.btn {
    font-family: 'Work Sans', system-ui, sans-serif;
}
.tabs {
    padding-top: 10px;
}
.tabs__tab {
    font-family: Newsreader, serif;
    font-size: 20px;
    color: rgb(36, 26, 32);
    font-weight: 500;
    padding: 20px 0px 0;
}

.tabs__wrap {
    border-bottom: 1px solid #c1c1c1;
}
div#short-description p {
    font-size: 14px;
}

a.product_brand {
    font-size: 12px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: rgb(76, 26, 58);
    font-weight: 600;
    border-bottom: 1px solid rgb(76, 26, 58);
}

a.product_brand:hover{text-decoration:none}

.product-message.mb-4 {
    border: 1px dashed rgb(201, 160, 107);
    background: rgb(251, 246, 238);
    border-radius: 4px;
    padding: 18px;
    font-size: 14.5px;
}

a.btn-login {
    background: rgb(76, 26, 58);
    color: rgb(250, 246, 241);
    padding: 6px 22px;
    border-radius: 2px;
    font-size: 12.5px;
    font-weight: 600;
    display: inline-block;
    text-decoration: none;
    border : 1px solid rgb(76, 26, 58);
}

a.btn-account {
    background: rgb(250, 246, 241);
    border : 1px solid rgb(76, 26, 58);
    color: rgb(76, 26, 58);
    padding: 6px 4px;
    font-size: 12.5px;
    font-weight: 600;
        display: inline-block;
    text-decoration: none;
}

.product-short-description p, div#tab-description p, div#tab-data-sheet {
    font-size: 14px;
}

div#tab-data-sheet {
    font-size: 14px;
}

#tab-data-sheet table.block.narrow tr {
    border-bottom: 1px solid #EFE9E2;
}

#tab-data-sheet tr > td:first-child {
    color: rgb(138, 123, 130);
}

#tab-data-sheet tr {
    display: flex;
    justify-content: space-between;
}
.homepage-about-us {
    padding: 80px 0;
    background: #EFE9E2;
}

#index .title {
    font-family: Newsreader, serif;
    font-size: 30px;
    color: rgb(36, 26, 32);
    margin: 0px;
    font-weight: 500;
    text-align: left;
    padding: 20px 0;
    margin: 0;
}

#index .title:before,#index .title:after{content:none}

.cta-grid {
    max-width: 1600px;
    margin: auto;
    margin-bottom: 80px;
}

h2.homepage-text__title.h1.text-shadow {
    font-family: Newsreader, serif;
    font-size: 34px;
    line-height: 1.25;
    color: rgb(36, 26, 32);
    margin: 16px 0px 20px;
    font-weight: 500;
    text-shadow: none;
}

.col-12.col-lg-5.homepage-text__overlay {
    font-size: 15px;
    line-height: 1.75;
    color: rgb(90, 77, 83);
    margin: 0px 0px 14px;
	margin-right: 25%;
}

a.read-more {
    font-size: 13px;
    font-weight: 600;
    color: rgb(76, 26, 58);
    border-bottom: 1.5px solid rgb(76, 26, 58);
    padding-bottom: 3px;
}

 .culinary-hub {
    background: #341226;
    padding: 100px 64px;
    display: flex;
    gap: 72px;
    align-items: center;
  }

  .culinary-hub__content {
    max-width: 480px;
  }

  .culinary-hub__eyebrow {
    font-size: 12px;
    letter-spacing: 0.16em;
    color: #c9a06b;
    text-transform: uppercase;
    border-bottom: 1px solid rgba(201, 160, 107, 0.4);
    padding-bottom: 8px;
    display: inline-block;
  }

  .culinary-hub__title {
    font-family: 'Newsreader', serif;
    font-size: 32px;
    line-height: 1.3;
    color: #faf6f1;
    margin: 22px 0 20px;
    font-weight: 500;
  }

  .culinary-hub__text {
    font-size: 15px;
    line-height: 1.75;
    color: rgba(250, 246, 241, 0.7);
    margin: 0 0 30px;
  }

  .culinary-hub__cta {
    display: inline-block;
    background: #c9a06b;
    color: #341226;
    padding: 14px 28px;
    border-radius: 2px;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    text-decoration: none;
    transition: opacity 0.2s ease;
  }

  .culinary-hub__cta:hover {
    opacity: 0.85;
  }

  .culinary-hub__image {
    width: 600px;
    /* height: 360px; */
    flex: 0 0 auto;
    border-radius: 4px;
    /* background: rgba(250, 246, 241, 0.08); */
    display: flex;
    align-items: center;
    justify-content: center;
  }

  @media (max-width: 900px) {
    .culinary-hub {
      flex-direction: column;
      padding: 60px 24px;
    }

    .culinary-hub__image {
      width: 100%;
      height: 280px;
    }
  }
  
  .main-menu {
    width: 100%;
    background: rgb(76, 26, 58);
    margin: 22px 0px 0;
}

a.menu__link.menu__link--primary {
    /* padding: 15px 0px!important; */
    font-size: 12.5px!important;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: rgb(243, 233, 233);
    font-weight: 500;
}

form.search {
    flex: 1 1 0%;
    max-width: 680px;
    margin: 0px 10%;
    display: flex;
    align-items: center;
    border: 1px solid rgb(231, 223, 216);
    border-radius: 24px;
    padding: 10px 18px;
    gap: 10px;
    background: rgb(255, 255, 255);
}

.cta__discover{
	font-size: 12px;
	color: rgb(76, 26, 58);
	font-weight: 600;
	margin: 14px 0 0;
}
.cta-category {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.cta__discover {
    /* display: flex; */
    /* flex-direction: row; */
}
.footer h4 {
    color: #fff;
    font-size: 20px;
    line-height: normal;
    font-size: 14px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgb(201, 160, 107);
    margin-bottom: 18px;
    font-family: 'Work Sans';
}
.footer {
    display: flex;
    flex-direction: column;
    gap: 10px;
    font-size: 15px;
}
.footer a {
    color: #fff;
}
section.same-category {
    /* display: flex; */
    max-width: 1600px;
    margin: auto;
    padding : 20px
}

.same-category-products {
  display: flex;
  align-items: stretch; 
  gap: 16px;
}

.same-category-products > .product {
  flex: 1 1 0;
  min-width: 0;
  display: flex; 
}

.product__wrap {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

.product__thumbnail {
  width: 100%;
  aspect-ratio: 1 / 1; 
  overflow: hidden;
}

.product__img {
  width: 100%;
  height: 100%;
  object-fit: cover; 
}

.product__name {
  display: -webkit-box;
  -webkit-line-clamp: 3; 
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ps-mainmenu{order:-1}.ps-mainmenu:is(.ps-mainmenu--desktop){display:flex;justify-content: space-between;}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__mobile-toggle{align-items:center;display:flex}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__mobile-toggle .menu-toggle{background-color:transparent;color:var(--bs-body-color);padding-inline:.375rem}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__mobile-toggle .menu-toggle:hover{color:var(--bs-link-hover-color)}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__mobile-toggle .menu-toggle .material-icons,.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__mobile-toggle .menu-toggle .submenu__left-item[data-ps-has-child=true]:after{font-size:1.5rem}@media(min-width:1200px){.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__mobile-toggle{display:none}}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree{align-items:stretch;display:flex;flex-wrap:wrap;gap:.5rem;margin:0}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree>li{align-items:center;display:flex}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree>li.current .ps-mainmenu__tree-link{color:var(--bs-link-color)}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree>li .ps-mainmenu__tree-item-wrapper{align-items:center;display:flex}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree>li .ps-mainmenu__tree-link{color:var(--bs-secondary-color);padding:1.25rem .5rem;text-decoration:none}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree>li .ps-mainmenu__tree-link:hover{color:var(--bs-link-hover-color);cursor:pointer}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree>li .ps-mainmenu__tree-link:active{color:var(--bs-link-hover-color)}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree>li .ps-mainmenu__tree-link:focus{border-radius:var(--bs-border-radius);color:var(--bs-link-hover-color);outline:.125rem solid var(--bs-link-color);outline-offset:.125rem}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree>li .ps-mainmenu__tree-dropdown-toggle{align-items:center;align-self:stretch;background:none;border:none;color:var(--bs-secondary-color);cursor:pointer;display:flex;justify-content:center;padding:1.25rem .125rem}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree>li .ps-mainmenu__tree-dropdown-toggle:after{transition:var(--bs-transition-default)}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree>li .ps-mainmenu__tree-dropdown-toggle:hover{color:var(--bs-link-hover-color)}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree>li .ps-mainmenu__tree-dropdown-toggle:focus{border-radius:var(--bs-border-radius);color:var(--bs-link-hover-color);outline:.125rem solid var(--bs-link-color);outline-offset:.125rem}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree>li .ps-mainmenu__tree-dropdown-toggle[aria-expanded=true]:after{transform:rotate(-.5turn)}.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree>li .submenu{background-color:var(--bs-body-bg);border-top:.0625rem solid var(--bs-border-color);display:none;left:0;position:absolute;right:0;top:100%;z-index:1060}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu{box-shadow:var(--bs-box-shadow-md)}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__row{align-items:stretch}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__left{border-right:.0625rem solid var(--bs-border-color);display:flex;flex-direction:column;gap:.25rem;padding-block:1.5rem}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__left-item{align-items:center;background-color:transparent;border-radius:var(--bs-border-radius);color:var(--bs-body-color);display:flex;padding:.75rem 1rem;text-decoration:none}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__left-item:hover{background-color:var(--bs-tertiary-bg);color:var(--bs-link-hover-color)}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__left-item:focus{background-color:var(--bs-tertiary-bg);color:var(--bs-link-hover-color);outline:.125rem solid var(--bs-link-color);outline-offset:.125rem}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__left-item.active{background-color:var(--bs-tertiary-bg);color:var(--bs-link-color)}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__left-item.active:active,.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__left-item.active:focus{background-color:var(--bs-tertiary-bg);color:var(--bs-link-hover-color)}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__left-item[data-ps-has-child=true]:after{content:"\e315"/" ";margin:0 0 0 auto}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right{padding-block:1.5rem}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items{-moz-column-gap:1.25rem;column-gap:1.25rem;display:none;grid-template-columns:repeat(3,1fr);row-gap:2rem}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items:first-child{display:grid}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items.active{display:grid}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items.not-active{display:none}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items .menu-item{color:var(--bs-body-color);display:block}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items .menu-item:hover{color:var(--bs-link-hover-color)}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items .menu-item__group--child .menu-item__group-main-item,.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items .menu-item__group--nochild .menu-item__group-main-item{font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items .menu-item__group--child{display:flex;flex-direction:column}.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items .menu-item__group--child .menu-item{align-items:center;display:flex;gap:.25rem}@media(min-width:1400px){.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items{grid-template-columns:repeat(4,1fr)}}.ps-mainmenu:is(.ps-mainmenu--mobile){overflow:hidden;padding:0}.ps-mainmenu:is(.ps-mainmenu--mobile) .contact-link{display:block;margin-bottom:1rem}.ps-mainmenu:is(.ps-mainmenu--mobile) .offcanvas-header{justify-content:space-between;padding-inline:0 .75rem}.ps-mainmenu:is(.ps-mainmenu--mobile) .btn-close{margin:0;padding:.75rem}.ps-mainmenu:is(.ps-mainmenu--mobile) .menu{display:none;left:100%;max-width:25rem;padding:0 1rem;position:relative;transition:var(--bs-transition-default);width:100%}.ps-mainmenu:is(.ps-mainmenu--mobile) .menu a{color:var(--bs-secondary-color);display:block;padding-block:.5rem}.ps-mainmenu:is(.ps-mainmenu--mobile) .menu a:hover{color:var(--bs-link-hover-color)}.ps-mainmenu:is(.ps-mainmenu--mobile) .menu__title{color:var(--bs-body-color);font-size:1.25rem;font-weight:600;margin-bottom:.75rem;padding:0}.ps-mainmenu:is(.ps-mainmenu--mobile) .menu__list{margin:0}.ps-mainmenu:is(.ps-mainmenu--mobile) .menu__link:active{color:var(--bs-link-color)}.ps-mainmenu:is(.ps-mainmenu--mobile) .menu__toggle-child{padding:.25rem}.ps-mainmenu:is(.ps-mainmenu--mobile) .menu__toggle-child>span{display:block;line-height:0}.ps-mainmenu:is(.ps-mainmenu--mobile) .menu--current{display:block;left:0}.ps-mainmenu:is(.ps-mainmenu--mobile) .menu--fromLeft{animation:from-left .25s}.ps-mainmenu:is(.ps-mainmenu--mobile) .menu--fromRight{animation:from-right .25s}.ps-mainmenu:is(.ps-mainmenu--mobile) .menu--parent{display:none;left:-100%;opacity:0}.ps-mainmenu:is(.ps-mainmenu--mobile) .menu--childrens{align-items:center;display:flex;justify-content:space-between}.ps-mainmenu:is(.ps-mainmenu--mobile) .ps-mainmenu__mobile{height:100%}.ps-mainmenu:is(.ps-mainmenu--mobile) .ps-mainmenu__back-button .btn{line-height:1;padding:.25rem .5rem}.ps-mainmenu:is(.ps-mainmenu--mobile) .ps-mainmenu__tree{align-items:center;display:flex;margin-bottom:0}.ps-mainmenu:is(.ps-mainmenu--mobile) .ps-mainmenu__additionnals{flex-shrink:0}@media(min-width:1200px){.ps-mainmenu{order:1}}@keyframes from-left{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes from-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}.product-comment-list-item .material-icons[data-icon]:before{content:attr(data-icon)}.product-comment-modal .modal-header .material-icons.check,.product-comment-modal .modal-header .ps-mainmenu:is(.ps-mainmenu--desktop) .check.submenu__left-item[data-ps-has-child=true]:after,.ps-mainmenu:is(.ps-mainmenu--desktop) .product-comment-modal .modal-header .check.submenu__left-item[data-ps-has-child=true]:after{color:var(--bs-success)}
/* Affichage au survol (fallback souris) */
.ps-mainmenu--desktop .ps-mainmenu__tree > li:hover .submenu,
.ps-mainmenu--desktop .ps-mainmenu__tree > li:focus-within .submenu {
  display: block;
}

/* Affichage piloté par le JS (clic / clavier / accessibilité) */
.ps-mainmenu--desktop .ps-mainmenu__tree > li .submenu.show {
  display: block;
}

/* Fond + centrage du menu desktop */
.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__desktop {
  background: rgb(76, 26, 58);
  padding: 0;
}

.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree {
  display: flex;
  justify-content: space-evenly;
  gap: 34px;
  flex-wrap: nowrap; /* évite le retour à la ligne si possible */
}

/* Style des liens de premier niveau */
.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree > li .ps-mainmenu__tree-link {
  display: block;
  padding: 15px 0;
  font-size: 14px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: rgb(243, 233, 233);
  font-weight: 500;
}

.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree > li .ps-mainmenu__tree-link:hover,
.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree > li.current .ps-mainmenu__tree-link {
  color: #fff; /* léger contraste au survol/actif, à ajuster si besoin */
}

/* Le bouton dropdown-toggle : masqué ou discret pour matcher le rendu épuré */
.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree > li .ps-mainmenu__tree-dropdown-toggle {
  color: rgb(243, 233, 233);
}

/**
 * Offcanvas vanilla — remplace le CSS du composant Bootstrap Offcanvas.
 * À ajouter à la suite du CSS existant du thème (menu-desktop / menu-mobile).
 * Ne modifie aucune règle globale, ne dépend d'aucune variable Bootstrap.
 */

/* ============================================================
 * PANNEAU OFFCANVAS
 * ============================================================ */
.offcanvas {
  position: fixed;
  top: 0;
  bottom: 0;
  z-index: 1055;
  display: flex;
  flex-direction: column;
  max-width: 100%;
  background-color: #fff;
  color: inherit;
  visibility: hidden;
  transition: transform 0.3s ease-in-out, visibility 0.3s ease-in-out;
  outline: 0;
}

.offcanvas.offcanvas-start {
  left: 0;
  width: 320px;
  max-width: 85vw;
  transform: translateX(-100%);
  border-right: 1px solid rgba(0, 0, 0, 0.1);
}


.offcanvas.offcanvas-end {
  right: 0;
  width: 320px;
  max-width: 85vw;
  transform: translateX(100%);
  border-left: 1px solid rgba(0, 0, 0, 0.1);
}


.offcanvas.show {
  visibility: visible;
  transform: translateX(0);
}

.offcanvas-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem;
}

.offcanvas-body {
  flex: 1 1 auto;
  padding: 1rem;
  overflow-y: auto;
}

.offcanvas-backdrop-vanilla {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 0.15s linear;
}

.offcanvas-backdrop-vanilla.show {
  opacity: 1;
}


body.offcanvas-open-vanilla {
  overflow: hidden;
}


.offcanvas .btn-close {
  padding: 0.5rem;
  background: transparent;
  border: 0;
  cursor: pointer;
  opacity: 0.7;
}

.offcanvas .btn-close:hover {
  opacity: 1;
}

.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree > li .submenu {
  background-color: #ffffff;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.15);
  border-top: 3px solid rgb(76, 26, 58); 
  z-index: 1100; 
  left: 0;
  right: 0;
  width: 100%;
}


.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__left {
  border-right: 1px solid #eee;
  padding-block: 1.5rem;
}

.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__left-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem 1.25rem;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #2b2b2b;
  border-radius: 6px;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__left-item:hover,
.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__left-item.active {
  background-color: rgba(76, 26, 58, 0.08);
  color: rgb(76, 26, 58);
}


.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__left-item[data-ps-has-child="true"]::after {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
  margin-left: auto;
  opacity: 0.6;
}


.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right {
  padding: 1.5rem 2rem;
}

.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items {
  column-gap: 2rem;
  row-gap: 1rem;
}

.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items .menu-item {
  font-size: 13px;
  color: #444;
  padding: 4px 0;
  transition: color 0.15s ease;
}

.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items .menu-item:hover {
  color: rgb(76, 26, 58);
  text-decoration: underline;
}

.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items .menu-item__group--child .menu-item__group-main-item,
.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items .menu-item__group--nochild .menu-item__group-main-item {
  font-size: 14px;
  font-weight: 700;
  color: #1a1a1a;
  margin-bottom: 0.4rem;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}


.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items.active {
  display: grid;
}
.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu__right-items.not-active {
  display: none;
}

.ps-mainmenu.ps-mainmenu--desktop {
  flex: 1 1 100%;
  width: 100%;
}

.ps-mainmenu__desktop {
  width: 100%;
}


.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree {
  width: 100%;
  justify-content: center;
  padding: 0;
}

div#payment-confirmation {
    display: none !important;
}
/* ==========================================================================
   Header mobile : 2 lignes
   Ligne 1 : burger / logo / actions   |   Ligne 2 : recherche pleine largeur
   ========================================================================== */
@media (max-width: 991.98px) {
    header {
        height: auto;
    }

    header .header__mobile-bar {
        align-items: center;
        display: flex;
        height: 70px;
        justify-content: space-between;
    }

    header .header__burger,
    header .header__mobile-actions .header__icon {
        margin-right: 0;
    }

    header .header__mobile-logo {
        display: block;
        flex: 0 0 auto;
    }

    header .header__mobile-logo img {
        display: block;
        height: 54px;
        width: auto;
    }

    header .header__mobile-actions {
        align-items: center;
        display: flex;
        gap: 1.25rem;
    }

    /* la recherche desktop et l'icone loupe ne servent plus en mobile */
    header .header__mobile-actions [data-component="Search"],
    header #mobile-search-icon {
        display: none !important;
    }

    /* on masque le menu desktop, PAS l'offcanvas #mobileMenu rendu a cote */
    header .main-menu .ps-mainmenu--desktop {
        display: none;
    }

    /* ligne 2 : la searchbar mobile passe dans le flux, toujours ouverte */
    header .header__mobile-search {
        height: auto;
        position: static;
    }

    .search-mobile {
        position: static;
        transform: none !important;
    }

    .search-mobile .search-mobile__overlay {
        display: none;
    }

    .search-mobile__wrap {
        padding: 0.625rem 0;
    }

    .search-mobile__results {
        background: #fff;
        left: 0;
        margin-top: 0;
        padding: 0 1rem;
        position: absolute;
        right: 0;
    }

    main {
        margin-top: 146px;
    }

    .flyout {
        top: 136px;
    }
}

@media (min-width: 576px) and (max-width: 991.98px) {
    header .header__mobile-bar {
        height: 78px;
    }

    main {
        margin-top: 134px;
    }

    .flyout {
        top: 134px;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    main {
        margin-top: 184px;
    }

    .flyout {
        top: 184px;
    }
}

/* Masque le bloc displayNav2 (langue / devise / compte) en mobile */
@media (max-width: 991.98px) {
    header .header__top .col.d-flex {
        display: none !important;
    }
}

/* Burger en mobile : foncé sur le fond clair du header */
@media (max-width: 991.98px) {
    header .hamburger-inner,
    header .hamburger-inner:after,
    header .hamburger-inner:before,
    header .hamburger.is-active .hamburger-inner,
    header .hamburger.is-active .hamburger-inner:after,
    header .hamburger.is-active .hamburger-inner:before {
        background-color: #341226;
    }
}

/* header__top : "Contact us / or call" centre de page, nav2 reste a droite */
header .header__top .row {
    position: relative;
}

header .header__top .row > .col:first-child {
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    text-align: center;
}

header .header__top .row > .col:first-child a {
    pointer-events: auto;
}

/* Offcanvas du menu mobile au-dessus du backdrop Bootstrap */
#mobileMenu.ps-mainmenu--mobile {
    z-index: 2000;
}

/* #mobileMenu est deplace en fin de <body> par header.tpl : il n'est plus
   prisonnier du stacking context du header, son z-index suffit. */

/* Pas de bandeau .main-menu en mobile (le menu desktop y est deja masque) */
@media (max-width: 991.98px) {
    header .main-menu {
        background: none;
        margin: 0;
    }
}

/* Logo mobile centre sur la page, independamment de la largeur des icones */
@media (max-width: 991.98px) {
    header .header__mobile-bar {
        position: relative;
    }

    header .header__mobile-logo {
        left: 50%;
        position: absolute;
        transform: translateX(-50%);
    }
}

/* ==========================================================================
   Menu mobile (offcanvas #mobileMenu) — reprend la charte du menu desktop
   ========================================================================== */

/* En-tete : bandeau prune comme la barre de navigation desktop */
.ps-mainmenu:is(.ps-mainmenu--mobile) .offcanvas-header {
    align-items: center;
    background: rgb(76, 26, 58);
    display: flex;
    justify-content: space-between;
    min-height: 56px;
    padding: 0 0.75rem 0 1rem;
}

.ps-mainmenu:is(.ps-mainmenu--mobile) .offcanvas-header .btn-close,
.ps-mainmenu:is(.ps-mainmenu--mobile) .ps-mainmenu__back-button .btn {
    color: rgb(243, 233, 233);
    opacity: 1;
}

.ps-mainmenu:is(.ps-mainmenu--mobile) .offcanvas-header .btn-close:hover,
.ps-mainmenu:is(.ps-mainmenu--mobile) .ps-mainmenu__back-button .btn:hover {
    color: #fff;
}

.ps-mainmenu:is(.ps-mainmenu--mobile) .ps-mainmenu__back-button .btn {
    align-items: center;
    background-color: #00000000;
    display: inline-flex;
    font-size: 13px;
    font-weight: 600;
    gap: 0.25rem;
    letter-spacing: 0.05em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
}

.ps-mainmenu:is(.ps-mainmenu--mobile) .ps-mainmenu__back-button .btn .material-icons {
    font-size: 20px;
    line-height: 1;
}

/* Titre de niveau (equivalent du .menu-item__group-main-item desktop) */
.ps-mainmenu:is(.ps-mainmenu--mobile) .menu__title {
    border-bottom: 2px solid rgb(76, 26, 58);
    color: #1a1a1a;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.02em;
    margin-bottom: 0.25rem;
    padding: 0.875rem 0 0.5rem;
    text-transform: uppercase;
}

/* Lignes du menu */
.ps-mainmenu:is(.ps-mainmenu--mobile) .menu__list > li {
    border-bottom: 1px solid #eee;
}

.ps-mainmenu:is(.ps-mainmenu--mobile) .menu__list > li:last-child {
    border-bottom: 0;
}

.ps-mainmenu:is(.ps-mainmenu--mobile) .menu a.menu__link {
    color: #2b2b2b;
    display: block;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.03em;
    padding: 0.875rem 0;
    text-decoration: none;
    text-transform: uppercase;
    transition: color 0.15s ease;
}

.ps-mainmenu:is(.ps-mainmenu--mobile) .menu a.menu__link:hover,
.ps-mainmenu:is(.ps-mainmenu--mobile) .menu__list > li.current > a.menu__link {
    color: rgb(76, 26, 58);
}

/* Chevron d'ouverture d'un sous-niveau */
.ps-mainmenu:is(.ps-mainmenu--mobile) .menu__toggle-child {
    background: none;
    border: 0;
    color: rgb(76, 26, 58);
    line-height: 0;
    padding: 0.5rem;
}

.ps-mainmenu:is(.ps-mainmenu--mobile) .menu__toggle-child .material-icons {
    font-size: 20px;
}

/* Bas de panneau : langue / devise / contact */
.ps-mainmenu:is(.ps-mainmenu--mobile) .ps-mainmenu__additionnals {
    border-top: 1px solid #eee;
    font-size: 13px;
    padding: 1rem;
}
