@charset "UTF-8";

:root,
[data-bs-theme=light] {
    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #ffc107;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-black: #000;
    --bs-white: #fff;
    --bs-gray: #6c757d;
    --bs-gray-dark: #343a40;
    --bs-gray-100: #f8f9fa;
    --bs-gray-200: #e9ecef;
    --bs-gray-300: #dee2e6;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #6c757d;
    --bs-gray-700: #495057;
    --bs-gray-800: #343a40;
    --bs-gray-900: #212529;
    --bs-primary: #0d6efd;
    --bs-secondary: #6c757d;
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
    --bs-primary-rgb: 13, 110, 253;
    --bs-secondary-rgb: 108, 117, 125;
    --bs-success-rgb: 25, 135, 84;
    --bs-info-rgb: 13, 202, 240;
    --bs-warning-rgb: 255, 193, 7;
    --bs-danger-rgb: 220, 53, 69;
    --bs-light-rgb: 248, 249, 250;
    --bs-dark-rgb: 33, 37, 41;
    --bs-primary-text-emphasis: #052c65;
    --bs-secondary-text-emphasis: #2b2f32;
    --bs-success-text-emphasis: #0a3622;
    --bs-info-text-emphasis: #055160;
    --bs-warning-text-emphasis: #664d03;
    --bs-danger-text-emphasis: #58151c;
    --bs-light-text-emphasis: #495057;
    --bs-dark-text-emphasis: #495057;
    --bs-primary-bg-subtle: #cfe2ff;
    --bs-secondary-bg-subtle: #e2e3e5;
    --bs-success-bg-subtle: #d1e7dd;
    --bs-info-bg-subtle: #cff4fc;
    --bs-warning-bg-subtle: #fff3cd;
    --bs-danger-bg-subtle: #f8d7da;
    --bs-light-bg-subtle: #fcfcfd;
    --bs-dark-bg-subtle: #ced4da;
    --bs-primary-border-subtle: #9ec5fe;
    --bs-secondary-border-subtle: #c4c8cb;
    --bs-success-border-subtle: #a3cfbb;
    --bs-info-border-subtle: #9eeaf9;
    --bs-warning-border-subtle: #ffe69c;
    --bs-danger-border-subtle: #f1aeb5;
    --bs-light-border-subtle: #e9ecef;
    --bs-dark-border-subtle: #adb5bd;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;
    --bs-font-sans-serif: "Barlow", "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
    --bs-body-font-family: var(--bs-font-sans-serif);
    --bs-body-font-size: 1rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.5;
    --bs-body-color: #212529;
    --bs-body-color-rgb: 33, 37, 41;
    --bs-body-bg: #fff;
    --bs-body-bg-rgb: 255, 255, 255;
    --bs-emphasis-color: #000;
    --bs-emphasis-color-rgb: 0, 0, 0;
    --bs-secondary-color: rgba(33, 37, 41, 0.75);
    --bs-secondary-color-rgb: 33, 37, 41;
    --bs-secondary-bg: #e9ecef;
    --bs-secondary-bg-rgb: 233, 236, 239;
    --bs-tertiary-color: rgba(33, 37, 41, 0.5);
    --bs-tertiary-color-rgb: 33, 37, 41;
    --bs-tertiary-bg: #f8f9fa;
    --bs-tertiary-bg-rgb: 248, 249, 250;
    --bs-link-color: #0d6efd;
    --bs-link-color-rgb: 13, 110, 253;
    --bs-link-decoration: underline;
    --bs-link-hover-color: #0a58ca;
    --bs-link-hover-color-rgb: 10, 88, 202;
    --bs-code-color: #d63384;
    --bs-highlight-bg: #fff3cd;
    --bs-border-width: 1px;
    --bs-border-style: solid;
    --bs-border-color: #dee2e6;
    --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
    --bs-border-radius: 0.375rem;
    --bs-border-radius-sm: 0.25rem;
    --bs-border-radius-lg: 0.5rem;
    --bs-border-radius-xl: 0.4rem;
    --bs-border-radius-xxl: 0.5rem;
    --bs-border-radius-2xl: var(--bs-border-radius-xxl);
    --bs-border-radius-pill: 50rem;
    --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
    --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
    --bs-focus-ring-width: 0.25rem;
    --bs-focus-ring-opacity: 0.25;
    --bs-focus-ring-color: rgba(13, 110, 253, 0.25);
    --bs-form-valid-color: #198754;
    --bs-form-valid-border-color: #198754;
    --bs-form-invalid-color: #dc3545;
    --bs-form-invalid-border-color: #dc3545;
}

[data-bs-theme=dark] {
    color-scheme: dark;
    --bs-body-color: #adb5bd;
    --bs-body-color-rgb: 173, 181, 189;
    --bs-body-bg: #212529;
    --bs-body-bg-rgb: 33, 37, 41;
    --bs-emphasis-color: #fff;
    --bs-emphasis-color-rgb: 255, 255, 255;
    --bs-secondary-color: rgba(173, 181, 189, 0.75);
    --bs-secondary-color-rgb: 173, 181, 189;
    --bs-secondary-bg: #343a40;
    --bs-secondary-bg-rgb: 52, 58, 64;
    --bs-tertiary-color: rgba(173, 181, 189, 0.5);
    --bs-tertiary-color-rgb: 173, 181, 189;
    --bs-tertiary-bg: #2b3035;
    --bs-tertiary-bg-rgb: 43, 48, 53;
    --bs-primary-text-emphasis: #6ea8fe;
    --bs-secondary-text-emphasis: #a7acb1;
    --bs-success-text-emphasis: #75b798;
    --bs-info-text-emphasis: #6edff6;
    --bs-warning-text-emphasis: #ffda6a;
    --bs-danger-text-emphasis: #ea868f;
    --bs-light-text-emphasis: #f8f9fa;
    --bs-dark-text-emphasis: #dee2e6;
    --bs-primary-bg-subtle: #031633;
    --bs-secondary-bg-subtle: #161719;
    --bs-success-bg-subtle: #051b11;
    --bs-info-bg-subtle: #032830;
    --bs-warning-bg-subtle: #332701;
    --bs-danger-bg-subtle: #2c0b0e;
    --bs-light-bg-subtle: #343a40;
    --bs-dark-bg-subtle: #1a1d20;
    --bs-primary-border-subtle: #084298;
    --bs-secondary-border-subtle: #41464b;
    --bs-success-border-subtle: #0f5132;
    --bs-info-border-subtle: #087990;
    --bs-warning-border-subtle: #997404;
    --bs-danger-border-subtle: #842029;
    --bs-light-border-subtle: #495057;
    --bs-dark-border-subtle: #343a40;
    --bs-link-color: #6ea8fe;
    --bs-link-hover-color: #8bb9fe;
    --bs-link-color-rgb: 110, 168, 254;
    --bs-link-hover-color-rgb: 139, 185, 254;
    --bs-code-color: #e685b5;
    --bs-border-color: #495057;
    --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
    --bs-form-valid-color: #75b798;
    --bs-form-valid-border-color: #75b798;
    --bs-form-invalid-color: #ea868f;
    --bs-form-invalid-border-color: #ea868f;
}

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

@media (prefers-reduced-motion: no-preference) {
    :root {
        scroll-behavior: smooth;
    }
}

body {
    margin: 0;
    font-family: var(--bs-body-font-family);
    font-size: var(--bs-body-font-size);
    font-weight: var(--bs-body-font-weight);
    line-height: var(--bs-body-line-height);
    color: var(--bs-body-color);
    text-align: var(--bs-body-text-align);
    background-color: var(--bs-body-bg);
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

hr {
    margin: 1rem 0;
    color: inherit;
    border: 0;
    border-top: var(--bs-border-width) solid;
    opacity: 0.25;
}

h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
    margin-top: 0;
    margin-bottom: 0.5rem;
    font-weight: 500;
    line-height: 1.2;
    color: var(--bs-heading-color, inherit);
}

h1, .h1 {
    font-size: calc(1.375rem + 1.5vw);
}

@media (min-width: 1200px) {
    h1, .h1 {
        font-size: 2.5rem;
    }
}

h2, .h2 {
    font-size: calc(1.325rem + 0.9vw);
}

@media (min-width: 1200px) {
    h2, .h2 {
        font-size: 2rem;
    }
}

h3, .h3 {
    font-size: calc(1.3rem + 0.6vw);
}

@media (min-width: 1200px) {
    h3, .h3 {
        font-size: 1.75rem;
    }
}

h4, .h4 {
    font-size: calc(1.275rem + 0.3vw);
}

@media (min-width: 1200px) {
    h4, .h4 {
        font-size: 1.5rem;
    }
}

h5, .h5 {
    font-size: 1.25rem;
}

h6, .h6 {
    font-size: 1rem;
}

p {
    margin-top: 0;
    margin-bottom: 1rem;
}

abbr[title] {
    text-decoration: underline dotted;
    cursor: help;
    text-decoration-skip-ink: none;
}

address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit;
}

ol,
ul {
    padding-left: 2rem;
}

ol,
ul,
dl {
    margin-top: 0;
    margin-bottom: 1rem;
}

    ol ol,
    ul ul,
    ol ul,
    ul ol {
        margin-bottom: 0;
    }

dt {
    font-weight: 700;
}

dd {
    margin-bottom: 0.5rem;
    margin-left: 0;
}

blockquote {
    margin: 0 0 1rem;
}

b,
strong {
    font-weight: bolder;
}

small, .small {
    font-size: 0.875em;
}

mark, .mark {
    padding: 0.1875em;
    background-color: var(--bs-highlight-bg);
}

sub,
sup {
    position: relative;
    font-size: 0.75em;
    line-height: 0;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

a {
    color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));
    text-decoration: underline;
}

    a:hover {
        --bs-link-color-rgb: var(--bs-link-hover-color-rgb);
    }

    a:not([href]):not([class]), a:not([href]):not([class]):hover {
        color: inherit;
        text-decoration: none;
    }

pre,
code,
kbd,
samp {
    font-family: var(--bs-font-monospace);
    font-size: 1em;
}

pre {
    display: block;
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
    font-size: 0.875em;
}

    pre code {
        font-size: inherit;
        color: inherit;
        word-break: normal;
    }

code {
    font-size: 0.875em;
    color: var(--bs-code-color);
    word-wrap: break-word;
}

a > code {
    color: inherit;
}

kbd {
    padding: 0.1875rem 0.375rem;
    font-size: 0.875em;
    color: var(--bs-body-bg);
    background-color: var(--bs-body-color);
    border-radius: 0.25rem;
}

    kbd kbd {
        padding: 0;
        font-size: 1em;
    }

figure {
    margin: 0 0 1rem;
}

img,
svg {
    vertical-align: middle;
}

table {
    caption-side: bottom;
    border-collapse: collapse;
}

caption {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    color: var(--bs-secondary-color);
    text-align: left;
}

th {
    text-align: inherit;
    text-align: -webkit-match-parent;
}

thead,
tbody,
tfoot,
tr,
td,
th {
    border-color: inherit;
    border-style: solid;
    border-width: 0;
}

label {
    display: inline-block;
}

button {
    border-radius: 0;
}

    button:focus:not(:focus-visible) {
        outline: 0;
    }

input,
button,
select,
optgroup,
textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

button,
select {
    text-transform: none;
}

[role=button] {
    cursor: pointer;
}

select {
    word-wrap: normal;
}

    select:disabled {
        opacity: 1;
    }

[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {
    display: none !important;
}

button,
[type=button],
[type=reset],
[type=submit] {
    -webkit-appearance: button;
}

    button:not(:disabled),
    [type=button]:not(:disabled),
    [type=reset]:not(:disabled),
    [type=submit]:not(:disabled) {
        cursor: pointer;
    }

::-moz-focus-inner {
    padding: 0;
    border-style: none;
}

textarea {
    resize: vertical;
}

fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0;
}

legend {
    float: left;
    width: 100%;
    padding: 0;
    margin-bottom: 0.5rem;
    font-size: calc(1.275rem + 0.3vw);
    line-height: inherit;
}

@media (min-width: 1200px) {
    legend {
        font-size: 1.5rem;
    }
}

legend + * {
    clear: left;
}

::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-year-field {
    padding: 0;
}

::-webkit-inner-spin-button {
    height: auto;
}

[type=search] {
    outline-offset: -2px;
    -webkit-appearance: textfield;
}

/* rtl:raw:
[type="tel"],
[type="url"],
[type="email"],
[type="number"] {
  direction: ltr;
}
*/
::-webkit-search-decoration {
    -webkit-appearance: none;
}

::-webkit-color-swatch-wrapper {
    padding: 0;
}

::file-selector-button {
    font: inherit;
    -webkit-appearance: button;
}

output {
    display: inline-block;
}

iframe {
    border: 0;
}

summary {
    display: list-item;
    cursor: pointer;
}

progress {
    vertical-align: baseline;
}

[hidden] {
    display: none !important;
}

.lead {
    font-size: 1.25rem;
    font-weight: 300;
}

.display-1 {
    font-size: calc(1.625rem + 4.5vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-1 {
        font-size: 5rem;
    }
}

.display-4 {
    font-size: calc(1.475rem + 2.7vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-4 {
        font-size: 3.5rem;
    }
}

.display-5 {
    font-size: calc(1.425rem + 2.1vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-5 {
        font-size: 3rem;
    }
}

.display-6 {
    font-size: calc(1.375rem + 1.5vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-6 {
        font-size: 2.5rem;
    }
}

.list-unstyled {
    padding-left: 0;
    list-style: none;
}

.blockquote {
    margin-bottom: 1rem;
    font-size: 1.25rem;
}

    .blockquote > :last-child {
        margin-bottom: 0;
    }

.img-fluid {
    max-width: 100%;
    height: auto;
}

.figure {
    display: inline-block;
}

.container,
.container-fluid {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    width: 100%;
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 576px) {
     .container {
        max-width: 540px;
    }
}

@media (min-width: 768px) {
     .container {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
     .container {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
     .container {
        max-width: 1140px;
    }
}

@media (min-width: 1400px) {
     .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: 1400px;
}

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

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

.col {
    flex: 1 0 0%;
}

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

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

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

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

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

.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%;
}


.gx-0 {
    --bs-gutter-x: 0;
}

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

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


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


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

@media (min-width: 576px) {

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

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

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

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

@media (min-width: 768px) {

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

    .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-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

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

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

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

    .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-12 {
        flex: 0 0 auto;
        width: 100%;
    }

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

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

.table {
    --bs-table-color: var(--bs-body-color);
    --bs-table-bg: transparent;
    --bs-table-border-color: var(--bs-border-color);
    --bs-table-accent-bg: transparent;
    --bs-table-striped-color: var(--bs-body-color);
    --bs-table-striped-bg: rgba(0, 0, 0, 0.05);
    --bs-table-active-color: var(--bs-body-color);
    --bs-table-active-bg: rgba(0, 0, 0, 0.1);
    --bs-table-hover-color: var(--bs-body-color);
    --bs-table-hover-bg: rgba(0, 0, 0, 0.075);
    width: 100%;
    margin-bottom: 1rem;
    color: var(--bs-table-color);
    vertical-align: top;
    border-color: var(--bs-table-border-color);
}

    .table > :not(caption) > * > * {
        padding: 0.5rem 0.5rem;
        background-color: var(--bs-table-bg);
        border-bottom-width: var(--bs-border-width);
        box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);
    }

    .table > tbody {
        vertical-align: inherit;
    }

    .table > thead {
        vertical-align: bottom;
    }

.table-sm > :not(caption) > * > * {
    padding: 0.25rem 0.25rem;
}

.table-bordered > :not(caption) > * {
    border-width: var(--bs-border-width) 0;
}

    .table-bordered > :not(caption) > * > * {
        border-width: 0 var(--bs-border-width);
    }

.table-dark {
    --bs-table-color: #fff;
    --bs-table-bg: #212529;
    --bs-table-border-color: #373b3e;
    --bs-table-striped-bg: #2c3034;
    --bs-table-striped-color: #fff;
    --bs-table-active-bg: #373b3e;
    --bs-table-active-color: #fff;
    --bs-table-hover-bg: #323539;
    --bs-table-hover-color: #fff;
    color: var(--bs-table-color);
    border-color: var(--bs-table-border-color);
}

.table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.form-label {
    margin-bottom: 0.5rem;
    font-weight: bold;
    font-family: Barlow;
}

.form-control {
    display: block;
    width: 100%;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
    background-clip: padding-box;
    border: var(--bs-border-width) solid var(--bs-border-color);
    appearance: none;
    border-radius: var(--bs-border-radius);
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-control {
        transition: none;
    }
}

.form-control[type=file] {
    overflow: hidden;
}

    .form-control[type=file]:not(:disabled):not([readonly]) {
        cursor: pointer;
    }

.form-control:focus {
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.form-control::-webkit-date-and-time-value {
    min-width: 85px;
    height: 1.5em;
    margin: 0;
}

.form-control::-webkit-datetime-edit {
    display: block;
    padding: 0;
}

.form-control::placeholder {
    color: var(--bs-secondary-color);
    opacity: 1;
}

.form-control:disabled {
    background-color: var(--bs-secondary-bg);
    opacity: 1;
}

.form-control::file-selector-button {
    padding: 0.375rem 0.75rem;
    margin: -0.375rem -0.75rem;
    margin-inline-end: 0.75rem;
    color: var(--bs-body-color);
    background-color: var(--bs-tertiary-bg);
    pointer-events: none;
    border-color: inherit;
    border-style: solid;
    border-width: 0;
    border-inline-end-width: var(--bs-border-width);
    border-radius: 0;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-control::file-selector-button {
        transition: none;
    }
}

.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
    background-color: var(--bs-secondary-bg);
}

.form-control-sm {
    min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    border-radius: var(--bs-border-radius-sm);
}

    .form-control-sm::file-selector-button {
        padding: 0.25rem 0.5rem;
        margin: -0.25rem -0.5rem;
        margin-inline-end: 0.5rem;
    }

textarea.form-control {
    min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));
}

textarea.form-control-sm {
    min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
}

.form-select {
    --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    display: block;
    width: 100%;
    padding: 0.375rem 2.25rem 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
    background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px 12px;
    border: var(--bs-border-width) solid var(--bs-border-color);
    border-radius: var(--bs-border-radius);
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    appearance: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-select {
        transition: none;
    }
}

.form-select:focus {
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.form-select[multiple], .form-select[size]:not([size="1"]) {
    padding-right: 0.75rem;
    background-image: none;
}

.form-select:disabled {
    background-color: var(--bs-secondary-bg);
}

.form-select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 var(--bs-body-color);
}

.form-select-sm {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    padding-left: 0.5rem;
    font-size: 0.875rem;
    border-radius: var(--bs-border-radius-sm);
}

[data-bs-theme=dark] .form-select {
    --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23adb5bd' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}

.form-check {
    display: block;
    min-height: 1.5rem;
    padding-left: 1.5em;
    margin-bottom: 0.125rem;
}

    .form-check .form-check-input {
        float: left;
        margin-left: -1.5em;
    }

.form-check-input {
    --bs-form-check-bg: var(--bs-body-bg);
    width: 1em;
    height: 1em;
    margin-top: 0.25em;
    vertical-align: top;
    background-color: var(--bs-form-check-bg);
    background-image: var(--bs-form-check-bg-image);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: var(--bs-border-width) solid var(--bs-border-color);
    appearance: none;
    print-color-adjust: exact;
}

    .form-check-input[type=checkbox] {
        border-radius: 0.25em;
    }

    .form-check-input[type=radio] {
        border-radius: 50%;
    }

    .form-check-input:active {
        filter: brightness(90%);
    }

    .form-check-input:focus {
        border-color: #86b7fe;
        outline: 0;
        box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    }

    .form-check-input:checked {
        background-color: #0d6efd;
        border-color: #0d6efd;
    }

        .form-check-input:checked[type=checkbox] {
            --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
        }

        .form-check-input:checked[type=radio] {
            --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
        }

    .form-check-input[type=checkbox]:indeterminate {
        background-color: #0d6efd;
        border-color: #0d6efd;
        --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
    }

    .form-check-input:disabled {
        pointer-events: none;
        filter: none;
        opacity: 0.5;
    }

        .form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
            cursor: default;
            opacity: 0.5;
        }

.input-group {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    width: 100%;
}

    .input-group > .form-control,
    .input-group > .form-select {
        position: relative;
        flex: 1 1 auto;
        width: 1%;
        min-width: 0;
    }

        .input-group > .form-control:focus,
        .input-group > .form-select:focus {
            z-index: 5;
        }

    .input-group .btn {
        position: relative;
        z-index: 2;
    }

        .input-group .btn:focus {
            z-index: 5;
        }

.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
    margin-left: calc(var(--bs-border-width) * -1);
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

 .form-control.is-valid {
    border-color: var(--bs-form-valid-border-color);
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

     .form-control.is-valid:focus {
        border-color: var(--bs-form-valid-border-color);
        box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
    }

 textarea.form-control.is-valid {
    padding-right: calc(1.5em + 0.75rem);
    background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

 .form-select.is-valid {
    border-color: var(--bs-form-valid-border-color);
}

     .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] {
        --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
        padding-right: 4.125rem;
        background-position: right 0.75rem center, center right 2.25rem;
        background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
    }

     .form-select.is-valid:focus {
        border-color: var(--bs-form-valid-border-color);
        box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
    }

 .form-check-input.is-valid {
    border-color: var(--bs-form-valid-border-color);
}

     .form-check-input.is-valid:checked {
        background-color: var(--bs-form-valid-color);
    }

     .form-check-input.is-valid:focus {
        box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
    }

     .form-check-input.is-valid ~ .form-check-label {
        color: var(--bs-form-valid-color);
    }

 .input-group > .form-control:not(:focus).is-valid,
.input-group > .form-select:not(:focus).is-valid {
    z-index: 3;
}

 .form-control.is-invalid {
    border-color: var(--bs-form-invalid-border-color);
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

     .form-control.is-invalid:focus {
        border-color: var(--bs-form-invalid-border-color);
        box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
    }

 textarea.form-control.is-invalid {
    padding-right: calc(1.5em + 0.75rem);
    background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

 .form-select.is-invalid {
    border-color: var(--bs-form-invalid-border-color);
}

     .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] {
        --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
        padding-right: 4.125rem;
        background-position: right 0.75rem center, center right 2.25rem;
        background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
    }

     .form-select.is-invalid:focus {
        border-color: var(--bs-form-invalid-border-color);
        box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
    }

 .form-check-input.is-invalid {
    border-color: var(--bs-form-invalid-border-color);
}

     .form-check-input.is-invalid:checked {
        background-color: var(--bs-form-invalid-color);
    }

     .form-check-input.is-invalid:focus {
        box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
    }

     .form-check-input.is-invalid ~ .form-check-label {
        color: var(--bs-form-invalid-color);
    }

 .input-group > .form-control:not(:focus).is-invalid,
.input-group > .form-select:not(:focus).is-invalid {
    z-index: 4;
}

.btn {
    --bs-btn-padding-x: 0.75rem;
    --bs-btn-padding-y: 0.375rem;
    --bs-btn-font-family:;
    --bs-btn-font-size: 1rem;
    --bs-btn-font-weight: 400;
    --bs-btn-line-height: 1.5;
    --bs-btn-color: var(--bs-body-color);
    --bs-btn-bg: transparent;
    --bs-btn-border-width: var(--bs-border-width);
    --bs-btn-border-color: transparent;
    --bs-btn-border-radius: var(--bs-border-radius);
    --bs-btn-hover-border-color: transparent;
    --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
    --bs-btn-disabled-opacity: 0.65;
    --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
    display: inline-block;
    padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
    font-family: var(--bs-btn-font-family);
    font-size: var(--bs-btn-font-size);
    font-weight: var(--bs-btn-font-weight);
    line-height: var(--bs-btn-line-height);
    color: var(--bs-btn-color);
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    user-select: none;
    border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
    border-radius: var(--bs-btn-border-radius);
    background-color: var(--bs-btn-bg);
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .btn {
        transition: none;
    }
}

.btn:hover {
    color: var(--bs-btn-hover-color);
    background-color: var(--bs-btn-hover-bg);
    border-color: var(--bs-btn-hover-border-color);
}

.btn:focus-visible {
    color: var(--bs-btn-hover-color);
    background-color: var(--bs-btn-hover-bg);
    border-color: var(--bs-btn-hover-border-color);
    outline: 0;
    box-shadow: var(--bs-btn-focus-box-shadow);
}

 :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {
    color: var(--bs-btn-active-color);
    background-color: var(--bs-btn-active-bg);
    border-color: var(--bs-btn-active-border-color);
}

     :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {
        box-shadow: var(--bs-btn-focus-box-shadow);
    }

.btn:disabled, .btn.disabled, fieldset:disabled .btn {
    color: var(--bs-btn-disabled-color);
    pointer-events: none;
    background-color: var(--bs-btn-disabled-bg);
    border-color: var(--bs-btn-disabled-border-color);
    opacity: var(--bs-btn-disabled-opacity);
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #0d6efd;
    --bs-btn-border-color: #0d6efd;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #0b5ed7;
    --bs-btn-hover-border-color: #0a58ca;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #0a58ca;
    --bs-btn-active-border-color: #0a53be;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #0d6efd;
    --bs-btn-disabled-border-color: #0d6efd;
}

.btn-success {
    --bs-btn-color: #fff;
    --bs-btn-bg: #198754;
    --bs-btn-border-color: #198754;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #157347;
    --bs-btn-hover-border-color: #146c43;
    --bs-btn-focus-shadow-rgb: 60, 153, 110;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #146c43;
    --bs-btn-active-border-color: #13653f;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #198754;
    --bs-btn-disabled-border-color: #198754;
}

.btn-danger {
    --bs-btn-color: #fff;
    --bs-btn-bg: #dc3545;
    --bs-btn-border-color: #dc3545;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #bb2d3b;
    --bs-btn-hover-border-color: #b02a37;
    --bs-btn-focus-shadow-rgb: 225, 83, 97;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #b02a37;
    --bs-btn-active-border-color: #a52834;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #dc3545;
    --bs-btn-disabled-border-color: #dc3545;
}

.btn-light {
    --bs-btn-color: #000;
    --bs-btn-bg: #f8f9fa;
    --bs-btn-border-color: #f8f9fa;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #d3d4d5;
    --bs-btn-hover-border-color: #c6c7c8;
    --bs-btn-focus-shadow-rgb: 211, 212, 213;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #c6c7c8;
    --bs-btn-active-border-color: #babbbc;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #000;
    --bs-btn-disabled-bg: #f8f9fa;
    --bs-btn-disabled-border-color: #f8f9fa;
}

.btn-sm, .btn-group-sm > .btn {
    --bs-btn-padding-y: 0.25rem;
    --bs-btn-padding-x: 0.5rem;
    --bs-btn-font-size: 0.875rem;
    --bs-btn-border-radius: var(--bs-border-radius-sm);
}

.fade {
    transition: opacity 0.15s linear;
}

@media (prefers-reduced-motion: reduce) {
    .fade {
        transition: none;
    }
}

.fade:not(.show) {
    opacity: 0;
}

.collapse:not(.show) {
    display: none;
}

.collapsing {
    height: 0;
    overflow: hidden;
    transition: height 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
    .collapsing {
        transition: none;
    }
}

.collapsing.collapse-horizontal {
    width: 0;
    height: auto;
    transition: width 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
    .collapsing.collapse-horizontal {
        transition: none;
    }
}

.dropup,
.dropend,
.dropdown,
.dropstart,
.dropup-center,
.dropdown-center {
    position: relative;
}

.dropdown-toggle {
    white-space: nowrap;
}

    .dropdown-toggle::after {
        display: inline-block;
        margin-left: 0.255em;
        vertical-align: 0.255em;
        content: "";
        border-top: 0.3em solid;
        border-right: 0.3em solid transparent;
        border-bottom: 0;
        border-left: 0.3em solid transparent;
    }

    .dropdown-toggle:empty::after {
        margin-left: 0;
    }

.dropdown-menu {
    --bs-dropdown-zindex: 1000;
    --bs-dropdown-min-width: 10rem;
    --bs-dropdown-padding-x: 0;
    --bs-dropdown-padding-y: 0.5rem;
    --bs-dropdown-spacer: 0.125rem;
    --bs-dropdown-font-size: 1rem;
    --bs-dropdown-color: var(--bs-body-color);
    --bs-dropdown-bg: var(--bs-body-bg);
    --bs-dropdown-border-color: var(--bs-border-color-translucent);
    --bs-dropdown-border-radius: var(--bs-border-radius);
    --bs-dropdown-border-width: var(--bs-border-width);
    --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
    --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
    --bs-dropdown-divider-margin-y: 0.5rem;
    --bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    --bs-dropdown-link-color: var(--bs-body-color);
    --bs-dropdown-link-hover-color: var(--bs-body-color);
    --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);
    --bs-dropdown-link-active-color: #fff;
    --bs-dropdown-link-active-bg: #0d6efd;
    --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);
    --bs-dropdown-item-padding-x: 1rem;
    --bs-dropdown-item-padding-y: 0.25rem;
    --bs-dropdown-header-color: #6c757d;
    --bs-dropdown-header-padding-x: 1rem;
    --bs-dropdown-header-padding-y: 0.5rem;
    position: absolute;
    z-index: var(--bs-dropdown-zindex);
    display: none;
    min-width: var(--bs-dropdown-min-width);
    padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
    margin: 0;
    font-size: var(--bs-dropdown-font-size);
    color: var(--bs-dropdown-color);
    text-align: left;
    list-style: none;
    background-color: var(--bs-dropdown-bg);
    background-clip: padding-box;
    border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
    border-radius: var(--bs-dropdown-border-radius);
}

.dropup .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0;
    border-right: 0.3em solid transparent;
    border-bottom: 0.3em solid;
    border-left: 0.3em solid transparent;
}

.dropup .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropend .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid transparent;
    border-right: 0;
    border-bottom: 0.3em solid transparent;
    border-left: 0.3em solid;
}

.dropend .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropend .dropdown-toggle::after {
    vertical-align: 0;
}

.dropstart .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
}

.dropstart .dropdown-toggle::after {
    display: none;
}

.dropstart .dropdown-toggle::before {
    display: inline-block;
    margin-right: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid transparent;
    border-right: 0.3em solid;
    border-bottom: 0.3em solid transparent;
}

.dropstart .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropstart .dropdown-toggle::before {
    vertical-align: 0;
}

.dropdown-divider {
    height: 0;
    margin: var(--bs-dropdown-divider-margin-y) 0;
    overflow: hidden;
    border-top: 1px solid var(--bs-dropdown-divider-bg);
    opacity: 1;
}

.dropdown-item {
    display: block;
    width: 100%;
    padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
    clear: both;
    font-weight: 400;
    color: var(--bs-dropdown-link-color);
    text-align: inherit;
    text-decoration: none;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
    border-radius: var(--bs-dropdown-item-border-radius, 0);
}

    .dropdown-item:hover, .dropdown-item:focus {
        color: var(--bs-dropdown-link-hover-color);
        background-color: var(--bs-dropdown-link-hover-bg);
    }

    .dropdown-item.active, .dropdown-item:active {
        color: var(--bs-dropdown-link-active-color);
        text-decoration: none;
        background-color: var(--bs-dropdown-link-active-bg);
    }

    .dropdown-item.disabled, .dropdown-item:disabled {
        color: var(--bs-dropdown-link-disabled-color);
        pointer-events: none;
        background-color: transparent;
    }

.dropdown-menu.show {
    display: block;
}

.dropdown-header {
    display: block;
    padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);
    margin-bottom: 0;
    font-size: 0.875rem;
    color: var(--bs-dropdown-header-color);
    white-space: nowrap;
}

.btn-group {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
}

    .btn-group > .btn {
        position: relative;
        flex: 1 1 auto;
    }

        
        .btn-group > .btn:hover,
        .btn-group > .btn:focus,
        .btn-group > .btn:active,
        .btn-group > .btn.active {
            z-index: 1;
        }

.btn-group {
    border-radius: var(--bs-border-radius);
}

    .btn-group > :not(.btn-check:first-child) + .btn,
    .btn-group > .btn-group:not(:first-child) {
        margin-left: calc(var(--bs-border-width) * -1);
    }

    .btn-group > .btn:not(:last-child):not(.dropdown-toggle),
    .btn-group > .btn-group:not(:last-child) > .btn {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }

    .btn-group > .btn:nth-child(n+3),
    .btn-group > :not(.btn-check) + .btn,
    .btn-group > .btn-group:not(:first-child) > .btn {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }

.nav {
    --bs-nav-link-padding-x: 1rem;
    --bs-nav-link-padding-y: 0.5rem;
    --bs-nav-link-font-weight:;
    --bs-nav-link-color: var(--bs-link-color);
    --bs-nav-link-hover-color: var(--bs-link-hover-color);
    --bs-nav-link-disabled-color: var(--bs-secondary-color);
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}

.card {
    --bs-card-spacer-y: 1rem;
    --bs-card-spacer-x: 1rem;
    --bs-card-title-spacer-y: 0.5rem;
    --bs-card-title-color:;
    --bs-card-subtitle-color:;
    --bs-card-border-width: var(--bs-border-width);
    --bs-card-border-color: var(--bs-border-color-translucent);
    --bs-card-border-radius: var(--bs-border-radius);
    --bs-card-box-shadow:;
    --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
    --bs-card-cap-padding-y: 0.5rem;
    --bs-card-cap-padding-x: 1rem;
    --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);
    --bs-card-cap-color:;
    --bs-card-height:;
    --bs-card-color:;
    --bs-card-bg: var(--bs-body-bg);
    --bs-card-img-overlay-padding: 1rem;
    --bs-card-group-margin: 0.75rem;
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: var(--bs-card-height);
    color: var(--bs-body-color);
    word-wrap: break-word;
    background-color: var(--bs-card-bg);
    background-clip: border-box;
    border: var(--bs-card-border-width) solid var(--bs-card-border-color);
    border-radius: var(--bs-card-border-radius);
}

    .card > hr {
        margin-right: 0;
        margin-left: 0;
    }

.accordion {
    --bs-accordion-color: var(--bs-body-color);
    --bs-accordion-bg: var(--bs-body-bg);
    --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
    --bs-accordion-border-color: var(--cnvs-contrast-300);
    --bs-accordion-border-width: var(--bs-border-width);
    --bs-accordion-border-radius: var(--bs-border-radius);
    --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
    --bs-accordion-btn-padding-x: 1.25rem;
    --bs-accordion-btn-padding-y: 1rem;
    --bs-accordion-btn-color: var(--bs-body-color);
    --bs-accordion-btn-bg: var(--bs-accordion-bg);
    --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    --bs-accordion-btn-icon-width: 1.25rem;
    --bs-accordion-btn-icon-transform: rotate(-180deg);
    --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
    --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23052c65'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    --bs-accordion-btn-focus-border-color: #86b7fe;
    --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    --bs-accordion-body-padding-x: 1.25rem;
    --bs-accordion-body-padding-y: 1rem;
    --bs-accordion-active-color: var(--bs-primary-text-emphasis);
    --bs-accordion-active-bg: var(--bs-primary-bg-subtle);
}

.accordion-header {
    margin-bottom: 0;
}

.pagination {
    --bs-pagination-padding-x: 0.75rem;
    --bs-pagination-padding-y: 0.375rem;
    --bs-pagination-font-size: 1rem;
    --bs-pagination-color: var(--bs-link-color);
    --bs-pagination-bg: var(--bs-body-bg);
    --bs-pagination-border-width: var(--bs-border-width);
    --bs-pagination-border-color: var(--bs-border-color);
    --bs-pagination-border-radius: var(--bs-border-radius);
    --bs-pagination-hover-color: var(--bs-link-hover-color);
    --bs-pagination-hover-bg: var(--bs-tertiary-bg);
    --bs-pagination-hover-border-color: var(--bs-border-color);
    --bs-pagination-focus-color: var(--bs-link-hover-color);
    --bs-pagination-focus-bg: var(--bs-secondary-bg);
    --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    --bs-pagination-active-color: #fff;
    --bs-pagination-active-bg: #0d6efd;
    --bs-pagination-active-border-color: #0d6efd;
    --bs-pagination-disabled-color: var(--bs-secondary-color);
    --bs-pagination-disabled-bg: var(--bs-secondary-bg);
    --bs-pagination-disabled-border-color: var(--bs-border-color);
    display: flex;
    padding-left: 0;
    list-style: none;
}

.page-link {
    position: relative;
    display: block;
    padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);
    font-size: var(--bs-pagination-font-size);
    color: var(--bs-pagination-color);
    text-decoration: none;
    background-color: var(--bs-pagination-bg);
    border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .page-link {
        transition: none;
    }
}

.page-link:hover {
    z-index: 2;
    color: var(--bs-pagination-hover-color);
    background-color: var(--bs-pagination-hover-bg);
    border-color: var(--bs-pagination-hover-border-color);
}

.page-link:focus {
    z-index: 3;
    color: var(--bs-pagination-focus-color);
    background-color: var(--bs-pagination-focus-bg);
    outline: 0;
    box-shadow: var(--bs-pagination-focus-box-shadow);
}

.page-link.active, .active > .page-link {
    z-index: 3;
    color: var(--bs-pagination-active-color);
    background-color: var(--bs-pagination-active-bg);
    border-color: var(--bs-pagination-active-border-color);
}

.page-link.disabled, .disabled > .page-link {
    color: var(--bs-pagination-disabled-color);
    pointer-events: none;
    background-color: var(--bs-pagination-disabled-bg);
    border-color: var(--bs-pagination-disabled-border-color);
}

.page-item:not(:first-child) .page-link {
    margin-left: calc(var(--bs-border-width) * -1);
}

.page-item:first-child .page-link {
    border-top-left-radius: var(--bs-pagination-border-radius);
    border-bottom-left-radius: var(--bs-pagination-border-radius);
}

.page-item:last-child .page-link {
    border-top-right-radius: var(--bs-pagination-border-radius);
    border-bottom-right-radius: var(--bs-pagination-border-radius);
}

.badge {
    --bs-badge-padding-x: 0.65em;
    --bs-badge-padding-y: 0.35em;
    --bs-badge-font-size: 0.75em;
    --bs-badge-font-weight: 700;
    --bs-badge-color: #fff;
    --bs-badge-border-radius: var(--bs-border-radius);
    display: inline-block;
    padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
    font-size: var(--bs-badge-font-size);
    font-weight: var(--bs-badge-font-weight);
    line-height: 1;
    color: var(--bs-badge-color);
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: var(--bs-badge-border-radius);
}

    .badge:empty {
        display: none;
    }

.btn .badge {
    position: relative;
    top: -1px;
}

.alert {
    --bs-alert-bg: transparent;
    --bs-alert-padding-x: 1rem;
    --bs-alert-padding-y: 1rem;
    --bs-alert-margin-bottom: 1rem;
    --bs-alert-color: inherit;
    --bs-alert-border-color: transparent;
    --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
    --bs-alert-border-radius: var(--bs-border-radius);
    --bs-alert-link-color: inherit;
    position: relative;
    padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
    margin-bottom: var(--bs-alert-margin-bottom);
    color: var(--bs-alert-color);
    background-color: var(--bs-alert-bg);
    border: var(--bs-alert-border);
    border-radius: var(--bs-alert-border-radius);
}

.alert-success {
    --bs-alert-color: var(--bs-success-text-emphasis);
    --bs-alert-bg: var(--bs-success-bg-subtle);
    --bs-alert-border-color: var(--bs-success-border-subtle);
    --bs-alert-link-color: var(--bs-success-text-emphasis);
}

.alert-warning {
    --bs-alert-color: var(--bs-warning-text-emphasis);
    --bs-alert-bg: var(--bs-warning-bg-subtle);
    --bs-alert-border-color: var(--bs-warning-border-subtle);
    --bs-alert-link-color: var(--bs-warning-text-emphasis);
}

.alert-danger {
    --bs-alert-color: var(--bs-danger-text-emphasis);
    --bs-alert-bg: var(--bs-danger-bg-subtle);
    --bs-alert-border-color: var(--bs-danger-border-subtle);
    --bs-alert-link-color: var(--bs-danger-text-emphasis);
}

@keyframes progress-bar-stripes {
    0% {
        background-position-x: 1rem;
    }
}

.progress {
    --bs-progress-height: 1rem;
    --bs-progress-font-size: 0.75rem;
    --bs-progress-bg: var(--bs-secondary-bg);
    --bs-progress-border-radius: var(--bs-border-radius);
    --bs-progress-box-shadow: var(--bs-box-shadow-inset);
    --bs-progress-bar-color: #fff;
    --bs-progress-bar-bg: #0d6efd;
    --bs-progress-bar-transition: width 0.6s ease;
    display: flex;
    height: var(--bs-progress-height);
    overflow: hidden;
    font-size: var(--bs-progress-font-size);
    background-color: var(--bs-progress-bg);
    border-radius: var(--bs-progress-border-radius);
}

.progress-bar {
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    color: var(--bs-progress-bar-color);
    text-align: center;
    white-space: nowrap;
    background-color: var(--bs-progress-bar-bg);
    transition: var(--bs-progress-bar-transition);
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar {
        transition: none;
    }
}

.progress-bar-striped {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-size: var(--bs-progress-height) var(--bs-progress-height);
}

.progress-bar-animated {
    animation: 1s linear infinite progress-bar-stripes;
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar-animated {
        animation: none;
    }
}

.btn-close {
    --bs-btn-close-color: #000;
    --bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");
    --bs-btn-close-opacity: 0.5;
    --bs-btn-close-hover-opacity: 0.75;
    --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    --bs-btn-close-focus-opacity: 1;
    --bs-btn-close-disabled-opacity: 0.25;
    --bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);
    box-sizing: content-box;
    width: 1em;
    height: 1em;
    padding: 0.25em 0.25em;
    color: var(--bs-btn-close-color);
    background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;
    border: 0;
    border-radius: 0.375rem;
    opacity: var(--bs-btn-close-opacity);
}

    .btn-close:hover {
        color: var(--bs-btn-close-color);
        text-decoration: none;
        opacity: var(--bs-btn-close-hover-opacity);
    }

    .btn-close:focus {
        outline: 0;
        box-shadow: var(--bs-btn-close-focus-shadow);
        opacity: var(--bs-btn-close-focus-opacity);
    }

    .btn-close:disabled, .btn-close.disabled {
        pointer-events: none;
        user-select: none;
        opacity: var(--bs-btn-close-disabled-opacity);
    }

.btn-close-white {
    filter: var(--bs-btn-close-white-filter);
}

[data-bs-theme=dark] .btn-close {
    filter: var(--bs-btn-close-white-filter);
}

.toast {
    --bs-toast-zindex: 1090;
    --bs-toast-padding-x: 0.75rem;
    --bs-toast-padding-y: 0.5rem;
    --bs-toast-spacing: 1.5rem;
    --bs-toast-max-width: 350px;
    --bs-toast-font-size: 0.875rem;
    --bs-toast-color:;
    --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);
    --bs-toast-border-width: var(--bs-border-width);
    --bs-toast-border-color: var(--bs-border-color-translucent);
    --bs-toast-border-radius: var(--bs-border-radius);
    --bs-toast-box-shadow: var(--bs-box-shadow);
    --bs-toast-header-color: var(--bs-secondary-color);
    --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);
    --bs-toast-header-border-color: var(--bs-border-color-translucent);
    width: var(--bs-toast-max-width);
    max-width: 100%;
    font-size: var(--bs-toast-font-size);
    color: var(--bs-toast-color);
    pointer-events: auto;
    background-color: var(--bs-toast-bg);
    background-clip: padding-box;
    border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);
    box-shadow: var(--bs-toast-box-shadow);
    border-radius: var(--bs-toast-border-radius);
}

    .toast.showing {
        opacity: 0;
    }

    .toast:not(.show) {
        display: none;
    }

.toast-body {
    padding: var(--bs-toast-padding-x);
    word-wrap: break-word;
}

.modal {
    --bs-modal-zindex: 1055;
    --bs-modal-width: 500px;
    --bs-modal-padding: 1rem;
    --bs-modal-margin: 0.5rem;
    --bs-modal-color:;
    --bs-modal-bg: var(--bs-body-bg);
    --bs-modal-border-color: var(--bs-border-color-translucent);
    --bs-modal-border-width: var(--bs-border-width);
    --bs-modal-border-radius: var(--bs-border-radius-lg);
    --bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));
    --bs-modal-header-padding-x: 1rem;
    --bs-modal-header-padding-y: 1rem;
    --bs-modal-header-padding: 1rem 1rem;
    --bs-modal-header-border-color: var(--bs-border-color);
    --bs-modal-header-border-width: var(--bs-border-width);
    --bs-modal-title-line-height: 1.5;
    --bs-modal-footer-gap: 0.5rem;
    --bs-modal-footer-bg:;
    --bs-modal-footer-border-color: var(--bs-border-color);
    --bs-modal-footer-border-width: var(--bs-border-width);
    position: fixed;
    top: 0;
    left: 0;
    z-index: var(--bs-modal-zindex);
    display: none;
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    outline: 0;
}

.modal-dialog {
    position: relative;
    width: auto;
    margin: var(--bs-modal-margin);
    pointer-events: none;
}

.modal.fade .modal-dialog {
    transition: transform 0.3s ease-out;
    transform: translate(0, -50px);
}

@media (prefers-reduced-motion: reduce) {
    .modal.fade .modal-dialog {
        transition: none;
    }
}

.modal.show .modal-dialog {
    transform: none;
}

.modal.modal-static .modal-dialog {
    transform: scale(1.02);
}

.modal-dialog-scrollable {
    height: calc(100% - var(--bs-modal-margin) * 2);
}

    .modal-dialog-scrollable .modal-content {
        max-height: 100%;
        overflow: hidden;
    }

    .modal-dialog-scrollable .modal-body {
        overflow-y: auto;
    }

.modal-dialog-centered {
    display: flex;
    align-items: center;
    min-height: calc(100% - var(--bs-modal-margin) * 2);
}

.modal-content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    color: var(--bs-modal-color);
    pointer-events: auto;
    background-color: var(--bs-modal-bg);
    background-clip: padding-box;
    border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);
    border-radius: var(--bs-modal-border-radius);
    outline: 0;
}

.modal-backdrop {
    --bs-backdrop-zindex: 1050;
    --bs-backdrop-bg: #000;
    --bs-backdrop-opacity: 0.5;
    position: fixed;
    top: 0;
    left: 0;
    z-index: var(--bs-backdrop-zindex);
    width: 100vw;
    height: 100vh;
    background-color: var(--bs-backdrop-bg);
}

    .modal-backdrop.fade {
        opacity: 0;
    }

    .modal-backdrop.show {
        opacity: var(--bs-backdrop-opacity);
    }

.modal-header {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: space-between;
    padding: var(--bs-modal-header-padding);
    border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
    border-top-left-radius: var(--bs-modal-inner-border-radius);
    border-top-right-radius: var(--bs-modal-inner-border-radius);
}

    .modal-header .btn-close {
        padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);
        margin: calc(-0.5 * var(--bs-modal-header-padding-y)) calc(-0.5 * var(--bs-modal-header-padding-x)) calc(-0.5 * var(--bs-modal-header-padding-y)) auto;
    }

.modal-title {
    margin-bottom: 0;
    line-height: var(--bs-modal-title-line-height);
}

.modal-body {
    position: relative;
    flex: 1 1 auto;
    padding: var(--bs-modal-padding);
}

.modal-footer {
    display: flex;
    flex-shrink: 0;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);
    background-color: var(--bs-modal-footer-bg);
    border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);
    border-bottom-right-radius: var(--bs-modal-inner-border-radius);
    border-bottom-left-radius: var(--bs-modal-inner-border-radius);
}

    .modal-footer > * {
        margin: calc(var(--bs-modal-footer-gap) * 0.5);
    }

@media (min-width: 576px) {
    .modal {
        --bs-modal-margin: 1.75rem;
        --bs-modal-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    }

    .modal-dialog {
        max-width: var(--bs-modal-width);
        margin-right: auto;
        margin-left: auto;
    }

    .modal-sm {
        --bs-modal-width: 300px;
    }
}

@media (min-width: 992px) {
    .modal-lg,
    .modal-xl {
        --bs-modal-width: 800px;
    }
}

@media (min-width: 1200px) {
    .modal-xl {
        --bs-modal-width: 1140px;
    }
}

.modal-fullscreen {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
}

    .modal-fullscreen .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0;
    }

    .modal-fullscreen .modal-header,
    .modal-fullscreen .modal-footer {
        border-radius: 0;
    }

    .modal-fullscreen .modal-body {
        overflow-y: auto;
    }

@media (max-width: 575.98px) {
    .modal-fullscreen-sm-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

        .modal-fullscreen-sm-down .modal-content {
            height: 100%;
            border: 0;
            border-radius: 0;
        }

        .modal-fullscreen-sm-down .modal-header,
        .modal-fullscreen-sm-down .modal-footer {
            border-radius: 0;
        }

        .modal-fullscreen-sm-down .modal-body {
            overflow-y: auto;
        }
}

@media (max-width: 767.98px) {
    .modal-fullscreen-md-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

        .modal-fullscreen-md-down .modal-content {
            height: 100%;
            border: 0;
            border-radius: 0;
        }

        .modal-fullscreen-md-down .modal-header,
        .modal-fullscreen-md-down .modal-footer {
            border-radius: 0;
        }

        .modal-fullscreen-md-down .modal-body {
            overflow-y: auto;
        }
}

@media (max-width: 991.98px) {
    .modal-fullscreen-lg-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

        .modal-fullscreen-lg-down .modal-content {
            height: 100%;
            border: 0;
            border-radius: 0;
        }

        .modal-fullscreen-lg-down .modal-header,
        .modal-fullscreen-lg-down .modal-footer {
            border-radius: 0;
        }

        .modal-fullscreen-lg-down .modal-body {
            overflow-y: auto;
        }
}

@media (max-width: 1199.98px) {
    .modal-fullscreen-xl-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

        .modal-fullscreen-xl-down .modal-content {
            height: 100%;
            border: 0;
            border-radius: 0;
        }

        .modal-fullscreen-xl-down .modal-header,
        .modal-fullscreen-xl-down .modal-footer {
            border-radius: 0;
        }

        .modal-fullscreen-xl-down .modal-body {
            overflow-y: auto;
        }
}

@media (max-width: 1399.98px) {
    .modal-fullscreen-xxl-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

        .modal-fullscreen-xxl-down .modal-content {
            height: 100%;
            border: 0;
            border-radius: 0;
        }

        .modal-fullscreen-xxl-down .modal-header,
        .modal-fullscreen-xxl-down .modal-footer {
            border-radius: 0;
        }

        .modal-fullscreen-xxl-down .modal-body {
            overflow-y: auto;
        }
}

.tooltip {
    --bs-tooltip-zindex: 1080;
    --bs-tooltip-max-width: 200px;
    --bs-tooltip-padding-x: 0.5rem;
    --bs-tooltip-padding-y: 0.25rem;
    --bs-tooltip-margin:;
    --bs-tooltip-font-size: 0.875rem;
    --bs-tooltip-color: var(--bs-body-bg);
    --bs-tooltip-bg: var(--bs-emphasis-color);
    --bs-tooltip-border-radius: var(--bs-border-radius);
    --bs-tooltip-opacity: 0.9;
    --bs-tooltip-arrow-width: 0.8rem;
    --bs-tooltip-arrow-height: 0.4rem;
    z-index: var(--bs-tooltip-zindex);
    display: block;
    margin: var(--bs-tooltip-margin);
    font-family: var(--bs-font-sans-serif);
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-break: normal;
    white-space: normal;
    word-spacing: normal;
    line-break: auto;
    font-size: var(--bs-tooltip-font-size);
    word-wrap: break-word;
    opacity: 0;
}

    .tooltip.show {
        opacity: var(--bs-tooltip-opacity);
    }

    .tooltip .tooltip-arrow {
        display: block;
        width: var(--bs-tooltip-arrow-width);
        height: var(--bs-tooltip-arrow-height);
    }

        .tooltip .tooltip-arrow::before {
            position: absolute;
            content: "";
            border-color: transparent;
            border-style: solid;
        }

.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
    bottom: calc(-1 * var(--bs-tooltip-arrow-height));
}

    .bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
        top: -1px;
        border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
        border-top-color: var(--bs-tooltip-bg);
    }

/* rtl:begin:ignore */
.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
    left: calc(-1 * var(--bs-tooltip-arrow-height));
    width: var(--bs-tooltip-arrow-height);
    height: var(--bs-tooltip-arrow-width);
}

    .bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {
        right: -1px;
        border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
        border-right-color: var(--bs-tooltip-bg);
    }

/* rtl:end:ignore */
.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
    top: calc(-1 * var(--bs-tooltip-arrow-height));
}

    .bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
        bottom: -1px;
        border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
        border-bottom-color: var(--bs-tooltip-bg);
    }

/* rtl:begin:ignore */
.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
    right: calc(-1 * var(--bs-tooltip-arrow-height));
    width: var(--bs-tooltip-arrow-height);
    height: var(--bs-tooltip-arrow-width);
}

    .bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {
        left: -1px;
        border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
        border-left-color: var(--bs-tooltip-bg);
    }

/* rtl:end:ignore */
.tooltip-inner {
    max-width: var(--bs-tooltip-max-width);
    padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);
    color: var(--bs-tooltip-color);
    text-align: center;
    background-color: var(--bs-tooltip-bg);
    border-radius: var(--bs-tooltip-border-radius);
}

.popover {
    --bs-popover-zindex: 1070;
    --bs-popover-max-width: 276px;
    --bs-popover-font-size: 0.875rem;
    --bs-popover-bg: var(--bs-body-bg);
    --bs-popover-border-width: var(--bs-border-width);
    --bs-popover-border-color: var(--bs-border-color-translucent);
    --bs-popover-border-radius: var(--bs-border-radius-lg);
    --bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));
    --bs-popover-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    --bs-popover-header-padding-x: 1rem;
    --bs-popover-header-padding-y: 0.5rem;
    --bs-popover-header-font-size: 1rem;
    --bs-popover-header-color:;
    --bs-popover-header-bg: var(--bs-secondary-bg);
    --bs-popover-body-padding-x: 1rem;
    --bs-popover-body-padding-y: 1rem;
    --bs-popover-body-color: var(--bs-body-color);
    --bs-popover-arrow-width: 1rem;
    --bs-popover-arrow-height: 0.5rem;
    --bs-popover-arrow-border: var(--bs-popover-border-color);
    z-index: var(--bs-popover-zindex);
    display: block;
    max-width: var(--bs-popover-max-width);
    font-family: var(--bs-font-sans-serif);
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-break: normal;
    white-space: normal;
    word-spacing: normal;
    line-break: auto;
    font-size: var(--bs-popover-font-size);
    word-wrap: break-word;
    background-color: var(--bs-popover-bg);
    background-clip: padding-box;
    border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
    border-radius: var(--bs-popover-border-radius);
}

    .popover .popover-arrow {
        display: block;
        width: var(--bs-popover-arrow-width);
        height: var(--bs-popover-arrow-height);
    }

        .popover .popover-arrow::before, .popover .popover-arrow::after {
            position: absolute;
            display: block;
            content: "";
            border-color: transparent;
            border-style: solid;
            border-width: 0;
        }

.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {
    bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}

    .bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
        border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
    }

    .bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {
        bottom: 0;
        border-top-color: var(--bs-popover-arrow-border);
    }

    .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
        bottom: var(--bs-popover-border-width);
        border-top-color: var(--bs-popover-bg);
    }

/* rtl:begin:ignore */
.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {
    left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
    width: var(--bs-popover-arrow-height);
    height: var(--bs-popover-arrow-width);
}

    .bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
        border-width: calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
    }

    .bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {
        left: 0;
        border-right-color: var(--bs-popover-arrow-border);
    }

    .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
        left: var(--bs-popover-border-width);
        border-right-color: var(--bs-popover-bg);
    }

/* rtl:end:ignore */
.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {
    top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}

    .bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
        border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
    }

    .bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {
        top: 0;
        border-bottom-color: var(--bs-popover-arrow-border);
    }

    .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
        top: var(--bs-popover-border-width);
        border-bottom-color: var(--bs-popover-bg);
    }

.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: var(--bs-popover-arrow-width);
    margin-left: calc(-0.5 * var(--bs-popover-arrow-width));
    content: "";
    border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg);
}

/* rtl:begin:ignore */
.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {
    right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
    width: var(--bs-popover-arrow-height);
    height: var(--bs-popover-arrow-width);
}

    .bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
        border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
    }

    .bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {
        right: 0;
        border-left-color: var(--bs-popover-arrow-border);
    }

    .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
        right: var(--bs-popover-border-width);
        border-left-color: var(--bs-popover-bg);
    }

/* rtl:end:ignore */
.popover-header {
    padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);
    margin-bottom: 0;
    font-size: var(--bs-popover-header-font-size);
    color: var(--bs-popover-header-color);
    background-color: var(--bs-popover-header-bg);
    border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
    border-top-left-radius: var(--bs-popover-inner-border-radius);
    border-top-right-radius: var(--bs-popover-inner-border-radius);
}

    .popover-header:empty {
        display: none;
    }

.popover-body {
    padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);
    color: var(--bs-popover-body-color);
}

.carousel {
    position: relative;
}

    .carousel.pointer-event {
        touch-action: pan-y;
    }

.carousel-inner {
    position: relative;
    width: 100%;
    overflow: hidden;
}

    .carousel-inner::after {
        display: block;
        clear: both;
        content: "";
    }

.carousel-item {
    position: relative;
    display: none;
    float: left;
    width: 100%;
    margin-right: -100%;
    backface-visibility: hidden;
    transition: transform 0.6s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-item {
        transition: none;
    }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
    display: block;
}

    .carousel-item-next:not(.carousel-item-start),
    .active.carousel-item-end {
        transform: translateX(100%);
    }

    .carousel-item-prev:not(.carousel-item-end),
    .active.carousel-item-start {
        transform: translateX(-100%);
    }

.carousel-fade .carousel-item {
    opacity: 0;
    transition-property: opacity;
    transform: none;
}

    .carousel-fade .carousel-item.active,
    .carousel-fade .carousel-item-next.carousel-item-start,
    .carousel-fade .carousel-item-prev.carousel-item-end {
        z-index: 1;
        opacity: 1;
    }

.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
    z-index: 0;
    opacity: 0;
    transition: opacity 0s 0.6s;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-fade .active.carousel-item-start,
    .carousel-fade .active.carousel-item-end {
        transition: none;
    }
}

.carousel-control-prev,
.carousel-control-next {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 15%;
    padding: 0;
    color: #fff;
    text-align: center;
    background: none;
    border: 0;
    opacity: 0.5;
    transition: opacity 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-control-prev,
    .carousel-control-next {
        transition: none;
    }
}

.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
    color: #fff;
    text-decoration: none;
    outline: 0;
    opacity: 0.9;
}

.carousel-control-prev {
    left: 0;
}

.carousel-control-next {
    right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 100% 100%;
}

/* rtl:options: {
  "autoRename": true,
  "stringMap":[ {
    "name"    : "prev-next",
    "search"  : "prev",
    "replace" : "next"
  } ]
} */
.carousel-control-prev-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.carousel-indicators {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    display: flex;
    justify-content: center;
    padding: 0;
    margin-right: 15%;
    margin-bottom: 1rem;
    margin-left: 15%;
}

    .carousel-indicators [data-bs-target] {
        box-sizing: content-box;
        flex: 0 1 auto;
        width: 30px;
        height: 3px;
        padding: 0;
        margin-right: 3px;
        margin-left: 3px;
        text-indent: -999px;
        cursor: pointer;
        background-color: #fff;
        background-clip: padding-box;
        border: 0;
        border-top: 10px solid transparent;
        border-bottom: 10px solid transparent;
        opacity: 0.5;
        transition: opacity 0.6s ease;
    }

@media (prefers-reduced-motion: reduce) {
    .carousel-indicators [data-bs-target] {
        transition: none;
    }
}

.carousel-indicators .active {
    opacity: 1;
}

.carousel-caption {
    position: absolute;
    right: 15%;
    bottom: 1.25rem;
    left: 15%;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
    color: #fff;
    text-align: center;
}

.carousel-dark .carousel-control-prev-icon,
.carousel-dark .carousel-control-next-icon {
    filter: invert(1) grayscale(100);
}

.carousel-dark .carousel-indicators [data-bs-target] {
    background-color: #000;
}

.carousel-dark .carousel-caption {
    color: #000;
}

[data-bs-theme=dark] .carousel .carousel-control-prev-icon,
[data-bs-theme=dark] .carousel .carousel-control-next-icon, [data-bs-theme=dark].carousel .carousel-control-prev-icon,
[data-bs-theme=dark].carousel .carousel-control-next-icon {
    filter: invert(1) grayscale(100);
}

[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target], [data-bs-theme=dark].carousel .carousel-indicators [data-bs-target] {
    background-color: #000;
}

[data-bs-theme=dark] .carousel .carousel-caption, [data-bs-theme=dark].carousel .carousel-caption {
    color: #000;
}

.spinner-grow {
    display: inline-block;
    width: var(--bs-spinner-width);
    height: var(--bs-spinner-height);
    vertical-align: var(--bs-spinner-vertical-align);
    border-radius: 50%;
    animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);
}

@keyframes spinner-border {
    to {
        transform: rotate(360deg) /* rtl:ignore */;
    }
}

@keyframes spinner-grow {
    0% {
        transform: scale(0);
    }

    50% {
        opacity: 1;
        transform: none;
    }
}

.spinner-grow {
    --bs-spinner-width: 2rem;
    --bs-spinner-height: 2rem;
    --bs-spinner-vertical-align: -0.125em;
    --bs-spinner-animation-speed: 0.75s;
    --bs-spinner-animation-name: spinner-grow;
    background-color: currentcolor;
    opacity: 0;
}

.spinner-grow-sm {
    --bs-spinner-width: 1rem;
    --bs-spinner-height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
    
    .spinner-grow {
        --bs-spinner-animation-speed: 1.5s;
    }
}

.offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {
    --bs-offcanvas-zindex: 1045;
    --bs-offcanvas-width: 400px;
    --bs-offcanvas-height: 30vh;
    --bs-offcanvas-padding-x: 1rem;
    --bs-offcanvas-padding-y: 1rem;
    --bs-offcanvas-color: var(--bs-body-color);
    --bs-offcanvas-bg: var(--bs-body-bg);
    --bs-offcanvas-border-width: var(--bs-border-width);
    --bs-offcanvas-border-color: var(--bs-border-color-translucent);
    --bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    --bs-offcanvas-transition: transform 0.3s ease-in-out;
    --bs-offcanvas-title-line-height: 1.5;
}

@media (max-width: 575.98px) {
    .offcanvas-sm {
        position: fixed;
        bottom: 0;
        z-index: var(--bs-offcanvas-zindex);
        display: flex;
        flex-direction: column;
        max-width: 100%;
        color: var(--bs-offcanvas-color);
        visibility: hidden;
        background-color: var(--bs-offcanvas-bg);
        background-clip: padding-box;
        outline: 0;
        transition: var(--bs-offcanvas-transition);
    }
}

@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {
    .offcanvas-sm {
        transition: none;
    }
}

@media (max-width: 575.98px) {
    .offcanvas-sm.offcanvas-start {
        top: 0;
        left: 0;
        width: var(--bs-offcanvas-width);
        border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateX(-100%);
    }
}

@media (max-width: 575.98px) {
    .offcanvas-sm.offcanvas-end {
        top: 0;
        right: 0;
        width: var(--bs-offcanvas-width);
        border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateX(100%);
    }
}

@media (max-width: 575.98px) {
    .offcanvas-sm.offcanvas-top {
        top: 0;
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateY(-100%);
    }
}

@media (max-width: 575.98px) {
    .offcanvas-sm.offcanvas-bottom {
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateY(100%);
    }
}

@media (max-width: 575.98px) {
    .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {
        transform: none;
    }
}

@media (max-width: 575.98px) {
    .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {
        visibility: visible;
    }
}

@media (min-width: 576px) {
    .offcanvas-sm {
        --bs-offcanvas-height: auto;
        --bs-offcanvas-border-width: 0;
        background-color: transparent !important;
    }

        .offcanvas-sm .offcanvas-header {
            display: none;
        }

        .offcanvas-sm .offcanvas-body {
            display: flex;
            flex-grow: 0;
            padding: 0;
            overflow-y: visible;
            background-color: transparent !important;
        }
}

@media (max-width: 767.98px) {
    .offcanvas-md {
        position: fixed;
        bottom: 0;
        z-index: var(--bs-offcanvas-zindex);
        display: flex;
        flex-direction: column;
        max-width: 100%;
        color: var(--bs-offcanvas-color);
        visibility: hidden;
        background-color: var(--bs-offcanvas-bg);
        background-clip: padding-box;
        outline: 0;
        transition: var(--bs-offcanvas-transition);
    }
}

@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {
    .offcanvas-md {
        transition: none;
    }
}

@media (max-width: 767.98px) {
    .offcanvas-md.offcanvas-start {
        top: 0;
        left: 0;
        width: var(--bs-offcanvas-width);
        border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateX(-100%);
    }
}

@media (max-width: 767.98px) {
    .offcanvas-md.offcanvas-end {
        top: 0;
        right: 0;
        width: var(--bs-offcanvas-width);
        border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateX(100%);
    }
}

@media (max-width: 767.98px) {
    .offcanvas-md.offcanvas-top {
        top: 0;
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateY(-100%);
    }
}

@media (max-width: 767.98px) {
    .offcanvas-md.offcanvas-bottom {
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateY(100%);
    }
}

@media (max-width: 767.98px) {
    .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {
        transform: none;
    }
}

@media (max-width: 767.98px) {
    .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {
        visibility: visible;
    }
}

@media (min-width: 768px) {
    .offcanvas-md {
        --bs-offcanvas-height: auto;
        --bs-offcanvas-border-width: 0;
        background-color: transparent !important;
    }

        .offcanvas-md .offcanvas-header {
            display: none;
        }

        .offcanvas-md .offcanvas-body {
            display: flex;
            flex-grow: 0;
            padding: 0;
            overflow-y: visible;
            background-color: transparent !important;
        }
}

@media (max-width: 991.98px) {
    .offcanvas-lg {
        position: fixed;
        bottom: 0;
        z-index: var(--bs-offcanvas-zindex);
        display: flex;
        flex-direction: column;
        max-width: 100%;
        color: var(--bs-offcanvas-color);
        visibility: hidden;
        background-color: var(--bs-offcanvas-bg);
        background-clip: padding-box;
        outline: 0;
        transition: var(--bs-offcanvas-transition);
    }
}

@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {
    .offcanvas-lg {
        transition: none;
    }
}

@media (max-width: 991.98px) {
    .offcanvas-lg.offcanvas-start {
        top: 0;
        left: 0;
        width: var(--bs-offcanvas-width);
        border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateX(-100%);
    }
}

@media (max-width: 991.98px) {
    .offcanvas-lg.offcanvas-end {
        top: 0;
        right: 0;
        width: var(--bs-offcanvas-width);
        border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateX(100%);
    }
}

@media (max-width: 991.98px) {
    .offcanvas-lg.offcanvas-top {
        top: 0;
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateY(-100%);
    }
}

@media (max-width: 991.98px) {
    .offcanvas-lg.offcanvas-bottom {
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateY(100%);
    }
}

@media (max-width: 991.98px) {
    .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {
        transform: none;
    }
}

@media (max-width: 991.98px) {
    .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {
        visibility: visible;
    }
}

@media (min-width: 992px) {
    .offcanvas-lg {
        --bs-offcanvas-height: auto;
        --bs-offcanvas-border-width: 0;
        background-color: transparent !important;
    }

        .offcanvas-lg .offcanvas-header {
            display: none;
        }

        .offcanvas-lg .offcanvas-body {
            display: flex;
            flex-grow: 0;
            padding: 0;
            overflow-y: visible;
            background-color: transparent !important;
        }
}

@media (max-width: 1199.98px) {
    .offcanvas-xl {
        position: fixed;
        bottom: 0;
        z-index: var(--bs-offcanvas-zindex);
        display: flex;
        flex-direction: column;
        max-width: 100%;
        color: var(--bs-offcanvas-color);
        visibility: hidden;
        background-color: var(--bs-offcanvas-bg);
        background-clip: padding-box;
        outline: 0;
        transition: var(--bs-offcanvas-transition);
    }
}

@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {
    .offcanvas-xl {
        transition: none;
    }
}

@media (max-width: 1199.98px) {
    .offcanvas-xl.offcanvas-start {
        top: 0;
        left: 0;
        width: var(--bs-offcanvas-width);
        border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateX(-100%);
    }
}

@media (max-width: 1199.98px) {
    .offcanvas-xl.offcanvas-end {
        top: 0;
        right: 0;
        width: var(--bs-offcanvas-width);
        border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateX(100%);
    }
}

@media (max-width: 1199.98px) {
    .offcanvas-xl.offcanvas-top {
        top: 0;
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateY(-100%);
    }
}

@media (max-width: 1199.98px) {
    .offcanvas-xl.offcanvas-bottom {
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateY(100%);
    }
}

@media (max-width: 1199.98px) {
    .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {
        transform: none;
    }
}

@media (max-width: 1199.98px) {
    .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {
        visibility: visible;
    }
}

@media (min-width: 1200px) {
    .offcanvas-xl {
        --bs-offcanvas-height: auto;
        --bs-offcanvas-border-width: 0;
        background-color: transparent !important;
    }

        .offcanvas-xl .offcanvas-header {
            display: none;
        }

        .offcanvas-xl .offcanvas-body {
            display: flex;
            flex-grow: 0;
            padding: 0;
            overflow-y: visible;
            background-color: transparent !important;
        }
}

@media (max-width: 1399.98px) {
    .offcanvas-xxl {
        position: fixed;
        bottom: 0;
        z-index: var(--bs-offcanvas-zindex);
        display: flex;
        flex-direction: column;
        max-width: 100%;
        color: var(--bs-offcanvas-color);
        visibility: hidden;
        background-color: var(--bs-offcanvas-bg);
        background-clip: padding-box;
        outline: 0;
        transition: var(--bs-offcanvas-transition);
    }
}

@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {
    .offcanvas-xxl {
        transition: none;
    }
}

@media (max-width: 1399.98px) {
    .offcanvas-xxl.offcanvas-start {
        top: 0;
        left: 0;
        width: var(--bs-offcanvas-width);
        border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateX(-100%);
    }
}

@media (max-width: 1399.98px) {
    .offcanvas-xxl.offcanvas-end {
        top: 0;
        right: 0;
        width: var(--bs-offcanvas-width);
        border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateX(100%);
    }
}

@media (max-width: 1399.98px) {
    .offcanvas-xxl.offcanvas-top {
        top: 0;
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateY(-100%);
    }
}

@media (max-width: 1399.98px) {
    .offcanvas-xxl.offcanvas-bottom {
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        transform: translateY(100%);
    }
}

@media (max-width: 1399.98px) {
    .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {
        transform: none;
    }
}

@media (max-width: 1399.98px) {
    .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {
        visibility: visible;
    }
}

@media (min-width: 1400px) {
    .offcanvas-xxl {
        --bs-offcanvas-height: auto;
        --bs-offcanvas-border-width: 0;
        background-color: transparent !important;
    }

        .offcanvas-xxl .offcanvas-header {
            display: none;
        }

        .offcanvas-xxl .offcanvas-body {
            display: flex;
            flex-grow: 0;
            padding: 0;
            overflow-y: visible;
            background-color: transparent !important;
        }
}

.offcanvas {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
}

@media (prefers-reduced-motion: reduce) {
    .offcanvas {
        transition: none;
    }
}

.offcanvas.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
}

.offcanvas.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
}

.offcanvas.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
}

.offcanvas.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
}

.offcanvas.showing, .offcanvas.show:not(.hiding) {
    transform: none;
}

.offcanvas.showing, .offcanvas.hiding, .offcanvas.show {
    visibility: visible;
}

.offcanvas-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1040;
    width: 100vw;
    height: 100vh;
    background-color: #000;
}

    .offcanvas-backdrop.fade {
        opacity: 0;
    }

    .offcanvas-backdrop.show {
        opacity: 0.5;
    }

.offcanvas-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
}

    .offcanvas-header .btn-close {
        padding: calc(var(--bs-offcanvas-padding-y) * 0.5) calc(var(--bs-offcanvas-padding-x) * 0.5);
        margin-top: calc(-0.5 * var(--bs-offcanvas-padding-y));
        margin-right: calc(-0.5 * var(--bs-offcanvas-padding-x));
        margin-bottom: calc(-0.5 * var(--bs-offcanvas-padding-y));
    }

.offcanvas-title {
    margin-bottom: 0;
    line-height: var(--bs-offcanvas-title-line-height);
}

.offcanvas-body {
    flex-grow: 1;
    padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
    overflow-y: auto;
}

.placeholder {
    display: inline-block;
    min-height: 1em;
    vertical-align: middle;
    cursor: wait;
    background-color: currentcolor;
    opacity: 0.5;
}

    .placeholder.btn::before {
        display: inline-block;
        content: "";
    }

@keyframes placeholder-glow {
    50% {
        opacity: 0.2;
    }
}

@keyframes placeholder-wave {
    100% {
        mask-position: -200% 0%;
    }
}

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

.link-info {
    color: RGBA(var(--bs-info-rgb, var(--bs-link-opacity, 1)));
    text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1));
}

    .link-info:hover, .link-info:focus {
        color: RGBA(61, 213, 243, var(--bs-link-opacity, 1));
        text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1));
    }

.ratio {
    position: relative;
    width: 100%;
}

    .ratio::before {
        display: block;
        padding-top: var(--bs-aspect-ratio);
        content: "";
    }

    .ratio > * {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

.ratio-16x9 {
    --bs-aspect-ratio: 56.25%;
}

.visually-hidden {
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

    .visually-hidden:not(caption) {
        position: absolute !important;
    }

.vr {
    display: inline-block;
    align-self: stretch;
    width: 1px;
    min-height: 1em;
    background-color: currentcolor;
    opacity: 0.25;
}

.float-end {
    float: right !important;
}

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

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

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

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

.shadow {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.position-relative {
    position: relative !important;
}

.position-absolute {
    position: absolute !important;
}

.position-fixed {
    position: fixed !important;
}

.top-0 {
    top: 0 !important;
}

.top-50 {
    top: 50% !important;
}

.bottom-0 {
    bottom: 0 !important;
}

.start-0 {
    left: 0 !important;
}

.start-50 {
    left: 50% !important;
}

.end-0 {
    right: 0 !important;
}

.translate-middle {
    transform: translate(-50%, -50%) !important;
}

.translate-middle-x {
    transform: translateX(-50%) !important;
}

.translate-middle-y {
    transform: translateY(-50%) !important;
}

.border {
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-0 {
    border: 0 !important;
}

.border-bottom-0 {
    border-bottom: 0 !important;
}

.w-50 {
    width: 50% !important;
}

.w-75 {
    width: 75% !important;
}

.w-100 {
    width: 100% !important;
}

.h-100 {
    height: 100% !important;
}

.h-auto {
    height: auto !important;
}

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

.flex-grow-1 {
    flex-grow: 1 !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-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-content-center {
    align-content: center !important;
}

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

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

.m-1 {
    margin: 0.25rem !important;
}

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

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

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

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

.mt-2 {
    margin-top: 0.5rem !important;
}

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

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

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

.me-2 {
    margin-right: 0.5rem !important;
}

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

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

.mb-1 {
    margin-bottom: 0.25rem !important;
}

.mb-2 {
    margin-bottom: 0.5rem !important;
}

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

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

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

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

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

.p-1 {
    padding: 0.25rem !important;
}

.p-2 {
    padding: 0.5rem !important;
}

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

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

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

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

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

.pt-2 {
    padding-top: 0.5rem !important;
}

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

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

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

.pe-2 {
    padding-right: 0.5rem !important;
}

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

.pb-2 {
    padding-bottom: 0.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-3 {
    padding-left: 1rem !important;
}

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

.fst-italic {
    font-style: italic !important;
}

.fst-normal {
    font-style: normal !important;
}

.fw-light {
    font-weight: 300 !important;
}

.fw-medium {
    font-weight: 500 !important;
}

.fw-bold {
    font-weight: 700 !important;
}

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

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

.text-decoration-underline {
    text-decoration: underline !important;
}

.text-capitalize {
    text-transform: capitalize !important;
}

.text-wrap {
    white-space: normal !important;
}

/* rtl:begin:remove */

/* rtl:end:remove */
.text-primary {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
}

.text-success {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;
}

.text-info {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;
}

.text-warning {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;
}

.text-danger {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;
}

.text-light {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;
}

.text-dark {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
}

.text-white {
    --bs-text-opacity: 1;
    font-family: Barlow;
    color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
}

.text-muted {
    --bs-text-opacity: 1;
    color: var(--bs-secondary-color) !important;
}

.bg-primary {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-success {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;
}

.bg-info {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;
}

.bg-warning {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;
}

.bg-danger {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;
}

.bg-dark {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;
}

.bg-white {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;
}

.rounded {
    border-radius: var(--bs-border-radius) !important;
}

.rounded-2 {
    border-radius: var(--bs-border-radius) !important;
}

.rounded-3 {
    border-radius: var(--bs-border-radius-lg) !important;
}

.rounded-4 {
    border-radius: var(--bs-border-radius-xl) !important;
}

.rounded-5 {
    border-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-pill {
    border-radius: var(--bs-border-radius-pill) !important;
}

.visible {
    visibility: visible !important;
}

.invisible {
    visibility: hidden !important;
}

@media (min-width: 576px) {

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

@media (min-width: 768px) {

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

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

@media (min-width: 992px) {

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

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

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

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

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

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

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

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

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

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

    .text-lg-start {
        text-align: left !important;
    }
}

:root {
    --cnvs-themecolor: white;
    --cnvs-themecolor-rgb: 131, 179, 65;
    --bs-link-color: var(--cnvs-themecolor);
    --bs-link-color-rgb: var(--cnvs-themecolor-rgb);
    --bs-link-hover-color: var(--cnvs-heading-color);
    --cnvs-white: #fff;
    --cnvs-black: #000;
    --cnvs-body-bg: var(--bs-body-bg);
    --cnvs-body-bg-boxed: var(--cnvs-contrast-0);
    --cnvs-headings-font-weight: 500;
    --cnvs-before-heading-font: normal 400 1.0625rem var(--cnvs-secondary-font);
    /* Font Families */
    --cnvs-body-font: "Inter", sans-serif;
    --cnvs-primary-font: "Inter", sans-serif;
    --cnvs-secondary-font: "Playfair Display", serif;
    --cnvs-line-height-base: 1.2;
    --cnvs-line-height-content: 1.65;
    /* Margins */
    --cnvs-margin-base: 3rem;
    --cnvs-margin-sm: 2rem;
    --cnvs-margin-lg: 5rem;
    --cnvs-content-padding: 5rem;
    --cnvs-section-margin: 4rem;
    --cnvs-section-padding: var(--cnvs-section-margin);
    --cnvs-col-padding: var(--cnvs-section-padding);
    --cnvs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    --cnvs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    --cnvs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
    --cnvs-copyrights-font-size: 0.875rem;
    --bs-bg-opacity: 1;
    /* Header Height */
    --cnvs-header-height: 100px;
    --cnvs-header-height-sm: 60px;
    --cnvs-header-height-md: 80px;
    --cnvs-header-height-lg: 120px;
    --cnvs-header-height-shrink: 60px;
    --cnvs-side-header-width: 260px;
    --cnvs-side-header-padding-gutters: 30px;
    --cnvs-transitions: 0.5s ease;
    /* Social Colors */
    --cnvs-color-facebook: #3b5998;
    --cnvs-color-whatsapp: #25d366;
    --cnvs-color-delicious: #205cc0;
    --cnvs-color-paypal: #00588b;
    --cnvs-color-waze: #05c8f7;
    --cnvs-color-android: #a4c639;
    --cnvs-color-googledrive: #1FA463;
    --cnvs-color-wikipedia: #333;
    --cnvs-color-stumbleupon: #f74425;
    --cnvs-color-foursquare: #25a0ca;
    --cnvs-color-call: #444;
    --cnvs-color-ninetyninedesigns: #f26739;
    --cnvs-color-forrst: #5b9a68;
    --cnvs-color-digg: #191919;
    --cnvs-color-spotify: #1DB954;
    --cnvs-color-reddit: #c6c6c6;
    --cnvs-color-blogger: #fc4f08;
    --cnvs-color-cc: #688527;
    --cnvs-color-dribbble: #ea4c89;
    --cnvs-color-evernote: #5ba525;
    --cnvs-color-flickr: #ff0084;
    --cnvs-color-google: #4885ed;
    --cnvs-color-salesforce: #1798c1;
    --cnvs-color-cloudflare: #f38020;
    --cnvs-color-linkedin: #0e76a8;
    --cnvs-color-vk: #2b587a;
    --cnvs-color-rss: #ee802f;
    --cnvs-color-skype: #00aff0;
    --cnvs-color-twitter: #00acee;
    --cnvs-color-youtube: #c4302b;
    --cnvs-color-vimeo: #86c9ef;
    --cnvs-color-slack: #ECB22E;
    --cnvs-color-yahoo: #720e9e;
    --cnvs-color-email3: #6567a5;
    --cnvs-color-macstore: #333333;
    --cnvs-color-figma: #ab7c63;
    --cnvs-color-podcast: #e4b21b;
    --cnvs-color-meetup: #e51937;
    --cnvs-color-dropbox: #3d9ae8;
    --cnvs-color-ebay: #89c507;
    --cnvs-color-github: #171515;
    --cnvs-color-googleplay: #3bccff;
    --cnvs-color-itunes: #222;
    --cnvs-color-periscope: #52677b;
    --cnvs-color-meta: #0668E1;
    --cnvs-color-soundcloud: #ff7700;
    --cnvs-color-tumblr: #34526f;
    --cnvs-color-wordpress: #1e8cbe;
    --cnvs-color-yelp: #c41200;
    --cnvs-color-microsoft: #f65314;
    --cnvs-color-trello: #0079bf;
    --cnvs-color-scribd: #666666;
    --cnvs-color-stripe: #008cdd;
    --cnvs-color-print: #111;
    --cnvs-color-btc: #f2a900;
    --cnvs-color-weibo: #DF2029;
    --cnvs-color-acrobat: #d3222a;
    --cnvs-color-drupal: #27537a;
    --cnvs-color-buffer: #333333;
    --cnvs-color-pocket: #ee4056;
    --cnvs-color-bitbucket: #0e4984;
    --cnvs-color-stackoverflow: #ef8236;
    --cnvs-color-hackernews: #ff6600;
    --cnvs-color-xing: #126567;
    --cnvs-color-instagram: #8a3ab9;
    --cnvs-color-quora: #a82400;
    --cnvs-color-openid: #e16309;
    --cnvs-color-steam: #111;
    --cnvs-color-amazon: #e47911;
    --cnvs-color-line: #00b900;
    --cnvs-color-kickstarter: #87c442;
    --cnvs-color-appstore: #000;
    --cnvs-color-pinterest: #c8232c;
    --cnvs-color-fivehundredpx: #111;
    --cnvs-color-tiktok: #000;
    --cnvs-color-airbnb: #FF5A5F;
    --cnvs-color-gpay: #6877df;
    --cnvs-color-unsplash: #111;
    --cnvs-color-snapchat: #fffc00;
    --cnvs-color-discord: #7289da;
    --cnvs-color-twitch: #6441a5;
    --cnvs-font-size-body: var(--bs-body-font-size);
    --cnvs-font-size-h1: 2.25rem;
    --cnvs-font-size-h2: 1.875rem;
    --cnvs-font-size-h3: 1.5rem;
    --cnvs-font-size-h4: 1.125rem;
    --cnvs-font-size-h5: 0.875rem;
    --cnvs-font-size-h6: 0.75rem;
    --cnvs-font-size-small: 0.75rem;
}

:root,
.not-dark {
    --cnvs-contrast-0: #fff;
    --cnvs-contrast-100: #f8f9fa;
    --cnvs-contrast-200: #e9ecef;
    --cnvs-contrast-300: #dee2e6;
    --cnvs-contrast-400: #ced4da;
    --cnvs-contrast-500: #adb5bd;
    --cnvs-contrast-600: #6c757d;
    --cnvs-contrast-700: #495057;
    --cnvs-contrast-800: #343a40;
    --cnvs-contrast-900: #212529;
    --cnvs-contrast-1000: #000;
    --cnvs-invert-contrast-0: #000;
    --cnvs-invert-contrast-100: #212529;
    --cnvs-invert-contrast-200: #343a40;
    --cnvs-invert-contrast-300: #495057;
    --cnvs-invert-contrast-400: #6c757d;
    --cnvs-invert-contrast-500: #adb5bd;
    --cnvs-invert-contrast-600: #ced4da;
    --cnvs-invert-contrast-700: #dee2e6;
    --cnvs-invert-contrast-800: #e9ecef;
    --cnvs-invert-contrast-900: #f8f9fa;
    --cnvs-invert-contrast-1000: #fff;
    --cnvs-link-color: var(--cnvs-themecolor);
    --cnvs-link-hover-color: var(--cnvs---cnvs-heading-color);
    --cnvs-contrast-rgb: 0, 0, 0;
    --cnvs-invert-contrast-rgb: 255, 255, 255;
    --cnvs-contrast-bg: #fff;
    --cnvs-contrast-bg-offset: #f8f9fa;
    --cnvs-topbar-bg: var(--cnvs-contrast-0);
    --cnvs-topbar-color: var(--cnvs-contrast-700);
    --cnvs-topbar-border-color: rgba(var(--cnvs-contrast-rgb), 0.1);
    --cnvs-topbar-social-icon-color: var(--cnvs-contrast-600);
    --cnvs-header-bg: var(--cnvs-contrast-0);
    --cnvs-header-sticky-bg: var(--cnvs-header-bg);
    --cnvs-side-header-bg: var(--cnvs-contrast-0);
    --cnvs-section-bg: var(--cnvs-contrast-bg-offset);
    --cnvs-heading-color: var(--cnvs-contrast-900);
    --cnvs-line-color: rgba(var(--cnvs-contrast-rgb), .1);
    --cnvs-footer-bg: var(--cnvs-contrast-bg-offset);
    color: var(--cnvs-contrast-800);
}

/* ----------------------------------------------------------------

	Layouts.scss

-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Bootstrap Adjustments
-----------------------------------------------------------------*/
@media (prefers-reduced-motion: no-preference) {
    :root {
        scroll-behavior: auto;
    }
}

[class*=col-]:not([class*=sticky-]):not([class*=position-]) {
    position: relative;
}

.form-group {
    margin-bottom: 1rem;
}

/*	Custom Bootstap Columns */

#wrapper {
    position: relative;
    float: none;
    width: 100%;
    margin: 0 auto;
    background-color: var(--cnvs-body-bg);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

@media (min-width: 1200px) {
    body:not(.stretched) #wrapper {
        max-width: 1200px;
    }
}

@media (min-width: 1400px) {
    body:not(.stretched) #wrapper {
        max-width: 1400px;
    }
}

.stretched #wrapper {
    width: 100%;
    margin: 0;
    box-shadow: none;
}

/* ----------------------------------------------------------------
	Sections
-----------------------------------------------------------------*/
.section {
    position: relative;
    width: 100%;
    margin: var(--cnvs-section-margin) 0;
    padding: var(--cnvs-section-padding) 0;
    background-color: var(--cnvs-section-bg);
    overflow: hidden;
}

    .section .container {
        z-index: 2;
    }

.parallax {
    overflow: hidden;
    will-change: transform;
    position: relative;
}

    
    .parallax .simpleParallax {
        min-width: 100%;
        min-height: 100%;
        object-fit: cover;
        will-change: transform;
    }

@media (max-width: 991.98px) {
    
    .parallax .simpleParallax {
        max-width: none;
        height: 100%;
    }
}

.parallax .simpleParallax {
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
}

.mobile-parallax,
.video-placeholder {
    background-size: cover !important;
    background-attachment: scroll !important;
    background-position: center center !important;
}

/* ----------------------------------------------------------------
	Columns & Grids
-----------------------------------------------------------------*/

.sidebar {
    position: relative;
}

/*-----------------------------------------------------------------------------------
	typography.scss
-----------------------------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Basic
-----------------------------------------------------------------*/
dl, dt, dd, ol, ul, li {
    margin: 0;
    padding: 0;
}

em {
    font-family: var(--cnvs-secondary-font);
}

.clear {
    clear: both;
    display: block;
    font-size: 0px;
    height: 0px;
    line-height: 0;
    width: 100%;
    overflow: hidden;
}

/* ----------------------------------------------------------------
	Typography
-----------------------------------------------------------------*/
body {
    line-height: 1.5;
    font-size: var(--cnvs-font-size-body);
    font-family: var(--cnvs-body-font);
    background: var(--cnvs-body-bg-boxed);
}

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

    a:hover {
        color: var(--cnvs-link-hover-color);
    }

    a img {
        border: none;
    }

img {
    max-width: 100%;
}

iframe {
    width: 100%;
    border: 0 !important;
    overflow: hidden !important;
}

/* ----------------------------------------------------------------
	Basic Layout Styles
-----------------------------------------------------------------*/
h1, .h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
    color: var(--cnvs-heading-color);
    font-weight: var(--cnvs-headings-font-weight);
    line-height: var(--cnvs-line-height-base);
    margin: 0 0 30px 0;
    font-family: var(--cnvs-primary-font);
}

h5, .h5,
h6,
.h6 {
    font-weight: bold;
    margin-bottom: 20px;
}

h1, .h1 {
    font-size: var(--cnvs-font-size-h1);
}

h2, .h2 {
    font-size: var(--cnvs-font-size-h2);
}

h3, .h3 {
    font-size: var(--cnvs-font-size-h3);
}

h4, .h4 {
    font-size: var(--cnvs-font-size-h4);
}

h5, .h5 {
    font-size: var(--cnvs-font-size-h5);
}

h6, .h6 {
    font-size: var(--cnvs-font-size-h6);
}

.h5 {
    font-size: 1.25rem;
}

.h6 {
    font-size: 1rem;
}

h4, .h4 {
    font-weight: 600;
}

h5, .h5,
h6,
.h6 {
    font-weight: bold;
}

@media (max-width: 767.98px) {
    h1, .h1 {
        font-size: 1.75rem;
    }

    h2, .h2 {
        font-size: 1.5rem;
    }

    h3, .h3 {
        font-size: 1.25rem;
    }

    h4, .h4 {
        font-size: 1rem;
    }
}

h1 > span:not(.nocolor):not(.badge), .h1 > span:not(.nocolor):not(.badge),
h2 > span:not(.nocolor):not(.badge),
.h2 > span:not(.nocolor):not(.badge),
h3 > span:not(.nocolor):not(.badge),
.h3 > span:not(.nocolor):not(.badge),
h4 > span:not(.nocolor):not(.badge),
.h4 > span:not(.nocolor):not(.badge),
h5 > span:not(.nocolor):not(.badge),
.h5 > span:not(.nocolor):not(.badge),
h6 > span:not(.nocolor):not(.badge),
.h6 > span:not(.nocolor):not(.badge) {
    color: var(--cnvs-themecolor);
}

p,
pre,
ul,
ol,
dl,
dd,
blockquote,
address,
table,
fieldset {
    margin-bottom: 30px;
}

small, .small {
    font-family: var(--cnvs-font-size-small);
}

/*-----------------------------------------------------------------------------------

	Utilities.scss

-----------------------------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Helper Classes
-----------------------------------------------------------------*/
.line {
    clear: both;
    position: relative;
    width: 100%;
    margin: var(--cnvs-section-margin) 0;
    border-top: 1px solid rgba(var(--cnvs-contrast-rgb), 0.1);
}

span.middot {
    display: inline-block;
    margin: 0 5px;
}

.col-padding {
    padding: 4rem;
}

.inline-block {
    float: none !important;
    display: inline-block !important;
}

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

.mx-auto {
    position: relative !important;
    float: none !important;
}

/* ----------------------------------------------------------------
	Text Contrast Color Utility Classes
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
	BG Contrast Color Utility Classes
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
	Border Contrast Color Utility Classes
-----------------------------------------------------------------*/

.color {
    color: rgba(var(--cnvs-themecolor-rgb), var(--bs-text-opacity, 1)) !important;
}

.border-color {
    border-color: var(--cnvs-themecolor) !important;
}

/* ----------------------------------------------------------------
	Font Weight Utility Classes
-----------------------------------------------------------------*/

.fw-medium {
    font-weight: 500 !important;
}

.fst-normal {
    font-style: normal !important;
}

/* ----------------------------------------------------------------
	Letter Spacing Utility Classes
-----------------------------------------------------------------*/

.font-body {
    font-family: var(--cnvs-body-font);
}

/* ----------------------------------------------------------------
	Text Underline Offset
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
	Image fit Objects
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
	Image Object & Background Positions
-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Background Sizes
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
	Image Scale Utility Classes
-----------------------------------------------------------------*/

.grayscale {
    --cnvs-gray-filter: brightness(80%) grayscale(1);
    filter: var(--cnvs-gray-filter);
    -webkit-filter: var(--cnvs-gray-filter);
    -moz-filter: var(--cnvs-gray-filter);
    -o-filter: var(--cnvs-gray-filter);
    -ms-filter: var(--cnvs-gray-filter);
    transition: 1s filter ease;
}

@media (prefers-reduced-motion: reduce) {
    .grayscale {
        transition: none;
    }
}


.grayscale:hover {
    --cnvs-gray-filter: brightness(100%) grayscale(0);
    transition: 1s filter ease;
}

@media (prefers-reduced-motion: reduce) {
    
    .grayscale:hover {
        transition: none;
    }
}

@-webkit-keyframes BgAnimated {
    from {
        background-position: 0 0;
    }

    to {
        background-position: 0 400px;
    }
}

@keyframes BgAnimated {
    from {
        background-position: 0 0;
    }

    to {
        background-position: 0 400px;
    }
}

/* ----------------------------------------------------------------
	Opacity Utility Classes
-----------------------------------------------------------------*/
.op-ts {
    transition: opacity var(--cnvs-transitions);
}

@media (prefers-reduced-motion: reduce) {
    .op-ts {
        transition: none;
    }
}

.op-0 {
    opacity: 0 !important;
}

.op-1 {
    opacity: 1 !important;
}

.op-05 {
    opacity: 0.5 !important;
}

/* ----------------------------------------------------------------
	Text Sizing Utility
-----------------------------------------------------------------*/
.text-smaller {
    font-size: 80% !important;
}

    .text-smaller small, .text-smaller .small {
        font-size: 90% !important;
    }

.text-larger {
    font-size: 120% !important;
}

/* ----------------------------------------------------------------
	Text Color Utility Classes
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
	BG Color Utility Classes
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
	Gradient Utility Classes
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
	Bootstrap Utility Classes: Extended
-----------------------------------------------------------------*/
/*	Gutters */
[class*=gutter-] {
    --cnvs-custom-gutter: var(--bs-gutter-x);
    margin-right: calc(var(--cnvs-custom-gutter) * -0.5);
    margin-left: calc(var(--cnvs-custom-gutter) * -0.5);
    margin-top: calc(var(--cnvs-custom-gutter) * -1);
}

    [class*=gutter-] > .col,
    [class*=gutter-] > [class*=col-] {
        padding-right: calc(var(--cnvs-custom-gutter) * 0.5);
        padding-left: calc(var(--cnvs-custom-gutter) * 0.5);
        margin-top: var(--cnvs-custom-gutter);
    }
/* ----------------------------------------------------------------
	col-mb-classes & Bootstrap Utility Classes: Extended
-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Height Utility Classes
-----------------------------------------------------------------*/

.h-100 {
    height: 100% !important;
}

.min-vh-75 {
    min-height: 75vh !important;
}

.min-vh-50 {
    min-height: 50vh !important;
}

.min-vh-40 {
    min-height: 40vh !important;
}

.min-vh-25 {
    min-height: 25vh !important;
}

.min-vh-0 {
    min-height: 0vh !important;
}

.h-auto {
    height: auto !important;
}

@media (min-width: 992px) {

    .min-vh-lg-50 {
        min-height: 50vh !important;
    }

    .min-vh-lg-40 {
        min-height: 40vh !important;
    }

    .min-vh-lg-0 {
        min-height: 0vh !important;
    }
}
/* ----------------------------------------------------------------
	Position Utility Classes: Extended
-----------------------------------------------------------------*/

.position-relative {
    position: relative !important;
}

.position-absolute {
    position: absolute !important;
}

.position-fixed {
    position: fixed !important;
}
/* ----------------------------------------------------------------
	Lazy Loading
-----------------------------------------------------------------*/
.lazy {
    opacity: 0;
}

    .lazy:not(.initial) {
        transition: opacity 1s;
    }

@media (prefers-reduced-motion: reduce) {
    .lazy:not(.initial) {
        transition: none;
    }
}

.lazy.initial, .lazy-loaded, .lazy-error {
    opacity: 1;
}

img.lazy {
    max-width: 100%;
    height: auto;
}

    img.lazy:not([src]) {
        visibility: hidden;
    }

/* ----------------------------------------------------------------
	Borders
-----------------------------------------------------------------*/

.rounded-4 {
    border-radius: 0.4rem !important;
}

.rounded-5 {
    border-radius: 0.5rem !important;
}

/* ----------------------------------------------------------------
	Max-width Utility Classes:
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
	Text Sizes Utility Classes:
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
	X/Y Positioning Classes
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
	Square Sizes Utility Classes:
-----------------------------------------------------------------*/
.square {
    --cnvs-square-size: 3rem;
    width: var(--cnvs-square-size) !important;
    height: var(--cnvs-square-size) !important;
}

/* ----------------------------------------------------------------
	Max-width Utility Classes:
-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Shadow
-----------------------------------------------------------------*/

.shadow {
    box-shadow: var(--cnvs-box-shadow) !important;
}

/* ----------------------------------------------------------------
	translate
-----------------------------------------------------------------*/

.scale {
    transform: scale(1.05) !important;
}

/* ----------------------------------------------------------------
	translate
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------

	topbar.scss

-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Top Bar
-----------------------------------------------------------------*/
#top-bar {
    --cnvs-topbar-height: 45px;
    --cnvs-topbar-font-size: 0.875rem;
    --cnvs-topbar-font-weight: 500;
    --cnvs-topbar-font-transform: none;
    --cnvs-topbar-color: var(--cnvs-contrast-700);
    --cnvs-topbar-border-size: 1px;
    --cnvs-topbar-border-color: rgba(var(--cnvs-contrast-rgb), 0.1);
    --cnvs-topbar-social-icon-color: var(--cnvs-contrast-600);
    --cnvs-topbar-submenu-padding: 0.625rem;
    --cnvs-topbar-submenu-font-size: 0.75rem;
    position: relative;
    border-bottom: var(--cnvs-topbar-border-size) solid var(--cnvs-topbar-border-color);
    font-size: var(--cnvs-topbar-font-size);
    background-color: var(--cnvs-topbar-bg);
}

/* Top Links
---------------------------------*/

/* Top Social
-----------------------------------------------------------------*/

/* Top Login
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------

	header.scss

-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Header
-----------------------------------------------------------------*/
:root,
.not-dark {
    --cnvs-header-border-color: rgba(var(--cnvs-contrast-rgb), .1);
    --cnvs-header-transparent-border-color: rgba(var(--cnvs-contrast-rgb), .1);
    --cnvs-header-floating-bg: var(--cnvs-contrast-0);
    --cnvs-primary-menu-color: var(--cnvs-contrast-900);
    --cnvs-primary-menu-submenu-bg: var(--cnvs-contrast-0);
    --cnvs-primary-menu-submenu-color: var(--cnvs-contrast-900);
    --cnvs-primary-menu-submenu-border: 1px solid rgba(var(--cnvs-contrast-rgb), 0.1);
    --cnvs-primary-menu-submenu-hover-bg: rgba(var(--cnvs-contrast-rgb), 0.025);
    --cnvs-header-misc-icons-color: var(--cnvs-primary-menu-color);
    --cnvs-side-panel-bg: var(--cnvs-contrast-100);
}

#header {
    --cnvs-sticky-header-height: var(--cnvs-header-height);
    --cnvs-header-border-color: rgba(var(--cnvs-contrast-rgb), .1);
    --cnvs-header-transparent-border-color: rgba(var(--cnvs-contrast-rgb), .1);
    --cnvs-primary-menu-padding-x: 15px;
    /*  Floating Header */
    --cnvs-header-floating-top-offset: 60px;
    --cnvs-header-floating-padding: 30px;
    /*  Side Header */
    --cnvs-side-header-padding-gutters: 30px;
    /*  Primary Menu */
    --cnvs-primary-menu-color: var(--cnvs-contrast-900);
    --cnvs-primary-menu-hover-color: var(--cnvs-themecolor);
    --cnvs-primary-menu-active-color: var(--cnvs-primary-menu-hover-color);
    --cnvs-primary-menu-font: var(--cnvs-primary-font);
    --cnvs-primary-menu-font-weight: 500;
    --cnvs-primary-menu-font-size: 1rem;
    --cnvs-primary-menu-tt: none;
    --cnvs-primary-menu-ls: 0;
    --cnvs-primary-menu-icon-size: 1rem;
    --cnvs-primary-menu-submenu-width: 240px;
    --cnvs-primary-menu-submenu-font: var(--cnvs-body-font);
    --cnvs-primary-menu-submenu-font-size: 0.875rem;
    --cnvs-primary-menu-submenu-font-weight: 400;
    --cnvs-primary-menu-submenu-color: var(--cnvs-contrast-900);
    --cnvs-primary-menu-submenu-spacing: 0;
    --cnvs-primary-menu-submenu-border: 1px solid rgba(var(--cnvs-contrast-rgb), 0.1);
    --cnvs-primary-menu-submenu-hover-bg: rgba(var(--cnvs-contrast-rgb), 0.025);
    --cnvs-primary-menu-submenu-hover-color: var(--cnvs-primary-menu-active-color);
    --cnvs-header-misc-icons-size: 1.125rem;
    --cnvs-header-misc-icons-color: var(--cnvs-primary-menu-color);
    --cnvs-mega-menu-width-sm: 400px;
    --cnvs-mobile-menu-off-canvas-width: 280px;
    position: relative;
}

#header-wrap {
    position: fixed;
    height: auto;
    z-index: 299;
    width: 100%;
    background-image: linear-gradient(to right, #2d694c, #102f21);
    border-bottom: 1px solid var(--cnvs-header-border-color);
    transition: height 0.2s ease 0s, background-color 0.3s ease 0s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

@media (prefers-reduced-motion: reduce) {
    #header-wrap {
        transition: none;
    }
}

.is-expanded-menu #top-bar + #header:not(.sticky-header) #header-wrap,
.is-expanded-menu #slider + #header:not(.sticky-header) #header-wrap,
.is-expanded-menu .floating-header:not(.sticky-header) #header-wrap,
.is-expanded-menu div + #header-wrap,
.is-expanded-menu .no-sticky #header-wrap,
.is-expanded-menu #header[data-sticky-offset]:not([data-sticky-offset=full]):not(.sticky-header) #header-wrap {
    position: absolute;
}

body.is-expanded-menu:not(.stretched) #header:not(.sticky-header) #header-wrap {
    position: absolute;
}

body:not(.is-expanded-menu) #header:not([data-mobile-sticky=true]) #header-wrap {
    position: relative;
}

body:not(.is-expanded-menu) #header:not([data-mobile-sticky=true]) .header-wrap-clone {
    display: none;
}

.header-wrap-clone {
    height: calc(var(--cnvs-header-height) + 1px);
}

.header-row {
    position: relative;
    display: flex;
    align-items: end;
    flex-wrap: wrap;
}

@media (max-width: 800px) {
    .header-row {
        position: relative;
        display: flex;
        align-items: center;
        flex-wrap: wrap;
    }
}
.is-expanded-menu .header-row {
    position: initial;
}

.is-expanded-menu {
    /* ----------------------------------------------------------------
  	Sticky Header
  -----------------------------------------------------------------*/
}

    .is-expanded-menu #header.sticky-header-shrink {
        --cnvs-sticky-header-height: var(--cnvs-header-height-shrink);
    }

    .is-expanded-menu #header.transparent-header {
        --cnvs-header-bg: transparent;
        border-bottom: 0;
    }

        .is-expanded-menu #header.transparent-header:not(.sticky-header) #header-wrap {
            border-bottom: 1px solid transparent;
            z-index: 299;
        }

        .is-expanded-menu #header.transparent-header.floating-header {
            margin-top: var(--cnvs-header-floating-top-offset);
        }

            .is-expanded-menu #header.transparent-header.floating-header .container {
                padding: 0 var(--cnvs-header-floating-padding);
                background-color: var(--cnvs-header-floating-bg);
            }

            .is-expanded-menu #header.transparent-header.floating-header:not(.sticky-header) .container {
                position: relative;
            }

.is-expanded-menu #header.full-header:not(.transparent-header) {
    border-bottom-color: var(--cnvs-header-border-color);
}

.is-expanded-menu #header.full-header.transparent-header #header-wrap {
    border-bottom: 1px solid var(--cnvs-header-transparent-border-color);
}

.is-expanded-menu #slider + #header.transparent-header.full-header #header-wrap {
    border-top: 1px solid var(--cnvs-header-transparent-border-color);
    border-bottom: none;
}

.is-expanded-menu.stretched .full-header #header-wrap > .container {
    width: 100%;
    max-width: none;
    padding: 0 30px;
}

.is-expanded-menu .sub-menu-container,
.is-expanded-menu .mega-menu-content {
    transition: top 0.4s ease;
}

@media (prefers-reduced-motion: reduce) {
    .is-expanded-menu .sub-menu-container,
    .is-expanded-menu .mega-menu-content {
        transition: none;
    }
}

.is-expanded-menu .sticky-header #header-wrap {
    position: fixed;
    top: 0;
    left: 0;
    background-color: var(--cnvs-header-sticky-bg);
}

.is-expanded-menu .sticky-header.full-header #header-wrap {
    border-bottom: 1px solid var(--cnvs-header-border-color);
}

body:not(.is-expanded-menu) [data-mobile-sticky=true] .menu-container {
    max-height: 60vh;
    margin: 0 0 1rem;
    overflow-x: hidden;
    overflow-y: scroll;
}

body:not(.is-expanded-menu) .sticky-header #header-wrap {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 299;
    background-color: var(--cnvs-header-sticky-bg);
    border-bottom: var(--cnvs-primary-menu-submenu-border);
    -webkit-transform: translateZ(0);
    -webkit-backface-visibility: hidden;
}

body:not(.is-expanded-menu) .sticky-header .header-wrap-clone {
    display: block;
}

body:not(.is-expanded-menu) body:not(.primary-menu-open) .dark.transparent-header-responsive,
body:not(.is-expanded-menu) body:not(.primary-menu-open) .transparent-header-responsive {
    background-color: transparent;
    border: none;
}

/* ----------------------------------------------------------------
	Logo
-----------------------------------------------------------------*/
#logo {
    position: relative;
    display: flex;
    align-items: center;
    margin-right: auto;
    max-height: 100%;
}

    #logo a {
        color: #000;
        font-family: var(--cnvs-primary-font);
        font-size: 36px;
        width: 100%;
    }

        #logo a [class^=logo-] {
            display: none;
        }

        #logo a .logo-default {
            display: flex;
        }

    #logo img {
        display: block;
        max-width: 100%;
        max-height: 100%;
        margin-left: auto;
        margin-right: auto;
        transition: height 0.4s ease, padding 0.4s ease, margin 0.4s ease, opacity 0.3s ease;
    }

@media (prefers-reduced-motion: reduce) {
    #logo img {
        transition: none;
    }
}

#header-wrap #logo img {
    height: var(--cnvs-header-height);
}

.is-expanded-menu .full-header #logo {
    padding-right: 30px;
}

.is-expanded-menu #header.transparent-header.full-header #logo {
    border-right-color: var(--cnvs-header-transparent-border-color);
}

.is-expanded-menu #header.sticky-header-shrink #header-wrap #logo img {
    height: var(--cnvs-sticky-header-height);
}

/* ----------------------------------------------------------------
	Header Right Area
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
	Primary Menu
-----------------------------------------------------------------*/
.primary-menu {
    display: flex;
    flex-basis: 100%;
    flex-grow: 1;
    align-items: center;
}

.is-expanded-menu .primary-menu {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    flex-grow: 0;
}

.primary-menu + .primary-menu {
    border-top: var(--cnvs-primary-menu-submenu-border);
}

.is-expanded-menu .primary-menu + .primary-menu {
    border-top: 0;
}

.primary-menu-trigger,
#page-menu-trigger {
    --cnvs-menu-trigger-gap: 0.75rem;
    display: flex;
    opacity: 1;
    pointer-events: auto;
    z-index: 1;
    cursor: pointer;
    justify-content: center;
    align-items: center;
    padding: var(--cnvs-menu-trigger-gap);
    transition: opacity 0.3s ease;
}

@media (prefers-reduced-motion: reduce) {
    .primary-menu-trigger,
    #page-menu-trigger {
        transition: none;
    }
}

.is-expanded-menu .primary-menu-trigger,
.is-expanded-menu #page-menu-trigger {
    display: none;
    opacity: 0;
    pointer-events: none;
    z-index: 0;
}

body:not(.top-search-open) .top-search-parent .primary-menu-trigger {
    opacity: 1;
    transition: opacity 0.2s 0.2s ease, top 0.4s ease;
}

@media (prefers-reduced-motion: reduce) {
    body:not(.top-search-open) .top-search-parent .primary-menu-trigger {
        transition: none;
    }
}

.top-search-open .top-search-parent .primary-menu-trigger {
    opacity: 0;
}

.cnvs-hamburger {
    --cnvs-hamburger-size: 2rem;
    --cnvs-hamburger-width: 4px;
    --cnvs-hamburger-offset: calc(-1 * calc(calc(var(--cnvs-hamburger-size) - calc(var(--cnvs-hamburger-width) * 2)) * .5));
    display: block;
    position: relative;
    cursor: pointer;
    transition-property: opacity, filter;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    font: inherit;
    color: white;
    text-transform: none;
    background-color: transparent;
    border: 0;
    margin: 0;
    padding: 0;
    overflow: visible;
}

    .cnvs-hamburger .cnvs-hamburger-box {
        width: var(--cnvs-hamburger-size);
        height: var(--cnvs-hamburger-size);
        display: block;
        position: relative;
    }

    .cnvs-hamburger .cnvs-hamburger-inner {
        display: block;
        top: 50%;
        margin-top: calc(-1 * var(--cnvs-hamburger-width) * 0.5);
        transition-duration: 0.075s;
        transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

        .cnvs-hamburger .cnvs-hamburger-inner, .cnvs-hamburger .cnvs-hamburger-inner::before, .cnvs-hamburger .cnvs-hamburger-inner::after {
            width: var(--cnvs-hamburger-size);
            height: var(--cnvs-hamburger-width);
            background-color: white;
            position: absolute;
            transition-property: transform;
            transition-duration: 0.15s;
            transition-timing-function: ease;
        }

            .cnvs-hamburger .cnvs-hamburger-inner::before, .cnvs-hamburger .cnvs-hamburger-inner::after {
                content: "";
                display: block;
            }

            .cnvs-hamburger .cnvs-hamburger-inner::before {
                top: var(--cnvs-hamburger-offset);
                transition: top 0.075s 0.12s ease, opacity 0.075s ease;
            }

            .cnvs-hamburger .cnvs-hamburger-inner::after {
                bottom: var(--cnvs-hamburger-offset);
                transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
            }

.primary-menu-trigger-active .cnvs-hamburger .cnvs-hamburger-inner {
    transform: rotate(45deg);
    transition-delay: 0.12s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

    .primary-menu-trigger-active .cnvs-hamburger .cnvs-hamburger-inner::before {
        top: 0;
        opacity: 0;
        transition: top 0.075s ease, opacity 0.075s 0.12s ease;
    }

    .primary-menu-trigger-active .cnvs-hamburger .cnvs-hamburger-inner::after {
        bottom: 0;
        transform: rotate(-90deg);
        transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
    }

.menu-container {
    display: none;
    list-style: none;
    margin: 0;
    width: 100%;
}

.menu-item {
    position: relative;
}

    .menu-item:not(:first-child) {
        border-top: var(--cnvs-primary-menu-submenu-border);
    }

.is-expanded-menu .menu-item:not(:first-child) {
    border-top: 0;
}

.menu-item:hover > .menu-link {
    color: var(--cnvs-primary-menu-hover-color);
}

.menu-item:hover > .menu-link {
    color: var(--cnvs-primary-menu-hover-color);
}

@media (min-width: 800px) {
    .menu-item-logo:focus > .menu-link {
        color: white;
        background-color: #006d4a;
        -webkit-border-top-left-radius: 8px;
        -webkit-border-top-right-radius: 8px;
        background-image: url('/images/Adequan_Menu.PNG');
        background-size: 110px;
        background-repeat: no-repeat;
        background-position: bottom;
    }

    .menu-item-logo:hover > .menu-link {
        color: white;
        background-color: #006d4a;
        -webkit-border-top-left-radius: 8px;
        -webkit-border-top-right-radius: 8px;
        background-image: url('/images/Adequan_Menu.PNG');
        background-size: 110px;
        background-repeat: no-repeat;
        background-position: bottom;
    }
}

.menu-item.current > .menu-link {
    color: var(--cnvs-primary-menu-active-color);
}

.menu-item .sub-menu-trigger {
    display: block;
    position: absolute;
    cursor: pointer;
    outline: none;
    border: none;
    background: none;
    padding: 0;
    top: 9px;
    right: 0;
    width: 32px;
    height: 32px;
    font-size: 12px;
    line-height: 32px;
    text-align: center;
    color: var(--cnvs-primary-menu-color);
    transition: transform 0.3s ease;
}

@media (prefers-reduced-motion: reduce) {
    .menu-item .sub-menu-trigger {
        transition: none;
    }
}

@media (min-width: 800px) {
    .menu-link {
        --cnvs-primary-menu-padding-y: 14px;
        --cnvs-primary-menu-padding-x: 5px;
        display: block;
        line-height: 22px;
        padding: 15px var(--cnvs-primary-menu-padding-x) 35px var(--cnvs-primary-menu-padding-x);
        color: white;
        font-weight: 600;
        font-size: var(--cnvs-primary-menu-font-size);
        font-family: var(--cnvs-primary-menu-font);
        text-transform: var(--cnvs-primary-menu-tt);
        letter-spacing: var(--cnvs-primary-menu-ls);
    }

}
@media (max-width: 799px) {
    .menu-link {
        --cnvs-primary-menu-padding-y: 14px;
        --cnvs-primary-menu-padding-x: 5px;
        display: block;
        line-height: 22px;
        padding: var(--cnvs-primary-menu-padding-y) var(--cnvs-primary-menu-padding-x);
        color: white;
        font-weight: 600;
        font-size: var(--cnvs-primary-menu-font-size);
        font-family: var(--cnvs-primary-menu-font);
        text-transform: var(--cnvs-primary-menu-tt);
        letter-spacing: var(--cnvs-primary-menu-ls);
    }
}

    .is-expanded-menu .menu-link {
        --cnvs-primary-menu-padding-y: calc(calc(var(--cnvs-sticky-header-height) - 22px) * 0.5);
        --cnvs-primary-menu-padding-x: 15px;
        transition: margin 0.4s ease, padding 0.4s ease;
    }

    @media (prefers-reduced-motion: reduce) {
        .is-expanded-menu .menu-link {
            transition: none;
        }
    }

    .menu-link span {
        display: none;
    }

    .menu-link i {
        position: relative;
        font-size: var(--cnvs-primary-menu-icon-size);
        width: var(--cnvs-primary-menu-icon-size);
        text-align: center;
        margin-right: 0.625rem;
        vertical-align: top;
    }

    .menu-link div > i.fa-caret-down {
        display: none;
    }

    .sub-menu-container,
    .mega-menu-content {
        position: relative;
        padding-left: 15px;
        list-style: none;
        margin-bottom: 0;
    }

    .is-expanded-menu .sub-menu-container,
    .is-expanded-menu .mega-menu-content {
        position: absolute;
        visibility: hidden;
        background-color: var(--cnvs-primary-menu-submenu-bg);
        box-shadow: 0px 13px 42px 11px rgba(0, 0, 0, 0.05);
        border: var(--cnvs-primary-menu-submenu-border);
        /*  border-top: 2px solid var(--cnvs-themecolor); */
        z-index: 399;
        top: 100%;
        left: 0;
        padding: 0;
    }

    .is-expanded-menu .menu-container > .menu-item:not(.mega-menu) .sub-menu-container:not([class*=col]) {
        width: var(--cnvs-primary-menu-submenu-width);
    }

    .sub-menu-container .menu-item:not(:first-child) {
        border-top: var(--cnvs-primary-menu-submenu-border);
    }

    .sub-menu-container .menu-item > .menu-link {
        position: relative;
        padding: 10px 5px;
        font-size: var(--cnvs-primary-menu-submenu-font-size);
        font-weight: var(--cnvs-primary-menu-submenu-font-weight);
        color: white;
        letter-spacing: var(--cnvs-primary-menu-submenu-spacing);
        font-family: var(--cnvs-primary-menu-submenu-font);
    }

        .sub-menu-container .menu-item > .menu-link div {
            position: relative;
        }

    .sub-menu-container .menu-item:hover > .menu-link {
        font-weight: 500;
        color: #f6c855 !important;
    }

    .sub-menu-container .menu-item .sub-menu-trigger {
        top: 6px;
    }

    .sub-menu-container .sub-menu-trigger {
        font-size: 10px;
    }

    /* ----------------------------------------------------------------
	Mega Menu
-----------------------------------------------------------------*/
    .mega-menu:not(.mega-menu-full) .mega-menu-content .container {
        max-width: none;
    }

    .is-expanded-menu .mega-menu {
        position: inherit;
    }

    .mega-menu-content {
        padding-left: 0;
    }

    .is-expanded-menu .primary-menu:not(.on-click) .mega-menu-content {
        display: flex;
    }

    .is-expanded-menu .primary-menu:not(.on-click) .menu-item:not(.mega-menu) .sub-menu-container,
    .is-expanded-menu .primary-menu:not(.on-click) .mega-menu-content {
        display: block;
        opacity: 0;
        margin-top: 15px;
        z-index: -9999;
        pointer-events: none;
        transition: opacity 0.3s ease;
        /* transition: opacity 0.3s ease, margin 0.25s ease; */
    }

    @media (prefers-reduced-motion: reduce) {
        .is-expanded-menu .primary-menu:not(.on-click) .menu-item:not(.mega-menu) .sub-menu-container,
        .is-expanded-menu .primary-menu:not(.on-click) .mega-menu-content {
            transition: none;
        }
    }

    .is-expanded-menu .primary-menu:not(.on-click) .menu-item.mega-menu .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
        margin-top: 0;
        z-index: auto;
    }

    .is-expanded-menu .primary-menu:not(.on-click) .menu-item.mega-menu:hover > .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
        pointer-events: auto;
    }

    .is-expanded-menu .primary-menu:not(.on-click) .menu-item:hover > .sub-menu-container,
    .is-expanded-menu .primary-menu:not(.on-click) .menu-item:hover > .mega-menu-content {
        opacity: 1;
        visibility: visible;
        margin-top: 0;
        z-index: 399;
        pointer-events: auto;
        background-color: #013927;
        color: white;
    }

    .is-expanded-menu .primary-menu:not(.on-click) .menu-item:focus > .sub-menu-container,
    .is-expanded-menu .primary-menu:not(.on-click) .menu-item:focus > .mega-menu-content {
        opacity: 1;
        visibility: visible;
        margin-top: 0;
        z-index: 399;
        pointer-events: auto;
        background-color: #013927;
        color: white;
    }

    /* AB: Target children and show submenu */
    .mega-menu-content:has(.menu-link:focus) {
        opacity: 1 !important;
        visibility: visible;
        margin-top: 0px !important;
        z-index: 399;
        pointer-events: auto;
        background-color: #013927;
        color: white;
    }

    .is-expanded-menu .primary-menu:not(.on-click) .menu-item:not(:hover) .menu-item:not(:focus) > .sub-menu-container > *,
    .is-expanded-menu .primary-menu:not(.on-click) .menu-item:not(:hover) .menu-item:not(:focus) > .mega-menu-content > * {
        display: none;
    }

    .is-expanded-menu .primary-menu:not(.on-click) .menu-item.mega-menu .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) > * {
        display: block;
    }

    body:not(.is-expanded-menu) .primary-menu {
        max-width: 100%;
    }

        body:not(.is-expanded-menu) .primary-menu > .container {
            max-width: none;
            padding: 0;
        }

    body:not(.is-expanded-menu) .mega-menu-content .sub-menu-container {
        border-top: var(--cnvs-primary-menu-submenu-border);
    }

        body:not(.is-expanded-menu) .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
            display: block !important;
        }

    body:not(.is-expanded-menu) .mega-menu-content .mega-menu-column {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        padding-right: 0;
    }

    body:not(.is-expanded-menu) .mega-menu-column .widget {
        padding: 30px 0;
    }

    .mega-menu-content .mega-menu-column:first-child {
        border-top: 0;
    }

    /* Off Canvas Menu
-----------------------------------------------------------------*/
    body:not(.is-expanded-menu) #header:not(.sticky-header) .mobile-menu-off-canvas .menu-container {
        position: fixed;
        display: block;
        z-index: 499;
        width: var(--cnvs-mobile-menu-off-canvas-width);
        height: 100%;
        height: 100vh;
        max-height: none !important;
        margin: 0 !important;
        left: 0 !important;
        top: 0 !important;
        padding: 35px 25px 60px !important;
        background-color: var(--cnvs-header-bg);
        border-right: 1px solid var(--cnvs-header-border-color) !important;
        overflow-y: scroll;
        transform: translate(calc(-1 * var(--cnvs-mobile-menu-off-canvas-width)), 0);
        -webkit-backface-visibility: hidden;
        transform-style: preserve-3d;
        transition: 0.3s ease-in-out, opacity 0.2s ease !important;
    }

    @media (prefers-reduced-motion: reduce) {
        body:not(.is-expanded-menu) #header:not(.sticky-header) .mobile-menu-off-canvas .menu-container {
            transition: none;
        }
    }

    body:not(.is-expanded-menu) #header:not(.sticky-header) .mobile-menu-off-canvas .menu-container.d-block {
        transform: translate(0, 0);
    }

    .is-expanded-menu {
        /* ----------------------------------------------------------------
  	Mega Menu
  -----------------------------------------------------------------*/
        /* Sub-Menu On-Click Dropdown */
        /* Primary Menu - Style 2
  -----------------------------------------------------------------*/
        /* Primary Menu - Style 3
  -----------------------------------------------------------------*/
        /* Primary Menu - Style 4
  -----------------------------------------------------------------*/
        /* Primary Menu - Style 5
  -----------------------------------------------------------------*/
        /* Primary Menu - Style 6
  -----------------------------------------------------------------*/
        /* Primary Menu - Sub Title
  -----------------------------------------------------------------*/
        /* ----------------------------------------------------------------
  	Side Header
  -----------------------------------------------------------------*/
        /* Side Header - Push Header
  -----------------------------------------------------------------*/
        /* Side Header - Right Aligned
  -----------------------------------------------------------------*/
        /* Primary Menu - Overlay Menu
  -----------------------------------------------------------------*/
    }

        .is-expanded-menu .menu-container:not(.mobile-primary-menu) {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
        }

        .is-expanded-menu .full-header .primary-menu .menu-container {
            padding-right: 0.5rem;
            margin-right: 0.5rem;
            /*  border-right: 1px solid var(--cnvs-header-border-color); */
        }

        .is-expanded-menu .transparent-header.full-header .primary-menu .menu-container {
            border-right-color: var(--cnvs-header-transparent-border-color);
        }

        .is-expanded-menu .menu-container > .menu-item:not(:first-child) {
            margin-left: 2px;
        }

        .is-expanded-menu .sub-menu-container .sub-menu-container {
            list-style: none;
            top: -2px !important;
            left: 100%;
        }

        .is-expanded-menu .sub-menu-container.menu-pos-invert {
            left: auto;
            right: 0;
        }

        .is-expanded-menu .sub-menu-container .sub-menu-container.menu-pos-invert {
            right: 100%;
        }

        .is-expanded-menu .sub-menu-container .menu-item:not(:first-child) {
            border-top: 0;
        }

        .is-expanded-menu .sub-menu-container .menu-item > .menu-link {
            padding: 10px 15px;
            font-weight: var(--cnvs-primary-menu-submenu-font-weight);
            border: 0;
            transition: all 0.2s ease-in-out;
            color: white;
        }

    @media (prefers-reduced-motion: reduce) {
        .is-expanded-menu .sub-menu-container .menu-item > .menu-link {
            transition: none;
        }
    }

    .is-expanded-menu .sub-menu-container .menu-item:hover > .menu-link {
        background-color: var(--cnvs-primary-menu-submenu-hover-bg);
        font-weight: 500;
    }

    .is-expanded-menu .sub-menu-container .menu-item:hover > .menu-link,
    .is-expanded-menu .sub-menu-container .menu-item.current > .menu-link {
        color: var(--cnvs-primary-menu-submenu-hover-color);
    }

    .is-expanded-menu .menu-link div > i.fa-caret-down {
        top: 0;
        font-size: 0.875rem;
        margin: 0 0 0 0.1875rem;
        opacity: 0.9;
    }

    .is-expanded-menu .sub-menu-container .menu-link div > i.fa-caret-down, .is-expanded-menu.side-header .primary-menu:not(.on-click) .menu-link i.fa-caret-down {
        display: block;
        position: absolute;
        top: 50%;
        right: 0;
        font-size: 0.75rem;
        line-height: 1;
        margin: 0;
        transform: translateY(-50%) rotate(-90deg);
    }

    .is-expanded-menu .menu-item .sub-menu-trigger, .is-expanded-menu.side-header .on-click .sub-menu-container .menu-link i.fa-caret-down:last-child {
        display: none;
    }

    .is-expanded-menu .mega-menu:not(.mega-menu-full) .mega-menu-content .container {
        max-width: none;
        padding: 0 calc(var(--bs-gutter-x) * 0.5) !important;
        margin: 0 auto !important;
    }

    .is-expanded-menu .mega-menu-content {
        margin: 0;
        width: 100%;
        max-width: none;
        left: 50%;
        transform: translateX(-50%);
    }

    .is-expanded-menu .mega-menu-full .mega-menu-content {
        width: 100%;
        left: 0;
        transform: none;
    }

    .is-expanded-menu .floating-header:not(.sticky-header) .mega-menu:not(.mega-menu-small) .mega-menu-content {
        max-width: 100%;
    }

    .is-expanded-menu .sub-menu-container .mega-menu {
        position: relative;
    }

    .is-expanded-menu .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
        position: relative;
        display: block !important;
        visibility: visible !important;
        top: 0 !important;
        left: 0;
        min-width: inherit;
        height: auto !important;
        list-style: none;
        border: 0;
        box-shadow: none;
        background-color: transparent;
        opacity: 1 !important;
        z-index: auto;
    }

    .is-expanded-menu .mega-menu-column {
        display: block !important;
        padding-left: 0;
        padding-right: 0;
    }

    .is-expanded-menu .mega-menu:not(.mega-menu-small) .mega-menu-column {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }
    /*.is-expanded-menu .mega-menu-content:not(.border-0) .sub-menu-container.mega-menu-column:not(:first-child) {
  border-left: var(--cnvs-primary-menu-submenu-border);
}*/

    .is-expanded-menu .on-click .sub-menu-container,
    .is-expanded-menu .on-click .mega-menu-content {
        display: none;
        visibility: visible;
    }

    .is-expanded-menu .on-click .menu-item:not(.mega-menu-small) .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
        display: block;
    }

    .is-expanded-menu.side-header:not(.open-header) #wrapper {
        margin: 0 0 0 var(--cnvs-side-header-width) !important;
        width: auto !important;
    }

    .is-expanded-menu.side-header .container {
        padding-left: var(--cnvs-side-header-padding-gutters);
        padding-right: var(--cnvs-side-header-padding-gutters);
    }

    .is-expanded-menu.side-header #header {
        --cnvs-header-bg: var(--cnvs-side-header-bg);
        position: fixed;
        top: 0;
        left: 0;
        z-index: 10;
        width: var(--cnvs-side-header-width);
        height: 100vh;
        border: none;
        border-right: 1px solid var(--cnvs-header-border-color);
        overflow: hidden;
        box-shadow: 0 0 15px rgba(0, 0, 0, 0.065);
    }

    .is-expanded-menu.side-header #header-wrap {
        position: relative;
        width: calc(var(--cnvs-side-header-width) + 40px);
        height: 100%;
        overflow-x: hidden;
        overflow-y: scroll;
        padding-right: 40px;
    }

        .is-expanded-menu.side-header #header-wrap > .container {
            width: var(--cnvs-side-header-width);
            max-width: none;
            padding: 0 var(--cnvs-side-header-padding-gutters);
            margin: 0 !important;
            min-height: 100%;
            display: flex;
        }

    .is-expanded-menu.side-header .header-wrap-clone {
        display: none;
    }

    .is-expanded-menu.side-header .header-row {
        flex-direction: column;
        flex-grow: 1 !important;
    }

    .is-expanded-menu.side-header #logo {
        margin: 3rem 0;
        width: 100%;
    }

        .is-expanded-menu.side-header #logo img {
            max-width: 100%;
        }

    .is-expanded-menu.side-header .primary-menu {
        margin-bottom: 30px;
        flex-grow: 0 !important;
        width: 100%;
    }

        .is-expanded-menu.side-header .primary-menu:not(.border-bottom-0)::after {
            margin-top: 40px;
        }

    .is-expanded-menu.side-header .menu-container {
        display: block;
        height: auto;
        width: 100%;
    }

    .is-expanded-menu.side-header .on-click .menu-item .sub-menu-trigger {
        display: block;
        top: 0;
        right: -5px;
        font-size: 10px;
    }

    .is-expanded-menu.side-header .primary-menu:not(.on-click) .text-center i.fa-caret-down {
        display: inline-block;
        position: relative;
        top: 2px;
        margin-left: 5px;
        transform: none;
    }

    .is-expanded-menu.side-header .primary-menu:not(.on-click) .text-center .sub-menu-container i.fa-caret-down {
        top: -1px;
    }

    .is-expanded-menu.side-header .menu-item {
        width: 100%;
    }

        .is-expanded-menu.side-header .menu-item:not(:first-child) {
            margin: 10px 0 0;
            border-top: 0;
        }

    .is-expanded-menu.side-header .menu-link {
        position: relative;
        padding: 5px 0 !important;
        margin: 0 !important;
    }

    .is-expanded-menu.side-header .sub-menu-container, .is-expanded-menu.side-header .mega-menu-content {
        position: relative;
        width: 100% !important;
        background-color: transparent;
        box-shadow: none;
        border: none;
        height: auto;
        z-index: 1;
        top: 0;
        left: 0;
        margin: 5px 0;
        padding: 0 0 0 12px !important;
    }

    .is-expanded-menu.side-header .mega-menu-content {
        padding: 0 !important;
        margin-bottom: 0 !important;
    }

    .is-expanded-menu.side-header .mega-menu-column {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        border: none !important;
    }

    .is-expanded-menu.side-header .sub-menu-container .sub-menu-container {
        top: 0 !important;
        left: 0;
    }

    .is-expanded-menu.side-header .sub-menu-container.menu-pos-invert {
        left: 0;
        right: auto;
    }

    .is-expanded-menu.side-header .sub-menu-container .sub-menu-container.menu-pos-invert {
        right: auto;
    }

    .is-expanded-menu.side-header .sub-menu-container .menu-item {
        margin: 0;
        border: 0;
    }

        .is-expanded-menu.side-header .sub-menu-container .menu-item:first-child {
            border-top: 0;
        }

    .is-expanded-menu.side-header .menu-item:hover > .menu-link {
        background-color: transparent !important;
    }

    .is-expanded-menu.side-header .menu-container > .menu-item.sub-menu > .menu-link, .is-expanded-menu.side-header .menu-container > .menu-item.sub-menu:hover > .menu-link {
        background-image: none !important;
    }

    .is-expanded-menu.side-header.open-header #header {
        left: calc(-1 * var(--cnvs-side-header-width));
    }

    .is-expanded-menu.side-header.open-header.side-header-open #header {
        left: 0;
    }

    .is-expanded-menu.side-header.open-header #wrapper {
        left: 0;
    }

    .is-expanded-menu #header-trigger {
        display: none;
    }

    .is-expanded-menu.side-header.open-header #header-trigger {
        --cnvs-header-trigger-size: 2rem;
        --cnvs-header-trigger-offset: 1.5rem;
        display: block;
        position: fixed;
        cursor: pointer;
        top: var(--cnvs-header-trigger-offset);
        left: var(--cnvs-header-trigger-offset);
        z-index: 11;
        font-size: calc(var(--cnvs-header-trigger-size) * 0.5);
        width: var(--cnvs-header-trigger-size);
        height: var(--cnvs-header-trigger-size);
        line-height: calc(var(--cnvs-header-trigger-size) - 2px);
        background-color: var(--cnvs-header-bg);
        border: 1px solid rgba(var(--cnvs-contrast-rgb), 0.1);
        text-align: center;
        border-radius: 2px;
    }

    .is-expanded-menu.side-header.open-header.side-header-open #header-trigger {
        left: calc(var(--cnvs-side-header-width) + var(--cnvs-header-trigger-offset));
    }

        .is-expanded-menu.side-header.open-header #header-trigger i:nth-child(1), .is-expanded-menu.side-header.open-header.side-header-open #header-trigger i:nth-child(2) {
            display: block;
        }

        .is-expanded-menu.side-header.open-header.side-header-open #header-trigger i:nth-child(1), .is-expanded-menu.side-header.open-header #header-trigger i:nth-child(2) {
            display: none;
        }

    .is-expanded-menu.side-header.open-header #header, .is-expanded-menu.side-header.open-header #header-trigger {
        transition: left 0.4s ease;
    }

    @media (prefers-reduced-motion: reduce) {
        .is-expanded-menu.side-header.open-header #header, .is-expanded-menu.side-header.open-header #header-trigger {
            transition: none;
        }
    }

    .is-expanded-menu.overlay-menu:not(.top-search-open) .primary-menu-trigger {
        display: flex;
        opacity: 1;
        pointer-events: auto;
        width: 30px;
        height: 30px;
        line-height: 30px;
    }

    .is-expanded-menu.overlay-menu .primary-menu-trigger {
        z-index: 599;
    }

    .is-expanded-menu.overlay-menu .primary-menu {
        --cnvs-primary-menu-font-size: 0.9375rem;
        position: fixed;
        top: 0;
        left: 0;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        width: 100%;
        height: 100%;
        height: 100vh;
        background-color: var(--cnvs-header-bg);
        background: rgba(255, 255, 255, 0.95);
    }

        .is-expanded-menu.overlay-menu .primary-menu {
            opacity: 0 !important;
            pointer-events: none;
            z-index: -2;
            -webkit-transform: translateY(-80px);
            transform: translateY(-80px);
            transition: opacity 0.4s ease, transform 0.45s ease !important;
        }

    @media (prefers-reduced-motion: reduce) {
        .is-expanded-menu.overlay-menu .primary-menu {
            transition: none;
        }
    }

    .is-expanded-menu.overlay-menu.primary-menu-open .primary-menu {
        opacity: 1 !important;
        pointer-events: auto;
        z-index: 499;
        -webkit-transform: translateY(0);
        transform: translateY(0);
        transition: opacity 0.3s ease, transform 0.45s ease !important;
    }

    @media (prefers-reduced-motion: reduce) {
        .is-expanded-menu.overlay-menu.primary-menu-open .primary-menu {
            transition: none;
        }
    }

    .is-expanded-menu.overlay-menu .primary-menu, .is-expanded-menu.overlay-menu.primary-menu-open .primary-menu {
        -webkit-transform: translateY(0px);
        transform: translateY(0px);
        transition: opacity 0.3s ease !important;
    }

    @media (prefers-reduced-motion: reduce) {
        .is-expanded-menu.overlay-menu .primary-menu, .is-expanded-menu.overlay-menu.primary-menu-open .primary-menu {
            transition: none;
        }
    }

    .is-expanded-menu.overlay-menu .primary-menu > .container {
        max-height: 90%;
        overflow-y: scroll;
    }

    .is-expanded-menu.overlay-menu .menu-container {
        display: -ms-flexbox !important;
        display: flex !important;
        flex-direction: column;
        max-width: 250px;
        padding: 0 !important;
        margin: 0 auto !important;
        border: 0 !important;
    }

    .is-expanded-menu.overlay-menu .menu-item {
        width: 100%;
    }

    .is-expanded-menu.overlay-menu .menu-link {
        --cnvs-primary-menu-padding-y: 10px;
        --cnvs-primary-menu-padding-x: 0;
    }

    .is-expanded-menu.overlay-menu .sub-menu-container, .is-expanded-menu.overlay-menu .mega-menu-content {
        display: none;
        position: relative;
        top: 0 !important;
        left: 0 !important;
        right: auto;
        width: 100%;
        max-width: 100%;
        box-shadow: none;
        background: transparent;
        border: 0;
        padding: 10px 0 !important;
        transform: translateX(0);
    }

        .is-expanded-menu.overlay-menu .mega-menu-content .sub-menu-container {
            padding: 5px 0 !important;
        }

    .is-expanded-menu.overlay-menu .mega-menu-title .sub-menu-container {
        padding-top: 0 !important;
    }

    .is-expanded-menu.overlay-menu .mega-menu-content .mega-menu-column {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        padding-left: 0;
        padding-right: 0;
        border: 0 !important;
    }

    .is-expanded-menu.overlay-menu .sub-menu-container .menu-link {
        padding: 5px 0;
    }

    .is-expanded-menu.overlay-menu .sub-menu-container .menu-item:hover > .menu-link {
        padding-left: 0;
        padding-right: 0;
        background: transparent;
    }

    .is-expanded-menu.overlay-menu .sub-menu-container .menu-link i.fa-caret-down {
        position: relative;
        display: inline-block;
        top: -1px;
        left: 0;
        margin-left: 5px;
        transform: rotate(0deg);
    }
    /* ----------------------------------------------------------------
	Top Search
-----------------------------------------------------------------*/

    /* Top Search Animation */
    body:not(.top-search-open) .top-search-parent #logo,
    body:not(.top-search-open) .top-search-parent .primary-menu {
        opacity: 1;
        transition: padding 0.4s ease, margin 0.4s ease, opacity 0.2s 0.2s ease;
    }

    @media (prefers-reduced-motion: reduce) {
        body:not(.top-search-open) .top-search-parent #logo,
        body:not(.top-search-open) .top-search-parent .primary-menu {
            transition: none;
        }
    }

    .top-search-open .top-search-parent #logo,
    .top-search-open .top-search-parent .primary-menu {
        opacity: 0;
    }

    /* ----------------------------------------------------------------
	Top Cart
-----------------------------------------------------------------*/

    @media (min-width: 992px) {
        #top-cart {
            position: relative;
        }
    }

    /* ----------------------------------------------------------------
	Page Menu
-----------------------------------------------------------------*/
    #page-menu {
        --cnvs-page-submenu-sticky-offset: var(--cnvs-header-height-shrink);
        --cnvs-page-submenu-link-size: 0.875rem;
        --cnvs-page-submenu-link-marging-x: 4px;
        --cnvs-page-submenu-link-marging-y: 10px;
        --cnvs-page-submenu-link-rounded: 14px;
        --cnvs-page-submenu-dropdown-width: 150px;
        --cnvs-page-submenu-trigger: 44px;
        --cnvs-page-dotsmenu-size: 10px;
        --cnvs-page-dotsmenu-gutters: 10px;
        --cnvs-page-dotsmenu-rounded: 50%;
        position: relative;
    }

    #page-menu-wrap {
        position: absolute;
        z-index: 199;
        top: 0;
        left: 0;
        width: 100%;
        background-color: var(--cnvs-themecolor);
        transform: translateZ(0);
        -webkit-backface-visibility: hidden;
    }

    #page-menu.sticky-page-menu #page-menu-wrap {
        position: fixed;
        box-shadow: 0 0 15px rgba(0, 0, 0, 0.3);
    }

    #page-menu.sticky-page-menu:not(.dots-menu) #page-menu-wrap {
        top: var(--cnvs-page-submenu-sticky-offset);
    }

    #page-menu-trigger {
        opacity: 1;
        pointer-events: auto;
        top: 0;
        margin-top: 0;
        left: auto;
        right: 15px;
        width: var(--cnvs-page-submenu-trigger);
        height: var(--cnvs-page-submenu-trigger);
        line-height: var(--cnvs-page-submenu-trigger);
        color: #FFF;
    }

    .page-menu-open #page-menu-trigger {
        background-color: rgba(0, 0, 0, 0.2);
    }

    /* Page Menu - Dots Style
-----------------------------------------------------------------*/
    .is-expanded-pagemenu #page-menu.dots-menu {
        position: fixed;
        top: 50%;
        right: 20px;
        width: 24px;
        line-height: 1.5;
        transform: translateY(-50%);
        z-index: 299;
    }

    .is-expanded-pagemenu .dots-menu #page-menu-wrap {
        position: relative;
        top: 0 !important;
        box-shadow: none;
        background-color: transparent !important;
    }

    .is-expanded-pagemenu .dots-menu .page-menu-wrap-clone {
        display: none;
    }

    .is-expanded-pagemenu .dots-menu .container {
        padding: 0;
    }

    /* ----------------------------------------------------------------
	One Page
-----------------------------------------------------------------*/

    /* ----------------------------------------------------------------
	Side Push Panel
-----------------------------------------------------------------*/
    .side-push-panel {
        overflow-x: hidden;
    }

    #side-panel {
        --cnvs-side-panel-bg: var(--cnvs-contrast-100);
        --cnvs-side-panel-size: 300px;
        --cnvs-side-panel-padding: 50px 70px 50px 40px;
        --cnvs-side-panel-widget-padding: 40px;
        position: fixed;
        top: 0;
        right: calc(-1 * var(--cnvs-side-panel-size));
        z-index: 699;
        width: var(--cnvs-side-panel-size);
        height: 100%;
        background-color: var(--cnvs-side-panel-bg);
        overflow: hidden;
        -webkit-backface-visibility: hidden;
    }

    .side-push-panel.stretched #wrapper, .side-push-panel.stretched .sticky-header .container {
        right: 0;
    }

    #side-panel .widget {
        margin-top: var(--cnvs-side-panel-widget-padding);
        padding-top: var(--cnvs-side-panel-widget-padding);
        width: calc(var(--cnvs-side-panel-size) - 80px);
        border-top: 1px solid var(--cnvs-contrast-200);
    }

        #side-panel .widget:first-child {
            padding-top: 0;
            border-top: 0;
            margin: 0;
        }

    .side-panel-open #side-panel {
        right: 0;
    }

    .side-push-panel.side-panel-open.stretched #wrapper,
    .side-push-panel.side-panel-open.stretched .sticky-header .container {
        right: var(--cnvs-side-panel-size);
    }

    #side-panel,
    .side-push-panel.stretched #wrapper,
    .side-push-panel.stretched #header .container {
        transition: right 0.4s ease;
    }

    @media (prefers-reduced-motion: reduce) {
        #side-panel,
        .side-push-panel.stretched #wrapper,
        .side-push-panel.stretched #header .container {
            transition: none;
        }
    }

    /* ----------------------------------------------------------------

	slider.scss

-----------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Flex Slider
-----------------------------------------------------------------*/
    :root,
    .not-dark {
        --cnvs-slider-caption-font-color: var(--cnvs-contrast-800);
        --cnvs-slider-arrows-bg-color: rgba(0, 0, 0, 0.3);
        --cnvs-slider-arrows-bg-hover-color: rgba(0, 0, 0, 0.6);
        --cnvs-slider-arrow-color: var(--bs-gray-100);
        --cnvs-owl-dots-slider-color: #fff;
    }

    :root {
        --cnvs-fslider-dots-position-top: 14px;
        --cnvs-fslider-dots-position-right: 10px;
        --cnvs-fslider-dots-size: 0.625rem;
        --cnvs-fslider-dots-border-color: #fff;
        --cnvs-fslider-dots-border-radius: 50%;
        --cnvs-fslider-thumbs-gutters: 2px;
        --cnvs-fslider-thumbs-width: 100px;
        --cnvs-canvas-slider-dots-size: 0.625rem;
        --cnvs-slider-pagination-gutters: 4px;
        --cnvs-slider-pagination-rounded: 50%;
        --cnvs-swiper-dots-position-bottom: 20px;
        --cnvs-slider-caption-width: 550px;
        --cnvs-slider-caption-font-size: 1.375rem;
        --cnvs-slider-caption-font-weight: 300;
        --cnvs-slider-caption-transition: top 0.3s ease;
        --cnvs-slider-caption-p-size: 1.5rem;
        --cnvs-slider-caption-offset: 50px;
        --cnvs-slider-caption-bg-light: rgba(255, 255, 255, 0.8);
        --cnvs-slider-caption-bg-dark: rgba(0, 0, 0, 0.6);
        --cnvs-slider-caption-bg-radius: 2px;
        --cnvs-slider-caption-bg-padding: 5px 12px;
        --cnvs-slider-arrows-size: 52px;
        --cnvs-slider-arrows-sm-size: calc(var(--cnvs-slider-arrows-size) - 20px);
        --cnvs-slider-arrows-border-radius: 3px;
        --cnvs-slider-arrow-sm-offset: 20px;
        --cnvs-owl-dots-slider-position: top auto bottom 15px;
    }

    .fslider,
    .fslider .flexslider,
    .fslider .slide,
    .fslider .slide > a,
    .fslider .slide > img,
    .fslider .slide > a > img {
        position: relative;
        display: block;
        width: 100%;
        height: auto;
        overflow: hidden;
        -webkit-backface-visibility: hidden;
    }

        .fslider.h-100 .flexslider,
        .fslider.h-100 .slide,
        .fslider.h-100 .slide > a,
        .fslider.h-100 .slide > a > img {
            height: 100% !important;
        }

            .fslider.h-100 .slide > a > img {
                object-fit: cover;
            }

    .fslider {
        min-height: 32px;
    }

    
    .flexslider a:active,
    .flexslider a:focus {
        outline: none;
        border: none;
    }

    .flexslider {
        position: relative;
        margin: 0;
        padding: 0;
    }

    /* ----------------------------------------------------------------
	Slider
-----------------------------------------------------------------*/
    .slider-element {
        position: relative;
        width: 100%;
        overflow: hidden;
    }

    @media (min-width: 992px) {
        .h-auto .swiper-wrapper,
        .min-vh-0 .swiper-wrapper {
            height: 75vh;
        }
    }

    @media (max-width: 991.98px) {
        #slider {
            display: -ms-flexbox !important;
            display: flex !important;
            flex-direction: column;
            justify-content: center;
        }
    }
    /* Boxed Slider
-----------------------------------------------------------------*/

    /* Swiper Slider
-----------------------------------------------------------------*/
    .swiper_wrapper {
        position: relative;
        width: 100%;
        overflow: hidden;
    }

    .swiper_wrapper .swiper-slide {
        position: relative;
        margin: 0;
        overflow: hidden;
    }

    .slider-element .container,
    .slider-element .container-fluid {
        position: relative;
        height: 100%;
    }

    .slider-element.canvas-slider .swiper-slide img {
        width: 100%;
    }

    .slider-element.canvas-slider a {
        display: block;
        height: 100%;
    }

    .swiper-pagination {
        position: absolute;
        width: 100%;
        z-index: 20;
        margin: 0;
        top: auto;
        bottom: var(--cnvs-swiper-dots-position-bottom) !important;
        text-align: center;
        line-height: 1;
    }

        .swiper-pagination span {
            display: inline-block;
            cursor: pointer;
            width: var(--cnvs-canvas-slider-dots-size);
            height: var(--cnvs-canvas-slider-dots-size);
            margin: 0 var(--cnvs-slider-pagination-gutters);
            opacity: 1;
            background-color: transparent;
            border: 1px solid var(--cnvs-slider-arrow-color);
            border-radius: var(--cnvs-slider-pagination-rounded);
            transition: all 0.3s ease;
        }

    @media (prefers-reduced-motion: reduce) {
        .swiper-pagination span {
            transition: none;
        }
    }

    .swiper-pagination span:hover {
        background-color: var(--cnvs-slider-arrow-color) !important;
    }

    /* Video Overlay
-----------------------------------------------------------------*/

    
    .video-placeholder {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: 5;
        background: transparent url("images/grid.png") repeat;
        transform: translateZ(0);
        -webkit-backface-visibility: hidden;
    }

    .video-placeholder {
        z-index: 4;
        background-repeat: no-repeat !important;
    }

    /* Slider Caption
-----------------------------------------------------------------*/

    /* Slider Arrows
-----------------------------------------------------------------*/

    
    .slider-element .owl-next {
        left: auto;
        right: 0;
        border-radius: var(--cnvs-slider-arrows-border-radius) 0 0 var(--cnvs-slider-arrows-border-radius);
    }

    .slider-element .owl-prev i {
        margin-left: 0;
    }

    .slider-element .owl-next i {
        margin-right: 4px;
    }

    /* Slide Number
-----------------------------------------------------------------*/

    /* Pagination
-----------------------------------------------------------------*/
    .slider-element .owl-dots {
        position: absolute;
        width: 100%;
        z-index: 20;
        margin: 0;
        top: auto;
        bottom: 15px;
    }

        .slider-element .owl-dots button {
            width: var(--cnvs-canvas-slider-dots-size);
            height: var(--cnvs-canvas-slider-dots-size);
            margin: 0 var(--cnvs-slider-pagination-gutters);
            opacity: 1 !important;
            background-color: transparent !important;
            border: var(--cnvs-owl-nav-border);
        }

        .slider-element .owl-dots .owl-dot.active,
        .slider-element .owl-dots .owl-dot:hover {
            background-color: var(--cnvs-owl-nav-background) !important;
        }

    /* Flex Slider - Navigation
-----------------------------------------------------------------*/

    /* Flex Slider - Pagination & Thumbs
-----------------------------------------------------------------*/
    .fslider[data-animation=fade][data-thumbs=true] .flexslider,
    .fslider.testimonial[data-animation=fade] .flexslider {
        height: auto !important;
    }

    /* Flex Slider: Pagination Positions
-----------------------------------------------------------------*/

    /* Flex Slider: Thumbs
-----------------------------------------------------------------*/

    /* FlexSlider: Thumbs - Flexible
-----------------------------------------------------------------*/

    /* ----------------------------------------------------------------
	pagetitle.scss
-----------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Page Title
-----------------------------------------------------------------*/
    :root,
    .not-dark {
        --cnvs-page-title-bg: var(--cnvs-contrast-bg-offset);
        --cnvs-page-title-color: var(--cnvs-contrast-900);
        --cnvs-page-title-border-color: rgba(var(--cnvs-contrast-rgb), 0.1);
    }
    /* ----------------------------------------------------------------

	content.scss

-----------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Content
-----------------------------------------------------------------*/
    #content {
        position: relative;
        background-color: var(--cnvs-body-bg);
    }

    .content-wrap {
        position: relative;
        padding: var(--cnvs-content-padding) 0;
        overflow: hidden;
    }

        .content-wrap .container {
            position: relative;
        }

        .content-wrap p {
            line-height: var(--cnvs-line-height-content);
        }

    .grid-container {
        position: relative;
        overflow: hidden;
        will-change: transform;
    }

    .grid-container {
        transition: height 0.4s ease;
    }

    @media (prefers-reduced-motion: reduce) {
        .grid-container {
            transition: none;
        }
    }

    /* ----------------------------------------------------------------

	portfolio.scss

-----------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Portfolio
-----------------------------------------------------------------*/
    :root,
    .not-dark {
        --cnvs-grid-filter-border-color: rgba(var(--cnvs-contrast-rgb), 0.1);
        --cnvs-portfolio-meta-color: var(--cnvs-contrast-600);
        --cnvs-portfolio-meta-row-1-color: var(--cnvs-heading-color);
    }

    /* Grid - Filter
-----------------------------------------------------------------*/

    /* Portfolio - Shuffle Icon
-----------------------------------------------------------------*/

    /* Portfolio - Items
-----------------------------------------------------------------*/
    .portfolio,
    [class*=portfolio-] {
        --cnvs-portfolio-desc-padding-x: 5px;
        --cnvs-portfolio-desc-padding-y: 20px;
        --cnvs-portfolio-desc-title-size: 1.25rem;
        --cnvs-portfolio-modal-padding: 40px;
        --cnvs-portfolio-ajax-height: 1500px;
        --cnvs-portfolio-meta-font-size: 0.875rem;
        --cnvs-portfolio-meta-color: var(--cnvs-contrast-600);
        --cnvs-portfolio-meta-row-1: 150px;
        --cnvs-portfolio-meta-row-1-color: var(--cnvs-heading-color);
        --cnvs-portfolio-meta-icon: 14px;
        --cnvs-portfolio-navigation-size: 24px;
    }

    .portfolio {
        position: relative;
        transition: height 0.4s linear;
    }

    @media (prefers-reduced-motion: reduce) {
        .portfolio {
            transition: none;
        }
    }
    /* Portfolio - Item Title
-----------------------------------------------------------------*/

    /* Portfolio - Parallax
-----------------------------------------------------------------*/

    /* Portfolio Single - Image
-----------------------------------------------------------------*/

    /* Masonry Thumbs
-----------------------------------------------------------------*/

    /* Portfolio Single - Content
-----------------------------------------------------------------*/

    .modal-padding {
        --cnvs-portfolio-modal-padding: 40px;
        padding: var(--cnvs-portfolio-modal-padding);
    }

    #portfolio-ajax-wrap {
        position: relative;
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.4s ease;
    }

    @media (prefers-reduced-motion: reduce) {
        #portfolio-ajax-wrap {
            transition: none;
        }
    }

    #portfolio-ajax-wrap.portfolio-ajax-opened {
        max-height: var(--cnvs-portfolio-ajax-height);
    }

    #portfolio-ajax-container {
        display: none;
        padding-bottom: 60px;
    }

    #portfolio-ajax-single {
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.6s ease;
    }

    .portfolio-ajax-opened #portfolio-ajax-single {
        opacity: 1;
        pointer-events: auto;
    }

    /* Portfolio Single - Meta
-----------------------------------------------------------------*/

    /* Portfolio Single Navigation
-----------------------------------------------------------------*/
    #portfolio-navigation {
        position: absolute;
        top: 50%;
        left: auto;
        right: 10px;
        max-width: calc(var(--cnvs-portfolio-navigation-size) * 4);
        height: var(--cnvs-portfolio-navigation-size);
        margin-top: calc(var(--cnvs-portfolio-navigation-size) * -0.5);
    }

    #portfolio-navigation a {
        display: block;
        float: left;
        margin-left: calc(var(--cnvs-portfolio-navigation-size) * 0.5);
        width: var(--cnvs-portfolio-navigation-size);
        height: var(--cnvs-portfolio-navigation-size);
        text-align: center;
        color: var(--cnvs-contrast-900);
        transition: color 0.3s linear;
    }

    @media (prefers-reduced-motion: reduce) {
        #portfolio-navigation a {
            transition: none;
        }
    }

    #portfolio-navigation a:first-child {
        margin-left: 0;
    }

    #portfolio-navigation a:hover {
        color: var(--cnvs-themecolor);
    }

    /* ----------------------------------------------------------------

	blog.scss

-----------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Blog
-----------------------------------------------------------------*/
    :root,
    .not-dark {
        --cnvs-post-title-font-color: var(--cnvs-heading-color);
        --cnvs-post-meta-color: var(--cnvs-contrast-600);
        --cnvs-post-entry-link-bg: var(--cnvs-contrast-100);
        --cnvs-post-entry-link-color: var(--cnvs-heading-color);
        --cnvs-post-timeline-border-color: var(--cnvs-contrast-400);
        --cnvs-post-timeline-date-border-color: var(--cnvs-contrast-400);
    }

    
    .entry {
        --cnvs-post-item-margin: 50px;
        --cnvs-post-image-size: 100%;
        --cnvs-post-image-rounded: 3px;
        --cnvs-post-image-mb: 1.5rem;
        --cnvs-post-sm-image: 64px;
        --cnvs-post-title-font-size: 1.75rem;
        --cnvs-post-title-font-weight: 600;
        --cnvs-post-title-font-spacing: 0;
        --cnvs-post-title-text-transform: none;
        --cnvs-post-title-font-color: var(--cnvs-heading-color);
        --cnvs-post-meta-seperator: ⁞;
        --cnvs-post-meta-seperator-width: 0.25rem;
        --cnvs-post-meta-margin: 1rem;
        --cnvs-post-meta-color: var(--cnvs-contrast-600);
        --cnvs-post-meta-fontsize: 90%;
        --cnvs-post-meta-iconsize: 1rem;
        --cnvs-post-content-margin: 2rem;
        --cnvs-post-entry-link-bg: var(--cnvs-contrast-100);
        --cnvs-post-entry-link-padding: 2rem 0;
        --cnvs-post-entry-link-color: var(--cnvs-heading-color);
        --cnvs-post-entry-link-font-family: var(--cnvs-primary-font);
        --cnvs-post-entry-link-text-transform: none;
        --cnvs-post-entry-link-letter-spacing: 0;
        --cnvs-post-entry-link-font-size: 1.5rem;
        --cnvs-post-entry-link-font-weight: 600;
        --cnvs-post-entry-link-border-radius: 3px;
        position: relative;
    }

    .entry {
        margin-bottom: var(--cnvs-post-item-margin);
    }

    .entry::after {
        content: "";
        position: relative;
        height: 2px;
        margin-top: var(--cnvs-post-item-margin);
        background-color: var(--cnvs-contrast-100);
    }

    .entry blockquote p {
        font-weight: 400;
        font-family: var(--cnvs-secondary-font);
        font-style: italic;
    }

    /* Blog - Grid
-----------------------------------------------------------------*/

    /* Blog - Timeline
-----------------------------------------------------------------*/
    .post-timeline {
        --cnvs-post-timeline-border-style: dashed;
        --cnvs-post-timeline-border-color: var(--cnvs-contrast-400);
        --cnvs-post-timeline-date-size: 0.75rem;
        --cnvs-post-timeline-date-border: 2px;
        --cnvs-post-timeline-date-border-color: var(--cnvs-contrast-400);
    }

    @media (min-width: 992px) {
        .post-timeline .entry:not(.entry-date-section) {
            padding-right: 85px;
        }
    }

    @media (min-width: 992px) {
        .post-timeline .entry.alt:not(.entry-date-section) {
            padding-right: inherit;
            padding-left: 85px;
        }
    }

    @media (min-width: 992px) {
        /* Blog - Timeline - Sidebar
  -----------------------------------------------------------------*/
    }

    /* ----------------------------------------------------------------
	Comments List
-----------------------------------------------------------------*/
    #comments {
        position: relative;
        margin-top: 3rem;
        padding-top: 3rem;
        border-top: 1px solid var(--cnvs-contrast-100);
    }

    /* ----------------------------------------------------------------
	Comment Form
-----------------------------------------------------------------*/

    /* Post Elements
-----------------------------------------------------------------*/
    img.alignleft,
    div.alignleft {
        float: left;
        margin: 5px 20px 13px 0;
        max-width: 100%;
    }

        div.alignleft > img,
        div.alignnone > img,
        div.aligncenter > img,
        div.alignright > img {
            display: block;
            float: none;
        }

    img.alignnone,
    img.aligncenter,
    div.alignnone,
    div.aligncenter {
        display: block;
        margin: 10px 0;
        float: none;
    }

        img.aligncenter,
        div.aligncenter,
        div.aligncenter img {
            margin-left: auto;
            margin-right: auto;
            clear: both;
        }

    img.alignright,
    div.alignright {
        float: right;
        margin: 5px 0 13px 20px;
    }

    /* ----------------------------------------------------------------

	shop.scss

-----------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Shop
-----------------------------------------------------------------*/
    :root,
    .not-dark {
        --cnvs-cart-quantity-bg: var(--cnvs-contrast-200);
        --cnvs-cart-quantity-color: var(--cnvs-contrast-800);
        --cnvs-cart-quantity-color-hover: var(--cnvs-cart-quantity-color);
        --cnvs-cart-quantity-border-color: rgba(var(--cnvs-contrast-rgb), 0.1);
        --cnvs-cart-quantity-bg-hover: var(--cnvs-contrast-300);
    }

     .product {
        position: relative;
    }

    /* Shop - Single
-----------------------------------------------------------------*/

    .quantity {
        --cnvs-cart-quantity-width: 50px;
        --cnvs-cart-quantity-height: 44px;
        --cnvs-cart-quantity-font-size: 1rem;
        --cnvs-cart-quantity-border: 1px;
        --cnvs-cart-quantity-bg: var(--cnvs-contrast-200);
        --cnvs-cart-quantity-color: var(--cnvs-contrast-800);
        --cnvs-cart-quantity-color-hover: var(--cnvs-cart-quantity-color);
        --cnvs-cart-quantity-border-color: rgba(var(--cnvs-contrast-rgb), 0.1);
        --cnvs-cart-quantity-bg-hover: var(--cnvs-contrast-300);
        display: inline-flex;
        justify-content: center;
        align-items: stretch;
        flex-wrap: wrap;
        margin-right: 30px;
    }

        .quantity input[type=number]::-webkit-inner-spin-button,
        .quantity input[type=number]::-webkit-outer-spin-button {
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
            margin: 0;
        }

        .quantity .plus,
        .quantity .minus {
            display: block;
            cursor: pointer;
            border: 0px transparent;
            padding: 0;
            width: calc(var(--cnvs-cart-quantity-width) - var(--cnvs-cart-quantity-border) * 4);
            height: var(--cnvs-cart-quantity-height);
            line-height: var(--cnvs-cart-quantity-height);
            text-align: center;
            background-color: var(--cnvs-cart-quantity-bg);
            color: var(--cnvs-cart-quantity-color);
            font-size: var(--cnvs-cart-quantity-font-size);
            font-weight: bold;
            transition: background-color 0.2s linear;
        }

    @media (prefers-reduced-motion: reduce) {
        .quantity .plus,
        .quantity .minus {
            transition: none;
        }
    }

    .quantity .plus:hover,
    .quantity .minus:hover {
        background-color: var(--cnvs-cart-quantity-bg-hover);
        color: var(--cnvs-cart-quantity-color-hover);
    }

    
    .quantity .plus:focus,
    .quantity .minus:focus {
        box-shadow: none !important;
        outline: 0 !important;
    }

    /* ----------------------------------------------------------------
	Cart
-----------------------------------------------------------------*/

    @media (max-width: 575.98px) {

        
        .quantity .plus,
        .quantity .minus {
            font-size: 0.875rem;
        }
    }

    td.actions {
        padding: 20px 15px !important;
        vertical-align: top !important;
        background-color: var(--cnvs-contrast-100);
    }

    /* ----------------------------------------------------------------

	event.scss

-----------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Events
-----------------------------------------------------------------*/

    /*-----------------------------------------------------------------------------------
	shortcodes
-----------------------------------------------------------------------------------*/
    /*-----------------------------------------------------------------------------------

	Shortcodes: countdown.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------

	Countdown

-----------------------------------------------------------------*/
    .countdown {
        --cnvs-countdown-size: 1.25rem;
        --cnvs-countdown-section: 11px;
        --cnvs-countdown-md-size: 30px;
        --cnvs-countdown-md-section: 0.875rem;
        --cnvs-countdown-lg-size: 44px;
        --cnvs-countdown-lg-section: 18px;
        --cnvs-countdown-border: 1px dotted var(--cnvs-contrast-500);
        --cnvs-countdown-inline-space: 7px;
        --cnvs-countdown-large: 140px;
        position: relative;
        display: block;
        /* Countdown - Inline
  -----------------------------------------------------------------*/
    }

    /* Countdown - Coming Soon
-----------------------------------------------------------------*/
    /*-----------------------------------------------------------------------------------

	Shortcodes: buttons.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Buttons
-----------------------------------------------------------------*/
    .button {
        --cnvs-btn-padding-x: 1.375rem;
        --cnvs-btn-padding-y: 0.5rem;
        --cnvs-btn-fontsize: 1rem;
        --cnvs-btn-color: var(--cnvs-themecolor);
        --cnvs-btn-color-dark: #333;
        --cnvs-btn-color-light: #e9ecef;
        --cnvs-btn-color-hover: var(--cnvs-btn-color-dark);
        --cnvs-btn-lineheight: calc(var(--cnvs-btn-fontsize) * 1.6);
        --cnvs-btn-border-width: 1px;
        display: inline-block;
        position: relative;
        cursor: pointer;
        outline: none;
        white-space: nowrap;
        margin: 5px;
        padding: var(--cnvs-btn-padding-y) var(--cnvs-btn-padding-x);
        font-size: var(--cnvs-btn-fontsize);
        line-height: var(--cnvs-btn-lineheight);
        text-align: center;
        background-color: var(--cnvs-btn-color);
        color: #fff;
        font-weight: 500;
        border: var(--cnvs-btn-border-width) solid transparent;
        transition: all 0.2s ease-in-out;
        border-radius: 23px;
        /* Buttons - Border
  -----------------------------------------------------------------*/
        /* Buttons - 3D
  -----------------------------------------------------------------*/
        /* Buttons - Icon Reveal
  -----------------------------------------------------------------*/
    }

        .button i {
            position: relative;
            margin-right: 10px;
            width: 1rem;
            text-align: center;
        }

        .button.text-end i {
            margin: 0 0 0 10px;
        }

    @media (prefers-reduced-motion: reduce) {
        .button {
            transition: none;
        }
    }

    .button.button-light {
        --cnvs-btn-color: var(--cnvs-btn-color-light);
        color: var(--cnvs-btn-color-dark);
    }

    .button:hover {
        background-color: var(--cnvs-btn-color-dark);
        color: #fff;
    }

    .button.button-small {
        --cnvs-btn-padding-x: 1.125rem;
        --cnvs-btn-padding-y: 0.5rem;
        --cnvs-btn-fontsize: 0.875rem;
    }

    .button.button-large {
        --cnvs-btn-padding-x: 1.625rem;
        --cnvs-btn-padding-y: 0.5rem;
        --cnvs-btn-fontsize: 1.125rem;
    }

    /* Buttons - Promo 100% Width
-----------------------------------------------------------------*/

    /* Buttons - Circle
-----------------------------------------------------------------*/

    /* Buttons - Flat
-----------------------------------------------------------------*/

    /* Buttons - Action
-----------------------------------------------------------------*/

    /* Buttons - Fill Effect
-----------------------------------------------------------------*/

    /* Buttons - Fill Effect
-----------------------------------------------------------------*/

    /* Buttons - Colors
-----------------------------------------------------------------*/

    .button-yellow {
        --cnvs-btn-color: #ecd078;
    }

    .button-light.button-yellow {
        --cnvs-btn-color: #ecd078;
    }

    .button-white {
        --cnvs-btn-color: var(--bs-gray-100);
    }

    .button[class*=gradient-] {
        border: 0;
    }

    /* Buttons - No Hover
-----------------------------------------------------------------*/

    /* Buttons - States
-----------------------------------------------------------------*/
    .button.disabled, .button:disabled {
        opacity: 0.65 !important;
        pointer-events: none !important;
    }

    /*-----------------------------------------------------------------------------------

	Shortcodes: promo.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Promo Boxes
-----------------------------------------------------------------*/

    /*-----------------------------------------------------------------------------------

	Shortcodes: feature-box.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Featured Boxes
-----------------------------------------------------------------*/

    /* Animated Icon Hovers
-----------------------------------------------------------------*/

    /* Icon Effects - Bordered
-----------------------------------------------------------------*/

    /* Media Featured Box
-----------------------------------------------------------------*/

    /*-----------------------------------------------------------------------------------

	Shortcodes: process-steps.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Process Steps
-----------------------------------------------------------------*/

    /*-----------------------------------------------------------------------------------

	Shortcodes: alerts.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Alerts
-----------------------------------------------------------------*/

    .alert i {
        position: relative;
        top: 1px;
        font-size: 0.875rem;
        width: 0.875rem;
        text-align: center;
        margin-right: 5px;
    }

    /*-----------------------------------------------------------------------------------

	Shortcodes: styled-icons.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Styled Icons
-----------------------------------------------------------------*/
    [class^=i-] {
        --cnvs-i-size: 3.25rem;
        --cnvs-i-border: 1px;
        --cnvs-i-fontsize: calc( var(--cnvs-i-size) / 2.666666 );
        --cnvs-i-color: var(--cnvs-contrast-900);
        --cnvs-i-bg-color: transparent;
    }

    /* Icon Size - Small
-----------------------------------------------------------------*/

    /* Icon Size - Small
-----------------------------------------------------------------*/

    /* Icon Size - Large
-----------------------------------------------------------------*/

    /* Icon Size - Extra Large
-----------------------------------------------------------------*/

    /* Icon Size - Extra Extra Large
-----------------------------------------------------------------*/

    /* Icon Lists
-----------------------------------------------------------------*/

    /*-----------------------------------------------------------------------------------

	Shortcodes: social-icons.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Social Icons
-----------------------------------------------------------------*/

    /* Social Icons - Group
-----------------------------------------------------------------*/
    [class*=-flex],
    [class*=row] {
        --cnvs-socialicon-gap: 5px;
        --cnvs-socialicon-gap-x: var(--cnvs-socialicon-gap);
        --cnvs-socialicon-gap-y: 0px;
    }

    /* Social Icons - Sticky
-----------------------------------------------------------------*/

    /* Social Icons - colors
-----------------------------------------------------------------*/

    /*-----------------------------------------------------------------------------------

	Shortcodes: toggles-accordions.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Toggle
-----------------------------------------------------------------*/
    .toggle,
    .accordion {
        --cnvs-toggle-base-color: var(--cnvs-heading-color);
        --cnvs-toggle-font-size: 1rem;
        --cnvs-toggle-border-size: 1px;
        --cnvs-toggle-border-color: var(--cnvs-contrast-400);
        --cnvs-toggle-border-radius: 4px;
        --cnvs-toggle-bg-color: var(--cnvs-contrast-100);
        --cnvs-toggle-title-color: var(--cnvs-heading-color);
        --cnvs-toggle-content-padding: 0.75rem;
        display: block;
        position: relative;
        margin: 0 0 20px 0;
    }

    
    .accordion-header {
        position: relative;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 -5px;
        cursor: pointer;
        color: white;
        font-size: 20px;
        font-weight: 700;
    }

    
    .accordion-title {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%;
        padding: 0 0.25rem;
    }

    
    .accordion-content {
        display: none;
        position: relative;
        padding: var(--cnvs-toggle-content-padding) 0;
    }

    /* Toggle - with Title Background
-----------------------------------------------------------------*/

    /* Toggle - Bordered
-----------------------------------------------------------------*/

    /* Toggle - FAQs
-----------------------------------------------------------------*/

    /* ----------------------------------------------------------------
	Accordions
-----------------------------------------------------------------*/
    .accordion {
        --cnvs-accordion-border-size: 1px;
        --cnvs-accordion-border-color: var(--cnvs-contrast-300);
        --cnvs-toggle-content-padding: 0.75rem;
        --cnvs-accordion-content-padding: 1.5rem;
        border-bottom: 1px thin yellow;
        margin-bottom: 20px;
    }

    .accordion-header {
        padding: var(--cnvs-toggle-content-padding) 0;
        border-top: 1px solid yellow;
        border-color: rgba(246, 200, 85, .3);
        cursor: pointer;
    }

        .accordion-header:first-child {
            border-top: none;
        }

    .accordion:not([data-collapsible=true]) .accordion-header.accordion-active {
        cursor: auto;
    }

    .accordion-content {
        padding-top: 0;
        padding-bottom: var(--cnvs-toggle-content-padding);
    }

    /* Accordion - with Title Background
-----------------------------------------------------------------*/

    /* Accordion - Bordered
-----------------------------------------------------------------*/
    .accordion-border {
    }

        .accordion-border .accordion-header {
            padding: var(--cnvs-toggle-content-padding);
            margin: 0;
        }

        .accordion-border .accordion-content {
            padding: 1rem 1.125rem 2rem;
        }

    /* Accordion - Large
-----------------------------------------------------------------*/

    /*-----------------------------------------------------------------------------------

	Shortcodes: tabs.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Tabs
-----------------------------------------------------------------*/
    .tabs {
        --cnvs-tab-base-color: var(--cnvs-heading-color);
        --cnvs-tab-padding-width: 15px;
        --bs-nav-link-font-size: 1rem;
        --bs-nav-link-font-weight: 400;
        --bs-nav-tabs-border-width: 1px;
        --bs-nav-tabs-border-color: rgb(var(--cnvs-contrast-rgb), 0.075);
        --bs-nav-tabs-link-hover-border-color: transparent;
        --cnvs-tabs-bg-color: var(--cnvs-contrast-bg-offset);
        --cnvs-tabs-active-bg-color: var(--cnvs-contrast-bg);
        --cnvs-tabs-active-color: var(--cnvs-themecolor);
        --cnvs-tab-container-padding: 20px;
        --cnvs-side-tab-width: 200px;
        --cnvs-sidenav-font-size: 1rem;
        --cnvs-sidenav-border: 1px;
        --cnvs-sidenav-radius: 4px;
        --cnvs-sidenav-icon-margin: 6px;
        --cnvs-sidenav-padding-height: 11px;
        --cnvs-sidenav-padding-width: 20px;
        --cnvs-sidenav-border-color: rgba(var(--cnvs-contrast-rgb), 0.1);
        --cnvs-sidenav-font-color: var(--cnvs-heading-color);
        position: relative;
    }

    /* Bootstrap Tabs */

    /* Tab Icons */

    [role=tablist] a.active {
        border-color: var(--cnvs-themecolor);
        background-color: var(--cnvs-themecolor);
        color: var(--cnvs-contrast-0);
    }

    /* Tab Bordered */

    .canvas-tabs {
        --bs-nav-link-padding-x: 1.5rem;
        --bs-nav-tabs-border-width: 1px;
        --bs-nav-tabs-border-color: rgb(var(--cnvs-contrast-rgb), 0.075);
        --bs-nav-tabs-border-radius: 0;
        --bs-nav-link-color: var(--cnvs-heading-color);
        --bs-nav-link-hover-color: var(--cnvs-heading-color);
        padding: 0 var(--cnvs-tab-padding-width);
    }

        .canvas-tabs.flex-column {
            --bs-nav-link-padding-y: .75rem;
            padding: var(--cnvs-tab-padding-width) 0;
            border-bottom: 0;
            border-right: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);
        }

    .canvas-alt-tabs {
        --bs-nav-tabs-border-radius: 0;
        --bs-nav-link-color: var(--cnvs-tab-base-color);
        --bs-nav-link-hover-color: var(--cnvs-tab-base-color);
        --bs-nav-link-padding-x: 1.5rem;
        --bs-nav-tabs-link-active-bg: var(--cnvs-contrast-bg);
        --bs-nav-tabs-link-active-color: var(--cnvs-themecolor);
        --bs-nav-tabs-link-active-border-color: var(--bs-nav-tabs-border-color) var(--bs-nav-tabs-border-color) var(--cnvs-contrast-bg);
        padding: 0 var(--cnvs-tab-padding-width);
    }

    .canvas-alt-tabs2 {
        --bs-nav-pills-link-active-bg: var(--cnvs-themecolor);
        --bs-nav-pills-border-radius: 2px;
        --bs-nav-link-hover-color: var(--cnvs-tab-base-color);
        --bs-nav-link-padding-x: 1.5rem;
    }

    @media (max-width: 575.98px) {
        .tabs {
            flex-direction: column;
            border-bottom: 0;
            padding: 0;
        }

            .tabs.canvas-alt-tabs {
                --bs-nav-tabs-link-active-color: var(--cnvs-themecolor);
            }
    }
    /*-----------------------------------------------------------------------------------

	Shortcodes: faqs.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	FAQ List
-----------------------------------------------------------------*/

    /*-----------------------------------------------------------------------------------

	Shortcodes: clients.scss

-----------------------------------------------------------------------------------*/

    /* ----------------------------------------------------------------
	Clients
-----------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Testimonials
-----------------------------------------------------------------*/
    /* Testimonials - Grid
-----------------------------------------------------------------*/

    /* Testimonial - Pagination
-----------------------------------------------------------------*/

    /* Testimonial - Full Scroller
-----------------------------------------------------------------*/

    /*-----------------------------------------------------------------------------------

	Shortcodes: team.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Team
-----------------------------------------------------------------*/
    .team {
        --cnvs-team-base-color: var(--cnvs-heading-color);
        --cnvs-team-desc-align: center;
        --cnvs-team-desc-background: var(--cnvs-contrast-0);
        --cnvs-team-desc-padding: 10px 0 30px;
        --cnvs-team-title-font-size: 1.25rem;
        --cnvs-team-title-designation-font-size: 1rem;
        --cnvs-team-title-designation-font-color: var(--cnvs-themecolor);
        --cnvs-team-title-designation-font-family: var(--cnvs-secondary-font);
        --cnvs-team-title-designation-font-weight: 400;
        --cnvs-team-title-designation-font-style: italic;
        --cnvs-team-title-designation-icon-width: 32px;
        --cnvs-team-title-designation-icon-size: 14px;
        --cnvs-team-overlay-color: #fff;
        --cnvs-team-overlay-opacity: 0.75;
        --cnvs-team-list-image-width: 250px;
        --cnvs-team-content-font-size:;
        --cnvs-team-content-font-color: var(--cnvs-contrast-600);
        position: relative;
        /* Team Center
  -----------------------------------------------------------------*/
        /* Team List
  -----------------------------------------------------------------*/
    }

    /*-----------------------------------------------------------------------------------

	Shortcodes: pricing.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Pricing Boxes
-----------------------------------------------------------------*/
    
    [class*=pricing-] {
        --cnvs-pricing-base-color: var(--cnvs-heading-color);
        --cnvs-pricing-background: var(--cnvs-contrast-100);
        --cnvs-pricing-border-size: 1px;
        --cnvs-pricing-border-color: rgba(var(--cnvs-contrast-rgb), 0.075);
        --cnvs-pricing-border-radius: 3px;
        --cnvs-pricing-title-padding: 1rem;
        --cnvs-pricing-title-bg: var(--cnvs-contrast-100);
        --cnvs-pricing-title-border: 1px solid rgba(var(--cnvs-contrast-rgb), 0.075);
        --cnvs-pricing-title-font-size: 1.5rem;
        --cnvs-pricing-title-font-weight: bold;
        --cnvs-pricing-title-font-spacing: 1px;
        --cnvs-pricing-title-font-transform: uppercase;
        --cnvs-pricing-title-font-color: var(--cnvs-heading-color);
        --cnvs-pricing-price-padding: 1.5rem;
        --cnvs-pricing-price-color: var(--cnvs-contrast-900);
        --cnvs-pricing-price-font-size: 4rem;
        --cnvs-pricing-price-bottom-border-width: 100px;
        --cnvs-pricing-price-bottom-border-size: 1px solid rgba(var(--cnvs-contrast-rgb), 0.1);
        --cnvs-pricing-price-currency-icon: 1.74rem;
        --cnvs-pricing-price-month: 0.99354rem;
        --cnvs-pricing-features-padding: 2rem;
        --cnvs-pricing-features-font-padding: 0.375rem;
        --cnvs-pricing-features-font-size: 0.875rem;
        --cnvs-pricing-popular-bg: var(--cnvs-contrast-100);
        --cnvs-pricing-popular-title-padding: 1.25rem;
        --cnvs-pricing-popular-font-color: var(--cnvs-themecolor);
        --cnvs-pricing-popular-title-font-size: 1.5rem;
        --cnvs-pricing-popular-pricing-font-size: 4.5rem;
        --cnvs-pricing-popular-box-shadow: 0 0 8px rgba(var(--cnvs-contrast-rgb), 0.1);
        --cnvs-pricing-minimal-bg: var(--cnvs-contrast-0);
        --cnvs-pricing-extended-padding: 30px;
    }

    /*-----------------------------------------------------------------------------------

	Shortcodes: counter-skills.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Counter
-----------------------------------------------------------------*/
    .counter {
        --cnvs-counter-font-size: 42px;
        --cnvs-counter-font-weight: 700;
        --cnvs-counter-font-family: var(--cnvs-primary-font);
        --cnvs-counter-caption-size: 0.875rem;
        --cnvs-counter-sm-font-size: 28px;
        --cnvs-counter-lg-font-size: 56px;
        --cnvs-counter-xl-font-size: 64px;
        --cnvs-counter-lined-size: 2px solid var(--cnvs-heading-color);
        --cnvs-counter-lined-width: 15%;
        font-size: var(--cnvs-counter-font-size);
        font-weight: var(--cnvs-counter-font-weight);
        font-family: var(--cnvs-counter-font-family);
    }

        .counter + h5, .counter + .h5 {
            font-weight: 400;
            text-transform: uppercase;
            letter-spacing: 1px;
        }

    .widget .counter + h5, .widget .counter + .h5 {
        opacity: 0.7;
    }

    /* ----------------------------------------------------------------
	Animated Rounded Skills
-----------------------------------------------------------------*/

    /* ----------------------------------------------------------------
	Skills Bar
-----------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Skills Bar
-----------------------------------------------------------------*/

    .skill-progress-vertical {
        --cnvs-progress-width: 50px;
        --cnvs-progress-height: 300px;
    }

    /*-----------------------------------------------------------------------------------

	Shortcodes: carousels.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Owl Carousel CSS
-----------------------------------------------------------------*/

    @-webkit-keyframes fadeout {
        0% {
            opacity: 1;
        }

        100% {
            opacity: 0;
        }
    }

    @keyframes fadeout {
        0% {
            opacity: 1;
        }

        100% {
            opacity: 0;
        }
    }

    .owl-height {
        transition: height 500ms ease-in-out;
    }

    @media (prefers-reduced-motion: reduce) {
        .owl-height {
            transition: none;
        }
    }

    /* Owl Carousel - Controls
-----------------------------------------------------------------*/

        /* Owl Carousel - Controls - Arrows
-----------------------------------------------------------------*/

    .slider-element .owl-nav [class*=owl-] {
        margin-top: -30px;
        left: 0 !important;
        height: calc(var(--cnvs-owl-full-nav-sizes) * 2.143);
        line-height: calc(var(--cnvs-owl-full-nav-sizes) * 2.143);
        border: none;
        color: var(--cnvs-owl-full-nav-color);
        background-color: var(--cnvs-owl-full-nav-bgcolor);
        font-size: var(--cnvs-owl-full-nav-sizes);
        border-radius: 0 var(--cnvs-owl-full-nav-border-radius) var(--cnvs-owl-full-nav-border-radius) 0;
    }

    .slider-element .owl-nav .owl-next {
        left: auto !important;
        right: 0 !important;
        border-radius: var(--cnvs-owl-full-nav-border-radius) 0 0 var(--cnvs-owl-full-nav-border-radius);
    }

    /* Owl Carousel - Controls - Dots
-----------------------------------------------------------------*/

    /* Owl Carousel - Controls - Dots - Positions
-----------------------------------------------------------------*/

    /* Owl Carousel - Controls - Dots - Sizes
-----------------------------------------------------------------*/

    /* Owl Carousel - Controls - Dots - Border
-----------------------------------------------------------------*/

    /* Owl Carousel - Controls - Dots - square
-----------------------------------------------------------------*/

    /* Owl Carousel - Controls - Dots - square
-----------------------------------------------------------------*/

    /* Owl Carousel - Controls - Dots - Dashed
-----------------------------------------------------------------*/

    /* Owl Carousel - Controls - Dots - Numbers
-----------------------------------------------------------------*/

    /* Owl Carousel - Controls - Arrows - Sizes
-----------------------------------------------------------------*/

    .slider-element .owl-nav .owl-next {
        left: auto !important;
        right: 0 !important;
    }

    .slider-element .owl-nav [class*=owl-] {
        margin-top: -30px;
        height: calc(var(--cnvs-owl-nav-sizes) * 1.6666666667);
        line-height: calc(var(--cnvs-owl-nav-sizes) * 1.6666666667);
        font-size: calc(var(--cnvs-owl-nav-sizes) * 1.6666666667 / 2);
    }

    /* ----------------------------------------------------------------

	Flip Cards

-----------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Flip Cards
-----------------------------------------------------------------*/

    /*-----------------------------------------------------------------------------------

	Shortcodes: headings.scss

-----------------------------------------------------------------------------------*/
    /* Titular
-----------------------------------------------------------------*/

    /* Block Titles
-----------------------------------------------------------------*/

    /* Heading Block - with Subtitle
-----------------------------------------------------------------*/
    .heading-block {
        --cnvs-heading-block-font-size-h1: 2.5rem;
        --cnvs-heading-block-font-size-h2: 2.125rem;
        --cnvs-heading-block-font-size-h3: 1.875rem;
        --cnvs-heading-block-font-size-h4: 1.375rem;
        --cnvs-heading-block-font-weight: 600;
        --cnvs-heading-block-font-spacing: 0;
        --cnvs-heading-block-font-color: var(--cnvs-heading-color);
        --cnvs-heading-block-font-transform: none;
        --cnvs-heading-block-center-container: 700px;
        --cnvs-title-block-border-size: 40px;
        --cnvs-heading-block-border: 2px solid var(--cnvs-heading-color);
        --cnvs-heading-block-span-color: var(--cnvs-contrast-600);
        margin-bottom: 50px;
    }

        .heading-block h1, .heading-block .h1,
        .heading-block h2,
        .heading-block .h2,
        .heading-block h3,
        .heading-block .h3,
        .heading-block h4,
        .heading-block .h4 {
            margin-bottom: 0;
            font-weight: var(--cnvs-heading-block-font-weight);
            text-transform: var(--cnvs-heading-block-font-transform);
            letter-spacing: var(--cnvs-heading-block-font-spacing);
            color: var(--cnvs-heading-block-font-color);
        }

        .heading-block h1, .heading-block .h1 {
            font-size: var(--cnvs-heading-block-font-size-h1);
        }

        .heading-block h2, .heading-block .h2 {
            font-size: var(--cnvs-heading-block-font-size-h2);
        }

        .heading-block h3, .heading-block .h3 {
            font-size: var(--cnvs-heading-block-font-size-h3);
        }

        .heading-block h4, .heading-block .h4 {
            font-size: var(--cnvs-heading-block-font-size-h4);
        }

        .heading-block > span:not(.before-heading) {
            display: block;
            margin-top: 0.5rem;
            font-weight: 300;
            color: var(--cnvs-heading-block-span-color);
        }

        .heading-block.center > span, .heading-block.text-center > span, .center .heading-block > span, .text-center .heading-block > span {
            max-width: var(--cnvs-heading-block-center-container);
            margin-left: auto;
            margin-right: auto;
        }

    .heading-block h1 + span, .heading-block .h1 + span {
        font-size: calc(var(--cnvs-heading-block-font-size-h1) / 1.5);
    }

    .heading-block h2 + span, .heading-block .h2 + span,
    .heading-block h3 + span,
    .heading-block .h3 + span,
    .heading-block h4 + span,
    .heading-block .h4 + span {
        font-size: calc(var(--cnvs-heading-block-font-size-h2) / 1.75);
    }

    .heading-block::after {
        content: "";
        display: block;
        margin-top: 30px;
        width: var(--cnvs-title-block-border-size);
        border-top: var(--cnvs-heading-block-border);
    }

    .center .heading-block::after, .text-center .heading-block::after, .heading-block.center::after, .heading-block.text-center::after {
        margin: 30px auto 0;
    }

    .text-end .heading-block, .heading-block.text-end {
        direction: rtl;
    }

    .heading-block.border-0::after, .heading-block.border-bottom-0::after {
        display: none;
    }

    .heading-block.border-color::after {
        border-color: var(--cnvs-themecolor);
    }

    /* Emphasis Title
-----------------------------------------------------------------*/

    /* Justify Border Title
-----------------------------------------------------------------*/

    /* Fancy Title - Center Align
-----------------------------------------------------------------*/

    /* Fancy Title - Right Align
-----------------------------------------------------------------*/

    /* Fancy Title - Bottom Short Border
-----------------------------------------------------------------*/

    /* Sub Heading
-----------------------------------------------------------------*/

    /*-----------------------------------------------------------------------------------

	Shortcodes: dividers.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Divider
-----------------------------------------------------------------*/
    .divider {
        --cnvs-divider-margin: 3rem;
        --cnvs-divider-gap: 0.5rem;
        --cnvs-divider-color: var(--cnvs-contrast-200);
        --cnvs-divider-hover-color: var(--cnvs-contrast-600);
        --cnvs-divider-size: 18px;
        --cnvs-divider-width: 100%;
        --cnvs-divider-border-width: 1px;
        --cnvs-divider-border-style: solid;
        --cnvs-divider-border-color: var(--cnvs-divider-color);
        --cnvs-divider-bg-color: var(--cnvs-contrast-200);
        --cnvs-divider-rounded-color: var(--cnvs-contrast-600);
        --cnvs-divider-icon-border-width: var(--cnvs-divider-border-width);
        position: relative;
        display: flex;
        align-items: center;
        overflow: hidden;
        margin: var(--cnvs-divider-margin) auto;
        width: var(--cnvs-divider-width);
        /* Divider - Rounded & Border
     -----------------------------------------------------------------*/
        /* Divider - Icon Align Right
     -----------------------------------------------------------------*/
        /* Divider - Icon Align Center
     -----------------------------------------------------------------*/
        /* Divider - Rounded Icon
     -----------------------------------------------------------------*/
        /* Divider - Line Only
     -----------------------------------------------------------------*/
    }

        .divider::after, .divider::before {
            content: "";
            flex-basis: 0;
            flex-grow: 1;
            max-width: 100%;
            border-bottom: var(--cnvs-divider-border-width) var(--cnvs-divider-border-style) var(--cnvs-divider-border-color);
        }

        .divider::before {
            display: none;
            margin-right: var(--cnvs-divider-gap);
        }

        .divider::after {
            margin-left: var(--cnvs-divider-gap);
        }

        .divider i,
        .divider a {
            position: relative;
            flex: 0 0 auto;
            width: var(--cnvs-divider-size);
            max-width: 100%;
            line-height: 1;
            font-size: calc(var(--cnvs-divider-size) * 0.75) !important;
            text-align: center;
            color: var(--cnvs-divider-color);
        }

        .divider a {
            width: auto;
            color: inherit;
            transition: all 0.3s ease;
        }

    .divider a:hover {
        color: var(--cnvs-divider-hover-color);
    }

    /*-----------------------------------------------------------------------------------

	Shortcodes: misc.scss

-----------------------------------------------------------------------------------*/
    /* Infinity Scroll - Message Style
-----------------------------------------------------------------*/
    
    #portfolio-ajax-loader {
        --cnvs-ajax-loader-size: 48px;
        position: fixed;
        z-index: 20;
        top: 50%;
        left: 50%;
        width: var(--cnvs-ajax-loader-size);
        height: var(--cnvs-ajax-loader-size);
        margin: calc(-1 * var(--cnvs-ajax-loader-size)) 0 0 calc(-1 * var(--cnvs-ajax-loader-size));
        background-color: rgba(0, 0, 0, 0.7);
        border-radius: 3px;
        line-height: var(--cnvs-ajax-loader-size);
        font-size: 1.5rem;
        color: #fff;
        text-align: center;
    }

        
        #portfolio-ajax-loader img {
            display: none;
            width: var(--cnvs-ajax-loader-size);
            height: var(--cnvs-ajax-loader-size);
            margin: 12px;
        }

    #portfolio-ajax-loader {
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        margin: 0;
        background-color: rgba(255, 255, 255, 0.7);
        border-radius: 0;
        opacity: 0;
        z-index: -1;
        pointer-events: none;
        transition: all 0.3s ease;
    }

        #portfolio-ajax-loader img {
            display: block;
        }

    /* ----------------------------------------------------------------
	Quotes & Blockquotes
-----------------------------------------------------------------*/
    blockquote {
        padding: 10px 20px;
        margin: 0 0 20px;
        font-size: var(--cnvs-font-size-h4);
        border-left: 5px solid var(--cnvs-contrast-200);
    }

        blockquote.float-end {
            max-width: 300px;
            margin: 5px 0 10px 20px;
            padding-left: 0;
        }

    .quote {
        --cnvs-quote-icon-size: 48px;
        border: none !important;
        position: relative;
    }

        .quote p {
            position: relative;
        }

        .quote::before {
            content: "\f6b0";
            font-family: "bootstrap-icons";
            display: inline-flex;
            align-self: center;
            justify-self: center;
            line-height: inherit;
            position: absolute;
            width: var(--cnvs-quote-icon-size);
            height: var(--cnvs-quote-icon-size);
            line-height: var(--cnvs-quote-icon-size);
            font-size: calc(var(--cnvs-quote-icon-size) - 6px);
            top: 0;
            left: 0;
            color: var(--cnvs-contrast-200);
        }

    /* ----------------------------------------------------------------
	Cascading Images
-----------------------------------------------------------------*/

    /* ----------------------------------------------------------------
	Dropcaps & Highlights
-----------------------------------------------------------------*/

    .highlight {
        padding: 2px 5px;
        background-color: #444;
        color: #fff;
        border-radius: 2px;
    }

    /* ----------------------------------------------------------------
	Text Rotater
-----------------------------------------------------------------*/

    .typed-cursor {
        font-weight: 400;
    }

    /* ----------------------------------------------------------------
	Overlays
-----------------------------------------------------------------*/

    /* ----------------------------------------------------------------
	Google Maps
-----------------------------------------------------------------*/
    .gmap {
        position: relative;
        width: 100%;
        height: 450px;
    }

        .gmap img {
            max-width: none !important;
        }

    /* ----------------------------------------------------------------
	Google Custom Search
-----------------------------------------------------------------*/

    /* ----------------------------------------------------------------
	Magazine Specific Classes
-----------------------------------------------------------------*/

    /* ----------------------------------------------------------------
	Go To Top
-----------------------------------------------------------------*/
    #gotoTop {
        --cnvs-gotoTop-size: 2.5rem;
        --cnvs-gotoTop-bg: rgba(0, 0, 0, 0.3);
        --cnvs-gotoTop-icon-size: 1.5rem;
        --cnvs-gotoTop-icon-color: #fff;
        --cnvs-gotoTop-position-boxed-right: 30px;
        --cnvs-gotoTop-position-boxed-bottom: 50px;
        --cnvs-gotoTop-position-botom: 30px;
        --cnvs-gotoTop-border-radius: 2px;
        --cnvs-gotoTop-hover-color: var(--cnvs-themecolor);
        z-index: -999;
        position: fixed;
        width: var(--cnvs-gotoTop-size);
        height: var(--cnvs-gotoTop-size);
        line-height: var(--cnvs-gotoTop-size);
        background-color: var(--cnvs-gotoTop-bg);
        font-size: var(--cnvs-gotoTop-icon-size);
        text-align: center;
        color: var(--cnvs-gotoTop-icon-color);
        top: auto;
        left: auto;
        right: var(--cnvs-gotoTop-position-boxed-right);
        bottom: var(--cnvs-gotoTop-position-boxed-bottom);
        cursor: pointer;
        border-radius: var(--cnvs-gotoTop-border-radius);
        opacity: 0;
        transition: background-color 0.2s linear, opacity 0.4s ease;
    }

    @media (prefers-reduced-motion: reduce) {
        #gotoTop {
            transition: none;
        }
    }

    .gototop-active #gotoTop {
        z-index: 599;
        opacity: 1;
    }

    .stretched #gotoTop {
        right: var(--cnvs-gotoTop-position-boxed-right);
        bottom: var(--cnvs-gotoTop-position-boxed-bottom);
    }

    #gotoTop:hover {
        background-color: #f6c855;
    }

    /* ----------------------------------------------------------------
	Read More
-----------------------------------------------------------------*/
    .read-more-wrap {
        position: relative;
        overflow: hidden;
        transition: height 0.5s ease;
    }

    @media (prefers-reduced-motion: reduce) {
        .read-more-wrap {
            transition: none;
        }
    }

    .read-more-mask {
        position: absolute;
        z-index: 9;
        top: auto;
        bottom: 0;
        left: 0;
        width: 100%;
        min-height: 60px;
        height: 35%;
        background-image: linear-gradient(rgba(255, 255, 255, 0), white);
    }

    .dark .read-more-mask {
        background-image: linear-gradient(rgba(var(--bs-dark-rgb), 0), rgb(var(--bs-dark-rgb)));
    }

    /* ----------------------------------------------------------------
	GDPR Settings
-----------------------------------------------------------------*/

    .gdpr-settings-sm {
        max-width: 30rem;
        margin-right: 1rem;
    }

        .gdpr-settings-sm.gdpr-settings-right {
            left: auto;
            right: 1rem;
            margin-right: 0;
            margin-left: 1rem;
        }

    /* ----------------------------------------------------------------
	Error 404
-----------------------------------------------------------------*/

    /* ----------------------------------------------------------------
	Landing Pages
-----------------------------------------------------------------*/

    /* Navigation Tree
-----------------------------------------------------------------*/

    /* ----------------------------------------------------------------
	Wedding
-----------------------------------------------------------------*/

    /* --------------------------------------------------------------
	SWITCH
--------------------------------------------------------------  */

    /* --------------------------------------------------------------
	SWITCH 1 - ROUND
----------------------------------------------------------------- */
    .switch {
        --cnvs-switch-width: 60px;
        --cnvs-switch-spacing: 1px;
        --cnvs-switch-bg: var(--cnvs-contrast-300);
        --cnvs-switch-active-bg: var(--cnvs-themecolor);
    }

    /* -----------------------------------------------------------
	SWITCH 2 - ROUND FLAT
-------------------------------------------------------------- */

    .switch input[type=checkbox].error + label {
        border: 1px solid var(--bs-danger);
    }

        .switch input[type=checkbox].error + label::before {
            background-color: rgba(var(--bs-danger-rgb), 0.1);
        }

    /* -----------------------------------------------------------
	Tour Driver
-------------------------------------------------------------- */

    @-webkit-keyframes pulsate {
        0% {
            opacity: 0;
            transform: scale(1);
        }

        50% {
            opacity: 0.3;
        }

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

    @keyframes pulsate {
        0% {
            opacity: 0;
            transform: scale(1);
        }

        50% {
            opacity: 0.3;
        }

        100% {
            opacity: 0;
            transform: scale(2.5);
        }
    }
    /* ----------------------------------------------------------------------------
	Canvas Cursor
---------------------------------------------------------------------------- */

    /* ----------------------------------------------------------------------------
	Grid Border
---------------------------------------------------------------------------- */

    /* -----------------------------------------------------------
	App Menu
-------------------------------------------------------------- */

    /* -----------------------------------------------------------
	Circle Stack
-------------------------------------------------------------- */

    /* -----------------------------------------------------------
	Ticker
-------------------------------------------------------------- */
    @-webkit-keyframes tickerAnim {
        0% {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
            visibility: visible;
        }

        100% {
            -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
        }
    }

    @keyframes tickerAnim {
        0% {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
            visibility: visible;
        }

        100% {
            -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
        }
    }

    /*-----------------------------------------------------------------------------------

	Shortcodes: Forms.scss

-----------------------------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Forms
-----------------------------------------------------------------*/
    :root,
    .not-dark {
        --cnvs-form-processor-bg: #fff;
        --cnvs-input-btn-input-color: var(--bs-body-color);
        --cnvs-input-btn-input-bg: var(--bs-body-bg);
        --cnvs-input-btn-border-color: var(--bs-border-color);
    }

    form {
        --cnvs-input-label-mb: 0.5rem;
        --cnvs-form-label-font-weight: 500;
        --cnvs-form-label-error: var(--bs-danger);
        --cnvs-form-processor-bg: #fff;
        --cnvs-form-processor-bg-op: 0.7;
        --cnvs-form-group-margin: 1.25rem;
    }

        form .form-group {
            margin-bottom: var(--cnvs-form-group-margin);
        }

    .form-control {
        --cnvs-input-btn-padding-y: 0.375rem;
        --cnvs-input-btn-padding-x: 0.75rem;
        --cnvs-input-btn-font-size: 1rem;
        --cnvs-input-font-family:;
        --cnvs-input-btn-font-weight: 400;
        --cnvs-input-btn-line-height: 1.5;
        --cnvs-input-btn-input-color: var(--bs-body-color);
        --cnvs-input-btn-input-bg: var(--bs-body-bg);
        --cnvs-form-control-radius: var(--bs-border-radius);
        --cnvs-input-btn-border-width: var(--bs-border-width);
        --cnvs-input-btn-border-color: var(--bs-border-color);
        --cnvs-input-btn-padding-y-sm: 0.25rem;
        --cnvs-input-btn-padding-x-sm: 0.5rem;
        --cnvs-input-btn-font-size-sm: 0.875rem;
        --cnvs-input-btn-padding-y-lg: 0.5rem;
        --cnvs-input-btn-padding-x-lg: 1rem;
        --cnvs-input-btn-font-size-lg: 1.25rem;
        --cnvs-input-focus-color: var(--bs-body-color);
        --cnvs-input-focus-bg: var(--bs-body-bg);
        --cnvs-input-focus-border-color: #86b7fe;
        --cnvs-input-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
        padding: var(--cnvs-input-btn-padding-y) var(--cnvs-input-btn-padding-x);
        font-size: var(--cnvs-input-btn-font-size);
        font-family: var(--cnvs-input-font-family);
        font-weight: var(--cnvs-input-btn-font-weight);
        line-height: var(--cnvs-input-btn-line-height);
        color: var(--cnvs-input-btn-input-color);
        background-color: var(--cnvs-input-btn-input-bg);
        border: var(--cnvs-input-btn-border-width) solid var(--cnvs-input-btn-border-color);
        border-radius: var(--cnvs-form-control-radius);
        /* ----------------------------------------------------------------
  	Border Form Control
  -----------------------------------------------------------------*/
    }

        .form-control.error {
            border-color: var(--cnvs-form-label-error);
        }

    .form-control-sm {
        --cnvs-input-btn-padding-y: var(--cnvs-input-btn-padding-y-sm);
        --cnvs-input-btn-padding-x: var(--cnvs-input-btn-padding-x-sm);
        --cnvs-input-btn-font-size: var(--cnvs-input-btn-font-size-sm);
    }

    .form-control:focus {
        color: var(--cnvs-input-focus-color);
        background-color: var(--cnvs-input-focus-bg);
        border-color: #FFFFFF;
        box-shadow: var(--cnvs-input-focus-box-shadow);
    }

    label {
        margin-bottom: var(--cnvs-input-label-mb);
        font-weight: var(--cnvs-form-label-font-weight);
    }

        label.error {
            display: none !important;
            margin-top: 5px;
            color: var(--cnvs-form-label-error);
            font-weight: 400;
        }

     input[type=checkbox]:not(:checked) + label.error {
        display: block !important;
    }

    [data-condition]:not(.condition-fulfilled) {
        display: none !important;
    }

    /* ----------------------------------------------------------------
	Contact Form
-----------------------------------------------------------------*/

    /* ----------------------------------------------------------------
	Preloaders
-----------------------------------------------------------------*/
    .preloader {
        display: block;
        width: 100%;
        height: 100%;
        background: center center no-repeat var(--cnvs-input-btn-input-bg);
    }

    /* ----------------------------------------------------------------

	footer.scss

-----------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Footer
-----------------------------------------------------------------*/
    #footer {
        --cnvs-footer-top-border: 5px solid rgba(var(--cnvs-contrast-rgb), 0.15);
        position: relative;
        background-color: var(--cnvs-footer-bg);
        border-top: var(--cnvs-footer-top-border);
    }

    @media (min-width: 992px) {
        .sticky-footer #slider:not(.slider-parallax-invisible),
        .sticky-footer #content {
            z-index: 2;
        }

        .sticky-footer #footer {
            position: sticky;
            top: auto;
            bottom: 0;
            left: 0;
        }
    }

    /* ----------------------------------------------------------------

	widgets.scss

-----------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Widgets
-----------------------------------------------------------------*/
    :root,
    .not-dark {
        --cnvs-widget-border: 1px solid rgba(var(--cnvs-contrast-rgb), 0.1);
    }

    .widget {
        --cnvs-widget-border: 1px solid rgba(var(--cnvs-contrast-rgb), 0.1);
        --cnvs-widget-margin: 3rem;
        --cnvs-widget-title-margin: 1.5rem;
        --cnvs-widget-title-font-size: 1.25rem;
        --cnvs-widget-title-font-weight: 500;
        --cnvs-widget-title-letter-spacing: 0;
        --cnvs-widget-title-text-transform: none;
        position: relative;
        margin-top: var(--cnvs-widget-margin);
        /* Widget - Links
  -----------------------------------------------------------------*/
        /* Widget - Testimonial & Twitter
  -----------------------------------------------------------------*/
    }

        .widget p {
            line-height: 1.7;
        }

    .widget:first-child {
        margin-top: 0;
    }

    .widget > h4, .widget > .h4 {
        margin-bottom: var(--cnvs-widget-title-margin);
        font-size: var(--cnvs-widget-title-font-size);
        font-weight: var(--cnvs-widget-title-font-weight);
        letter-spacing: var(--cnvs-widget-title-letter-spacing);
        text-transform: var(--cnvs-widget-title-text-transform);
    }

    .widget .testimonial p {
        font-size: 0.875rem;
    }
    /* Widget - Quick Contact Form
-----------------------------------------------------------------*/

    /* Newsletter Widget
-----------------------------------------------------------------*/

    /* Twitter Feed Widget
-----------------------------------------------------------------*/

    /* Widget Filter Links
-----------------------------------------------------------------*/

    /* Tag Cloud
-----------------------------------------------------------------*/

    /* ----------------------------------------------------------------

	Paginations.scss

-----------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Styled Paginations
-----------------------------------------------------------------*/
    :root,
    .not-dark {
        --cnvs-pagination-circle-size: 35px;
        --cnvs-pagination-margin: 5px;
        --bs-pagination-hover-color: var(--cnvs-contrast-0);
    }

    .pagination {
        --bs-pagination-color: var(--cnvs-themecolor);
        --bs-pagination-hover-bg: var(--cnvs-themecolor);
        --bs-pagination-hover-color: var(--cnvs-contrast-0);
        --bs-pagination-hover-border-color: var(--bs-pagination-hover-bg);
        --bs-pagination-active-bg: var(--bs-pagination-hover-bg);
        --bs-pagination-active-border-color: var(--bs-pagination-hover-border-color);
        /* Pagination Rounded */
        /* Pagination Margins */
        /* Pagination 3d */
        /* Pagination Transparent */
        /* Pagination Transparent */
        /* Pagination Inside Transparent */
        /* Pagination Button */
        /* Pagination Pill */
        /* Pagination light */
    }

        .pagination:not(.pagination-circle):not(.pagination-rounded) .page-item:not(:first-child):not(:last-child) {
            --bs-pagination-border-radius: 0;
        }

        .pagination:not(.pagination-circle):not(.pagination-rounded) .page-item:first-child .page-link {
            border-top-right-radius: 0;
            border-bottom-right-radius: 0;
        }

        .pagination:not(.pagination-circle):not(.pagination-rounded) .page-item:last-child .page-link {
            border-top-left-radius: 0;
            border-bottom-left-radius: 0;
        }

    /* ----------------------------------------------------------------
	extras.scss
-----------------------------------------------------------------*/
    /* ----------------------------------------------------------------
	Bootstrap Specific
-----------------------------------------------------------------*/
    .table .success {
        color: var(--bs-success);
    }

    .table .info {
        color: var(--bs-info);
    }

    .table .warning {
        color: var(--bs-warning);
    }

    .table .danger {
        color: var(--bs-danger);
    }

    ul:not(.pagination) .page-link, ul:not(.pagination) .page-link:hover, ul:not(.pagination) .page-link:focus {
        color: var(--cnvs-themecolor);
    }

    .carousel-control .fa-chevron-left,
    .carousel-control .fa-chevron-right {
        position: absolute;
        top: 47.5%;
        z-index: 5;
        display: inline-block;
    }

    .carousel-control .fa-chevron-left {
        left: 50%;
    }

    .carousel-control .fa-chevron-right {
        right: 50%;
    }

    ul:not(.pagination) .page-item.active .page-link,
    ul:not(.pagination) .page-link:hover,
    ul:not(.pagination) .page-link:focus {
        color: var(--cnvs-contrast-0) !important;
        background-color: var(--cnvs-themecolor) !important;
        border-color: var(--cnvs-themecolor) !important;
    }

    label.radio, label.checkbox {
        padding-left: 20px;
    }

    /* ----------------------------------------------------------------
	Shape Dividers
-----------------------------------------------------------------*/

    .shape-divider-fill {
        fill: var(--cnvs-body-bg);
        transform-origin: center;
        transform: rotateY(0deg);
    }

    /* ----------------------------------------------------------------
	HTML5 Youtube Video Backgrounds
-----------------------------------------------------------------*/

    .mbYTP_wrapper iframe {
        max-width: 4000px !important;
    }

    /* ----------------------------------------------------------------
	Datepicker Component
-----------------------------------------------------------------*/
    .datepicker td,
    .datepicker th {
        padding: 5px;
    }

    /* ----------------------------------------------------------------
	Star Ratings Component
-----------------------------------------------------------------*/

    .rating-container .star {
        margin: 0 2px !important;
    }

    /* ----------------------------------------------------------------
	Custom Animate.css Styles
-----------------------------------------------------------------*/
    @-webkit-keyframes fadeInDownSmall {
        from {
            opacity: 0;
            -webkit-transform: translate3d(0, -50%, 0);
            transform: translate3d(0, -50%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInDownSmall {
        from {
            opacity: 0;
            -webkit-transform: translate3d(0, -50%, 0);
            transform: translate3d(0, -50%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeInLeftSmall {
        from {
            opacity: 0;
            -webkit-transform: translate3d(-50%, 0, 0);
            transform: translate3d(-50%, 0, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInLeftSmall {
        from {
            opacity: 0;
            -webkit-transform: translate3d(-50%, 0, 0);
            transform: translate3d(-50%, 0, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeInRightSmall {
        from {
            opacity: 0;
            -webkit-transform: translate3d(50%, 0, 0);
            transform: translate3d(50%, 0, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInRightSmall {
        from {
            opacity: 0;
            -webkit-transform: translate3d(50%, 0, 0);
            transform: translate3d(50%, 0, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeInUpSmall {
        from {
            opacity: 0;
            -webkit-transform: translate3d(0, 50%, 0);
            transform: translate3d(0, 50%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInUpSmall {
        from {
            opacity: 0;
            -webkit-transform: translate3d(0, 50%, 0);
            transform: translate3d(0, 50%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeOutDownSmall {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, 50%, 0);
            transform: translate3d(0, 50%, 0);
        }
    }

    @keyframes fadeOutDownSmall {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, 50%, 0);
            transform: translate3d(0, 50%, 0);
        }
    }

    @-webkit-keyframes fadeOutLeftSmall {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(-50%, 0, 0);
            transform: translate3d(-50%, 0, 0);
        }
    }

    @keyframes fadeOutLeftSmall {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(-50%, 0, 0);
            transform: translate3d(-50%, 0, 0);
        }
    }

    @-webkit-keyframes fadeOutRightSmall {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(50%, 0, 0);
            transform: translate3d(50%, 0, 0);
        }
    }

    @keyframes fadeOutRightSmall {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(50%, 0, 0);
            transform: translate3d(50%, 0, 0);
        }
    }

    @-webkit-keyframes fadeOutUpSmall {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, -50%, 0);
            transform: translate3d(0, -50%, 0);
        }
    }

    @keyframes fadeOutUpSmall {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, -50%, 0);
            transform: translate3d(0, -50%, 0);
        }
    }

    /* ----------------------------------------------------------------

	pageloaders.scss

-----------------------------------------------------------------*/
    :root,
    .not-dark {
        --cnvs-loader-color: var(--cnvs-contrast-300);
    }

    /* ----------------------------------------------------------------
	Page Transitions
-----------------------------------------------------------------*/
    .page-transition #wrapper:not(.animated) {
        position: relative;
        opacity: 0;
    }

    .page-transition #wrapper.animated {
        -webkit-animation-fill-mode: both;
        animation-fill-mode: both;
    }

    .page-transition-wrap, .css3-spinner {
        position: fixed;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: 1000;
        text-align: center;
        background-color: var(--cnvs-body-bg);
        -webkit-animation-fill-mode: both;
        animation-fill-mode: both;
        -webkit-perspective: 1000;
    }

    .css3-spinner {
        --cnvs-loader-color: var(--cnvs-contrast-300);
        position: relative;
        z-index: auto;
        background-color: transparent;
        display: flex;
        justify-content: center;
        align-items: center;
    }

        .css3-spinner > div {
            --cnvs-loader-width: auto;
            --cnvs-loader-height: var(--cnvs-loader-width);
            --cnvs-loader-gutters: 0;
            --cnvs-loader-radius: 100%;
            width: var(--cnvs-loader-width);
            height: var(--cnvs-loader-height);
            margin: 0 var(--cnvs-loader-gutters);
            background-color: var(--cnvs-loader-color);
            border-radius: var(--cnvs-loader-radius);
            display: inline-block;
            -webkit-animation: bouncedelay 1.4s infinite ease-in-out;
            animation: bouncedelay 1.4s infinite ease-in-out;
            -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
        }

            .css3-spinner > div > div {
                width: var(--cnvs-loader-width);
                height: var(--cnvs-loader-height);
                margin: 0 var(--cnvs-loader-gutters);
                border-radius: var(--cnvs-loader-radius);
            }

        .css3-spinner .css3-spinner-bounce1,
        .css3-spinner .css3-spinner-bounce2,
        .css3-spinner .css3-spinner-bounce3 {
            --cnvs-loader-width: 18px;
            --cnvs-loader-gutters: 3px;
        }

        .css3-spinner .css3-spinner-bounce1 {
            -webkit-animation-delay: -0.32s;
            animation-delay: -0.32s;
        }

        .css3-spinner .css3-spinner-bounce2 {
            -webkit-animation-delay: -0.16s;
            animation-delay: -0.16s;
        }

    @-webkit-keyframes bouncedelay {
        0%, 80%, 100% {
            -webkit-transform: scale(0);
            transform: scale(0);
        }

        40% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }
    }

    @keyframes bouncedelay {
        0%, 80%, 100% {
            -webkit-transform: scale(0);
            transform: scale(0);
        }

        40% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }
    }

    .css3-spinner > .css3-spinner-flipper {
        --cnvs-loader-width: 32px;
        --cnvs-loader-radius: 0;
        -webkit-animation: rotateplane 1.2s infinite ease-in-out;
        animation: rotateplane 1.2s infinite ease-in-out;
    }

    @-webkit-keyframes rotateplane {
        0% {
            transform: perspective(120px) rotateX(0deg) rotateY(0deg);
            -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);
        }

        50% {
            transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
            -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
        }

        100% {
            transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
            -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
        }
    }

    @keyframes rotateplane {
        0% {
            transform: perspective(120px) rotateX(0deg) rotateY(0deg);
            -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);
        }

        50% {
            transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
            -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
        }

        100% {
            transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
            -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
        }
    }

    .css3-spinner > .css3-spinner-double-bounce1, .css3-spinner > .css3-spinner-double-bounce2 {
        --cnvs-loader-width: 40px;
        --cnvs-loader-radius: 50%;
        position: absolute;
        opacity: 0.6;
        -webkit-animation: cssspinnerbounce 2s infinite ease-in-out;
        animation: cssspinnerbounce 2s infinite ease-in-out;
    }

    .css3-spinner > .css3-spinner-double-bounce2 {
        -webkit-animation-delay: -1s;
        animation-delay: -1s;
    }

    @-webkit-keyframes cssspinnerbounce {
        0%, 100% {
            transform: scale(0);
            -webkit-transform: scale(0);
        }

        50% {
            transform: scale(1);
            -webkit-transform: scale(1);
        }
    }

    @keyframes cssspinnerbounce {
        0%, 100% {
            transform: scale(0);
            -webkit-transform: scale(0);
        }

        50% {
            transform: scale(1);
            -webkit-transform: scale(1);
        }
    }

    .css3-spinner > .css3-spinner-rect1, .css3-spinner > .css3-spinner-rect2, .css3-spinner > .css3-spinner-rect3, .css3-spinner > .css3-spinner-rect4, .css3-spinner > .css3-spinner-rect5 {
        --cnvs-loader-width: 6px;
        --cnvs-loader-height: 30px;
        --cnvs-loader-gutters: 1px;
        --cnvs-loader-radius: 0;
        -webkit-animation: stretchdelay 1.2s infinite ease-in-out;
        animation: stretchdelay 1.2s infinite ease-in-out;
    }

    .css3-spinner > .css3-spinner-rect2 {
        -webkit-animation-delay: -1.1s;
        animation-delay: -1.1s;
    }

    .css3-spinner > .css3-spinner-rect3 {
        -webkit-animation-delay: -1s;
        animation-delay: -1s;
    }

    .css3-spinner > .css3-spinner-rect4 {
        -webkit-animation-delay: -0.9s;
        animation-delay: -0.9s;
    }

    .css3-spinner > .css3-spinner-rect5 {
        -webkit-animation-delay: -0.8s;
        animation-delay: -0.8s;
    }

    @-webkit-keyframes stretchdelay {
        0%, 40%, 100% {
            transform: scaleY(0.4);
            -webkit-transform: scaleY(0.4);
        }

        20% {
            transform: scaleY(1);
            -webkit-transform: scaleY(1);
        }
    }

    @keyframes stretchdelay {
        0%, 40%, 100% {
            transform: scaleY(0.4);
            -webkit-transform: scaleY(0.4);
        }

        20% {
            transform: scaleY(1);
            -webkit-transform: scaleY(1);
        }
    }

    .css3-spinner > .css3-spinner-cube1, .css3-spinner > .css3-spinner-cube2 {
        --cnvs-loader-width: 16px;
        --cnvs-loader-radius: 0;
        -webkit-animation: cubemove 1.8s infinite ease-in-out;
        animation: cubemove 1.8s infinite ease-in-out;
    }

    .css3-spinner > .css3-spinner-cube2 {
        -webkit-animation-delay: -0.9s;
        animation-delay: -0.9s;
    }

    @-webkit-keyframes cubemove {
        25% {
            transform: translateX(42px) rotate(-90deg) scale(0.5);
            -webkit-transform: translateX(42px) rotate(-90deg) scale(0.5);
        }

        50% {
            transform: translateX(42px) translateY(42px) rotate(-179deg);
            -webkit-transform: translateX(42px) translateY(42px) rotate(-179deg);
        }

        50.1% {
            transform: translateX(42px) translateY(42px) rotate(-180deg);
            -webkit-transform: translateX(42px) translateY(42px) rotate(-180deg);
        }

        75% {
            transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);
            -webkit-transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);
        }

        100% {
            transform: rotate(-360deg);
            -webkit-transform: rotate(-360deg);
        }
    }

    @keyframes cubemove {
        25% {
            transform: translateX(42px) rotate(-90deg) scale(0.5);
            -webkit-transform: translateX(42px) rotate(-90deg) scale(0.5);
        }

        50% {
            transform: translateX(42px) translateY(42px) rotate(-179deg);
            -webkit-transform: translateX(42px) translateY(42px) rotate(-179deg);
        }

        50.1% {
            transform: translateX(42px) translateY(42px) rotate(-180deg);
            -webkit-transform: translateX(42px) translateY(42px) rotate(-180deg);
        }

        75% {
            transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);
            -webkit-transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);
        }

        100% {
            transform: rotate(-360deg);
            -webkit-transform: rotate(-360deg);
        }
    }

    .css3-spinner > .css3-spinner-scaler {
        --cnvs-loader-width: 40px;
        -webkit-animation: scaleout 1s infinite ease-in-out;
        animation: scaleout 1s infinite ease-in-out;
    }

    @-webkit-keyframes scaleout {
        0% {
            transform: scale(0);
            -webkit-transform: scale(0);
        }

        100% {
            transform: scale(1);
            -webkit-transform: scale(1);
            opacity: 0;
        }
    }

    @keyframes scaleout {
        0% {
            transform: scale(0);
            -webkit-transform: scale(0);
        }

        100% {
            transform: scale(1);
            -webkit-transform: scale(1);
            opacity: 0;
        }
    }

    .css3-spinner > .css3-spinner-grid-pulse {
        --cnvs-loader-width: 48px;
        display: flex;
        flex-wrap: wrap;
        background-color: transparent !important;
        -webkit-animation: none;
        animation: none;
    }

    .css3-spinner-grid-pulse > div {
        --cnvs-loader-width: 12px;
        --cnvs-loader-height: 12px;
        --cnvs-loader-gutters: 2px;
        background-color: var(--cnvs-loader-color);
        max-width: calc(var(--cnvs-loader-width) * 4);
        -webkit-animation-fill-mode: both;
        animation-fill-mode: both;
        display: inline-block;
        -webkit-animation-name: ball-grid-pulse;
        animation-name: ball-grid-pulse;
        -webkit-animation-iteration-count: infinite;
        animation-iteration-count: infinite;
        -webkit-animation-delay: 0;
        animation-delay: 0;
    }

        .css3-spinner-grid-pulse > div:nth-child(1) {
            -webkit-animation-delay: 0.73s;
            animation-delay: 0.73s;
            -webkit-animation-duration: 1.3s;
            animation-duration: 1.3s;
        }

        .css3-spinner-grid-pulse > div:nth-child(2) {
            -webkit-animation-delay: 0.32s;
            animation-delay: 0.32s;
            -webkit-animation-duration: 1.3s;
            animation-duration: 1.3s;
        }

        .css3-spinner-grid-pulse > div:nth-child(3) {
            -webkit-animation-delay: 0.71s;
            animation-delay: 0.71s;
            -webkit-animation-duration: 0.88s;
            animation-duration: 0.88s;
        }

        .css3-spinner-grid-pulse > div:nth-child(4) {
            -webkit-animation-delay: 0.62s;
            animation-delay: 0.62s;
            -webkit-animation-duration: 1.06s;
            animation-duration: 1.06s;
        }

        .css3-spinner-grid-pulse > div:nth-child(5) {
            -webkit-animation-delay: 0.31s;
            animation-delay: 0.31s;
            -webkit-animation-duration: 0.62s;
            animation-duration: 0.62s;
        }

        .css3-spinner-grid-pulse > div:nth-child(6) {
            -webkit-animation-delay: -0.14s;
            animation-delay: -0.14s;
            -webkit-animation-duration: 1.48s;
            animation-duration: 1.48s;
        }

        .css3-spinner-grid-pulse > div:nth-child(7) {
            -webkit-animation-delay: -0.1s;
            animation-delay: -0.1s;
            -webkit-animation-duration: 1.47s;
            animation-duration: 1.47s;
        }

        .css3-spinner-grid-pulse > div:nth-child(8) {
            -webkit-animation-delay: 0.4s;
            animation-delay: 0.4s;
            -webkit-animation-duration: 1.49s;
            animation-duration: 1.49s;
        }

        .css3-spinner-grid-pulse > div:nth-child(9) {
            -webkit-animation-delay: 0.73s;
            animation-delay: 0.73s;
            -webkit-animation-duration: 0.7s;
            animation-duration: 0.7s;
        }

    @-webkit-keyframes ball-grid-pulse {
        0% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }

        50% {
            -webkit-transform: scale(0.5);
            transform: scale(0.5);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }
    }

    @keyframes ball-grid-pulse {
        0% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }

        50% {
            -webkit-transform: scale(0.5);
            transform: scale(0.5);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }
    }

    .css3-spinner > .css3-spinner-clip-rotate {
        --cnvs-loader-width: 33px;
        background-color: transparent !important;
        -webkit-animation: none;
        animation: none;
    }

    .css3-spinner-clip-rotate > div {
        border-radius: 100%;
        border: 2px solid var(--cnvs-loader-color);
        border-bottom-color: transparent !important;
        background: transparent !important;
        -webkit-animation: rotate 1s 0s linear infinite;
        animation: rotate 1s 0s linear infinite;
    }

    @-webkit-keyframes rotate {
        0% {
            -webkit-transform: rotate(0deg) scale(1);
            transform: rotate(0deg) scale(1);
        }

        50% {
            -webkit-transform: rotate(180deg) scale(0.6);
            transform: rotate(180deg) scale(0.6);
        }

        100% {
            -webkit-transform: rotate(360deg) scale(1);
            transform: rotate(360deg) scale(1);
        }
    }

    @keyframes rotate {
        0% {
            -webkit-transform: rotate(0deg) scale(1);
            transform: rotate(0deg) scale(1);
        }

        50% {
            -webkit-transform: rotate(180deg) scale(0.6);
            transform: rotate(180deg) scale(0.6);
        }

        100% {
            -webkit-transform: rotate(360deg) scale(1);
            transform: rotate(360deg) scale(1);
        }
    }

    .css3-spinner > .css3-spinner-ball-rotate {
        --cnvs-loader-width: 12px;
        --cnvs-loader-gutters: 10px;
        width: var(--cnvs-loader-width);
        height: var(--cnvs-loader-width);
        background-color: transparent !important;
        -webkit-animation: ballrotate 1s 0s cubic-bezier(0.7, -0.13, 0.22, 0.86) infinite;
        animation: ballrotate 1s 0s cubic-bezier(0.7, -0.13, 0.22, 0.86) infinite;
        margin: 0;
    }

    .css3-spinner-ball-rotate > div {
        background-color: var(--cnvs-loader-color);
        border-radius: 100%;
        position: relative;
        margin: 0 !important;
    }

        .css3-spinner-ball-rotate > div:nth-child(1), .css3-spinner-ball-rotate > div:nth-child(3) {
            width: var(--cnvs-loader-width);
            height: var(--cnvs-loader-width);
            content: "";
            position: absolute;
            opacity: 0.7;
        }

        .css3-spinner-ball-rotate > div:nth-child(1) {
            top: 0px;
            left: calc(-1 * var(--cnvs-loader-width) - var(--cnvs-loader-gutters));
        }

        .css3-spinner-ball-rotate > div:nth-child(3) {
            top: 0px;
            left: calc(var(--cnvs-loader-width) + var(--cnvs-loader-gutters));
        }

    @-webkit-keyframes ballrotate {
        0% {
            -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
        }

        50% {
            -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
        }

        100% {
            -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
        }
    }

    @keyframes ballrotate {
        0% {
            -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
        }

        50% {
            -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
        }

        100% {
            -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
        }
    }

    .css3-spinner > .css3-spinner-zig-zag {
        --cnvs-loader-width: 12px;
        background-color: transparent !important;
        transform: translate(0px, 0px);
        animation: none;
    }

    .css3-spinner-zig-zag > div {
        background-color: var(--cnvs-loader-color);
        position: absolute;
        -webkit-animation-fill-mode: both;
        animation-fill-mode: both;
    }

        .css3-spinner-zig-zag > div:first-child {
            -webkit-animation: ball-zig-deflect 1.5s 0s infinite linear;
            animation: ball-zig-deflect 1.5s 0s infinite linear;
        }

        .css3-spinner-zig-zag > div:last-child {
            -webkit-animation: ball-zag-deflect 1.5s 0s infinite linear;
            animation: ball-zag-deflect 1.5s 0s infinite linear;
        }

    @-webkit-keyframes ball-zig-deflect {
        17% {
            -webkit-transform: translate(-15px, -30px);
            transform: translate(-15px, -30px);
        }

        34% {
            -webkit-transform: translate(15px, -30px);
            transform: translate(15px, -30px);
        }

        50% {
            -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
        }

        67% {
            -webkit-transform: translate(15px, -30px);
            transform: translate(15px, -30px);
        }

        84% {
            -webkit-transform: translate(-15px, -30px);
            transform: translate(-15px, -30px);
        }

        100% {
            -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
        }
    }

    @keyframes ball-zig-deflect {
        17% {
            -webkit-transform: translate(-15px, -30px);
            transform: translate(-15px, -30px);
        }

        34% {
            -webkit-transform: translate(15px, -30px);
            transform: translate(15px, -30px);
        }

        50% {
            -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
        }

        67% {
            -webkit-transform: translate(15px, -30px);
            transform: translate(15px, -30px);
        }

        84% {
            -webkit-transform: translate(-15px, -30px);
            transform: translate(-15px, -30px);
        }

        100% {
            -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
        }
    }

    @-webkit-keyframes ball-zag-deflect {
        17% {
            -webkit-transform: translate(15px, 30px);
            transform: translate(15px, 30px);
        }

        34% {
            -webkit-transform: translate(-15px, 30px);
            transform: translate(-15px, 30px);
        }

        50% {
            -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
        }

        67% {
            -webkit-transform: translate(-15px, 30px);
            transform: translate(-15px, 30px);
        }

        84% {
            -webkit-transform: translate(15px, 30px);
            transform: translate(15px, 30px);
        }

        100% {
            -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
        }
    }

    @keyframes ball-zag-deflect {
        17% {
            -webkit-transform: translate(15px, 30px);
            transform: translate(15px, 30px);
        }

        34% {
            -webkit-transform: translate(-15px, 30px);
            transform: translate(-15px, 30px);
        }

        50% {
            -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
        }

        67% {
            -webkit-transform: translate(-15px, 30px);
            transform: translate(-15px, 30px);
        }

        84% {
            -webkit-transform: translate(15px, 30px);
            transform: translate(15px, 30px);
        }

        100% {
            -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
        }
    }

    .css3-spinner > .css3-spinner-ball-scale-multiple {
        --cnvs-loader-width: 60px;
        background-color: transparent !important;
        -webkit-animation: none;
        animation: none;
    }

    .css3-spinner-ball-scale-multiple > div {
        background-color: var(--cnvs-loader-color);
        position: absolute;
        left: calc(50% - var(--cnvs-loader-width) / 2);
        top: calc(50% - var(--cnvs-loader-height) / 2);
        opacity: 0;
        -webkit-animation: ball-scale-multiple 1.25s 0s linear infinite;
        animation: ball-scale-multiple 1.25s 0s linear infinite;
    }

        .css3-spinner-ball-scale-multiple > div:nth-child(2) {
            -webkit-animation-delay: -0.4s;
            animation-delay: -0.4s;
        }

        .css3-spinner-ball-scale-multiple > div:nth-child(3) {
            -webkit-animation-delay: -0.2s;
            animation-delay: -0.2s;
        }

    @-webkit-keyframes ball-scale-multiple {
        0% {
            -webkit-transform: scale(0);
            transform: scale(0);
            opacity: 0;
        }

        5% {
            opacity: 1;
        }

        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 0;
        }
    }

    @keyframes ball-scale-multiple {
        0% {
            -webkit-transform: scale(0);
            transform: scale(0);
            opacity: 0;
        }

        5% {
            opacity: 1;
        }

        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 0;
        }
    }

    .css3-spinner > .css3-spinner-triangle-path {
        --cnvs-loader-width: 10px;
        background-color: transparent !important;
        -webkit-transform: translate(-29.994px, -37.50938px);
        -ms-transform: translate(-29.994px, -37.50938px);
        transform: translate(-29.994px, -37.50938px);
        -webkit-animation: none;
        animation: none;
        width: auto;
        height: auto;
    }

    .css3-spinner-triangle-path > div {
        -webkit-animation-fill-mode: both;
        animation-fill-mode: both;
        position: absolute;
        background-color: var(--cnvs-loader-color);
    }

        .css3-spinner-triangle-path > div:nth-child(1) {
            -webkit-animation: ball-triangle-path-1 2s 0s ease-in-out infinite;
            animation: ball-triangle-path-1 2s 0s ease-in-out infinite;
        }

        .css3-spinner-triangle-path > div:nth-child(2) {
            -webkit-animation: ball-triangle-path-2 2s 0s ease-in-out infinite;
            animation: ball-triangle-path-2 2s 0s ease-in-out infinite;
        }

        .css3-spinner-triangle-path > div:nth-child(3) {
            -webkit-animation: ball-triangle-path-3 2s 0s ease-in-out infinite;
            animation: ball-triangle-path-3 2s 0s ease-in-out infinite;
        }

        .css3-spinner-triangle-path > div:nth-of-type(1) {
            top: 50px;
        }

        .css3-spinner-triangle-path > div:nth-of-type(2) {
            left: 25px;
        }

        .css3-spinner-triangle-path > div:nth-of-type(3) {
            top: 50px;
            left: 50px;
        }

    @-webkit-keyframes ball-triangle-path-1 {
        33% {
            -webkit-transform: translate(25px, -50px);
            transform: translate(25px, -50px);
        }

        66% {
            -webkit-transform: translate(50px, 0px);
            transform: translate(50px, 0px);
        }

        100% {
            -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
        }
    }

    @keyframes ball-triangle-path-1 {
        33% {
            -webkit-transform: translate(25px, -50px);
            transform: translate(25px, -50px);
        }

        66% {
            -webkit-transform: translate(50px, 0px);
            transform: translate(50px, 0px);
        }

        100% {
            -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
        }
    }

    @-webkit-keyframes ball-triangle-path-2 {
        33% {
            -webkit-transform: translate(25px, 50px);
            transform: translate(25px, 50px);
        }

        66% {
            -webkit-transform: translate(-25px, 50px);
            transform: translate(-25px, 50px);
        }

        100% {
            -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
        }
    }

    @keyframes ball-triangle-path-2 {
        33% {
            -webkit-transform: translate(25px, 50px);
            transform: translate(25px, 50px);
        }

        66% {
            -webkit-transform: translate(-25px, 50px);
            transform: translate(-25px, 50px);
        }

        100% {
            -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
        }
    }

    @-webkit-keyframes ball-triangle-path-3 {
        33% {
            -webkit-transform: translate(-50px, 0px);
            transform: translate(-50px, 0px);
        }

        66% {
            -webkit-transform: translate(-25px, -50px);
            transform: translate(-25px, -50px);
        }

        100% {
            -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
        }
    }

    @keyframes ball-triangle-path-3 {
        33% {
            -webkit-transform: translate(-50px, 0px);
            transform: translate(-50px, 0px);
        }

        66% {
            -webkit-transform: translate(-25px, -50px);
            transform: translate(-25px, -50px);
        }

        100% {
            -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
        }
    }

    .css3-spinner > .css3-spinner-ball-pulse-sync {
        --cnvs-loader-width: 14px;
        --cnvs-loader-gutters: 3px;
        background-color: transparent !important;
        width: auto;
        height: auto;
        -webkit-animation: none;
        animation: none;
        margin: 0;
    }

    .css3-spinner-ball-pulse-sync > div {
        display: inline-block;
        background-color: var(--cnvs-loader-color);
        -webkit-animation-fill-mode: both;
        animation-fill-mode: both;
    }

        .css3-spinner-ball-pulse-sync > div:nth-child(0) {
            -webkit-animation: ball-pulse-sync 0.7s -0.21s infinite ease-in-out;
            animation: ball-pulse-sync 0.7s -0.21s infinite ease-in-out;
        }

        .css3-spinner-ball-pulse-sync > div:nth-child(1) {
            -webkit-animation: ball-pulse-sync 0.7s -0.14s infinite ease-in-out;
            animation: ball-pulse-sync 0.7s -0.14s infinite ease-in-out;
        }

        .css3-spinner-ball-pulse-sync > div:nth-child(2) {
            -webkit-animation: ball-pulse-sync 0.7s -0.07s infinite ease-in-out;
            animation: ball-pulse-sync 0.7s -0.07s infinite ease-in-out;
        }

        .css3-spinner-ball-pulse-sync > div:nth-child(3) {
            -webkit-animation: ball-pulse-sync 0.7s 0s infinite ease-in-out;
            animation: ball-pulse-sync 0.7s 0s infinite ease-in-out;
        }

    @-webkit-keyframes ball-pulse-sync {
        33% {
            -webkit-transform: translateY(10px);
            transform: translateY(10px);
            opacity: 0.85;
        }

        66% {
            -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
            opacity: 0.7;
        }

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

    @keyframes ball-pulse-sync {
        33% {
            -webkit-transform: translateY(10px);
            transform: translateY(10px);
            opacity: 0.85;
        }

        66% {
            -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
            opacity: 0.7;
        }

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

    .css3-spinner > .css3-spinner-scale-ripple {
        --cnvs-loader-width: 50px;
        width: auto;
        height: auto;
        background-color: transparent !important;
        -webkit-animation: none;
        animation: none;
    }

    .css3-spinner-scale-ripple > div {
        -webkit-animation-fill-mode: both;
        animation-fill-mode: both;
        position: absolute;
        left: calc(50% - var(--cnvs-loader-width) / 2);
        top: calc(50% - var(--cnvs-loader-height) / 2);
        border: 2px solid var(--cnvs-loader-color);
        -webkit-animation: ball-scale-ripple-multiple 1.4s 0s infinite cubic-bezier(0.21, 0.53, 0.56, 0.8);
        animation: ball-scale-ripple-multiple 1.4s 0s infinite cubic-bezier(0.21, 0.53, 0.56, 0.8);
    }

        .css3-spinner-scale-ripple > div:nth-child(0) {
            -webkit-animation-delay: -0.8s;
            animation-delay: -0.8s;
        }

        .css3-spinner-scale-ripple > div:nth-child(1) {
            -webkit-animation-delay: -0.6s;
            animation-delay: -0.6s;
        }

        .css3-spinner-scale-ripple > div:nth-child(2) {
            -webkit-animation-delay: -0.4s;
            animation-delay: -0.4s;
        }

        .css3-spinner-scale-ripple > div:nth-child(3) {
            -webkit-animation-delay: -0.2s;
            animation-delay: -0.2s;
        }

    @-webkit-keyframes ball-scale-ripple-multiple {
        0% {
            -webkit-transform: scale(0.1);
            transform: scale(0.1);
            opacity: 1;
        }

        70% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 0.7;
        }

        100% {
            opacity: 0;
        }
    }

    @keyframes ball-scale-ripple-multiple {
        0% {
            -webkit-transform: scale(0.1);
            transform: scale(0.1);
            opacity: 1;
        }

        70% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 0.7;
        }

        100% {
            opacity: 0;
        }
    }

    /* Magnific Popup SCSS */
    :root {
        --cnvs-mfp-overlay-color: #0b0b0b;
        --cnvs-mfp-overlay-opacity: 0.9;
        --cnvs-mfp-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
        --cnvs-mfp-popup-padding-left: 8px;
        --cnvs-mfp-popup-padding-left-mobile: 6px;
        --cnvs-mfp-z-index-base: 1040;
        --cnvs-mfp-controls-opacity: 0.65;
        --cnvs-mfp-controls-color: #FFF;
        --cnvs-mfp-inner-close-icon-color: #333;
        --cnvs-mfp-controls-text-color: #CCC;
        --cnvs-mfp-controls-text-color-hover: #FFF;
        --cnvs-mfp-preloader-size: 2rem;
        --cnvs-mfp-close-btn-size: 4rem;
        --cnvs-mfp-close-btn-font-size: 1.5rem;
        --cnvs-mfp-arrow-size: 4rem;
        --cnvs-mfp-title-padding: 1rem;
        --cnvs-mfp-title-border-radius: 0.25rem;
        --cnvs-mfp-link-color: #CCC;
        --cnvs-mfp-iframe-padding-top: 40px;
        --cnvs-mfp-iframe-background: #000;
        --cnvs-mfp-iframe-max-width: 900px;
        --cnvs-mfp-iframe-ratio: 9/16;
        --cnvs-mfp-image-background: #444;
        --cnvs-mfp-caption-title-color: #F3F3F3;
        --cnvs-mfp-caption-subtitle-color: #BDBDBD;
    }

    .mfp-bg {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: calc(var(--cnvs-mfp-z-index-base) + 2);
        overflow: hidden;
        position: fixed;
        background: var(--cnvs-mfp-overlay-color);
        opacity: var(--cnvs-mfp-overlay-opacity);
    }

    .mfp-wrap {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: calc(var(--cnvs-mfp-z-index-base) + 3);
        position: fixed;
        outline: none !important;
        -webkit-backface-visibility: hidden;
    }

    .mfp-container {
        text-align: center;
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        padding: 0 var(--cnvs-mfp-popup-padding-left);
        box-sizing: border-box;
    }

        .mfp-container::before {
            content: "";
            display: inline-block;
            height: 100%;
            vertical-align: middle;
        }

    .mfp-align-top .mfp-container::before {
        display: none;
    }

    .mfp-ajax-cur {
        cursor: progress;
    }

    .mfp-zoom-out-cur {
        cursor: -moz-zoom-out;
        cursor: -webkit-zoom-out;
        cursor: zoom-out;
    }

    .mfp-close,
    .mfp-arrow,
    .mfp-counter {
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none;
    }

    .mfp-loading.mfp-figure {
        display: none;
    }

    .mfp-hide {
        display: none !important;
    }

    button.mfp-close, button.mfp-arrow {
        overflow: visible;
        cursor: pointer;
        background: transparent;
        border: 0;
        -webkit-appearance: none;
        display: block;
        outline: none;
        padding: 0;
        z-index: calc(var(--cnvs-mfp-z-index-base) + 6);
        box-shadow: none;
        touch-action: manipulation;
    }

    button::-moz-focus-inner {
        padding: 0;
        border: 0;
    }

    .mfp-close {
        width: var(--cnvs-mfp-close-btn-size);
        height: var(--cnvs-mfp-close-btn-size);
        line-height: var(--cnvs-mfp-close-btn-size);
        position: absolute;
        right: 0;
        top: 0;
        text-decoration: none;
        text-align: center;
        opacity: var(--cnvs-mfp-controls-opacity);
        padding: 0 0 18px 10px;
        color: var(--cnvs-mfp-controls-color);
        font-style: normal;
        font-size: var(--cnvs-mfp-close-btn-font-size);
    }

        .mfp-close:hover, .mfp-close:focus {
            opacity: 1;
        }

        .mfp-close:active {
            top: 1px;
        }

    .mfp-close-btn-in .mfp-close {
        color: var(--cnvs-mfp-inner-close-icon-color);
    }

    .mfp-counter {
        position: absolute;
        top: auto;
        bottom: 25px;
        right: 20px;
        font-size: 0.75rem;
        line-height: 18px;
        white-space: nowrap;
        padding: 0.5rem 1rem;
        background: rgba(0, 0, 0, 0.5);
        border-radius: 0.25rem;
        color: var(--cnvs-mfp-controls-text-color);
    }

        .mfp-counter:empty {
            display: none;
        }

    .mfp-arrow {
        opacity: var(--cnvs-mfp-controls-opacity);
        position: absolute;
        margin: 0;
        top: 50%;
        left: 0;
        padding: 0;
        width: var(--cnvs-mfp-arrow-size);
        height: var(--cnvs-mfp-arrow-size);
        font-family: "bootstrap-icons";
        line-height: inherit;
        -webkit-tap-highlight-color: transparent;
        font-size: calc(var(--cnvs-mfp-arrow-size) / 2);
        transform: translateY(-50%);
        color: var(--cnvs-mfp-link-color);
        transition: all 0.3s ease;
    }

        .mfp-arrow:hover {
            opacity: 1;
            transform: translateY(-50%) scale(1.2);
        }

    @media (max-width: 991.98px) {
        .mfp-arrow {
            background-color: rgba(0, 0, 0, 0.75) !important;
        }

            .mfp-arrow:hover {
                transform: translateY(-50%);
                background-color: rgba(0, 0, 0, 0.85) !important;
            }
    }

    .mfp-iframe-scaler {
        width: 100%;
        height: 0;
        overflow: hidden;
        padding-top: calc(var(--cnvs-mfp-iframe-ratio) * 100%);
    }

        .mfp-iframe-scaler iframe {
            position: absolute;
            display: block;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            box-shadow: var(--cnvs-mfp-shadow);
            background: var(--cnvs-mfp-iframe-background);
        }

    /* Main image in popup */
    img.mfp-img {
        width: auto;
        max-width: 100%;
        height: auto;
        display: block;
        line-height: 0;
        box-sizing: border-box;
        margin: 0 auto;
    }

    /* The shadow behind the image */
    .mfp-figure {
        line-height: 0;
    }

        .mfp-figure::after {
            content: "";
            position: absolute;
            left: 0;
            top: 0;
            bottom: 0;
            display: block;
            right: 0;
            width: auto;
            height: auto;
            z-index: -1;
            box-shadow: var(--cnvs-mfp-shadow);
            background: var(--cnvs-mfp-image-background);
        }

        .mfp-figure small, .mfp-figure .small {
            color: var(--cnvs-mfp-caption-subtitle-color);
            display: block;
            font-size: 12px;
            line-height: 14px;
        }

            .mfp-figure small:empty, .mfp-figure .small:empty {
                display: none;
            }

        .mfp-figure figure {
            margin: 0;
        }

    .mfp-bottom-bar {
        margin-top: -36px;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        cursor: auto;
    }

    .mfp-title {
        position: absolute;
        left: 50%;
        bottom: 25px;
        transform: translateX(-50%);
        width: auto;
        text-align: center;
        line-height: 1.65;
        color: var(--cnvs-mfp-caption-title-color);
        word-wrap: break-word;
        padding: var(--cnvs-mfp-title-padding);
        background: rgba(39, 60, 68, 0.2);
        -webkit-backdrop-filter: blur(3em);
        backdrop-filter: blur(3em);
        border-radius: var(--cnvs-mfp-title-border-radius);
    }

        .mfp-title:empty {
            display: none;
        }

    @media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
        /**
   * Remove all paddings around the image on small screen
   */
    }

    @media all and (max-width: 900px) {
        .mfp-arrow {
            -webkit-transform: translateY(-50%) scale(0.75) !important;
            transform: translateY(-50%) scale(0.75) !important;
        }

        .mfp-container {
            padding-left: var(--cnvs-mfp-popup-padding-left-mobile);
            padding-right: var(--cnvs-mfp-popup-padding-left-mobile);
        }
    }
    /*!
 * animate.css - https://animate.style/
 * Version - 4.1.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2020 Animate.css
 */
    :root {
        --cnvs-animate-duration: 1s;
        --cnvs-animate-delay: 1s;
        --cnvs-animate-repeat: 1;
    }

    .not-animated,
    [data-animate]:not(.animated) {
        opacity: 0;
    }

    .animated {
        -webkit-animation-duration: 1s;
        animation-duration: 1s;
        -webkit-animation-duration: var(--cnvs-animate-duration);
        animation-duration: var(--cnvs-animate-duration);
        -webkit-animation-fill-mode: both;
        animation-fill-mode: both;
    }

        .animated.infinite {
            -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
        }

        .animated.fast {
            -webkit-animation-duration: calc(var(--cnvs-animate-duration) * 0.8);
            animation-duration: calc(var(--cnvs-animate-duration) * 0.8);
        }

        .animated.slow {
            -webkit-animation-duration: calc(var(--cnvs-animate-duration) * 2);
            animation-duration: calc(var(--cnvs-animate-duration) * 2);
        }

    @media print, (prefers-reduced-motion: reduce) {
        .animated {
            -webkit-animation-duration: 1ms !important;
            animation-duration: 1ms !important;
            -webkit-transition-duration: 1ms !important;
            transition-duration: 1ms !important;
            -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
        }

            .animated[class*=Out] {
                opacity: 0;
            }
    }

    /* Attention seekers  */
    @-webkit-keyframes bounce {
        from, 20%, 53%, to {
            -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        40%, 43% {
            -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            -webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
            transform: translate3d(0, -30px, 0) scaleY(1.1);
        }

        70% {
            -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            -webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
            transform: translate3d(0, -15px, 0) scaleY(1.05);
        }

        80% {
            -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            -webkit-transform: translate3d(0, 0, 0) scaleY(0.95);
            transform: translate3d(0, 0, 0) scaleY(0.95);
        }

        90% {
            -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
            transform: translate3d(0, -4px, 0) scaleY(1.02);
        }
    }

    @keyframes bounce {
        from, 20%, 53%, to {
            -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        40%, 43% {
            -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            -webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
            transform: translate3d(0, -30px, 0) scaleY(1.1);
        }

        70% {
            -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            -webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
            transform: translate3d(0, -15px, 0) scaleY(1.05);
        }

        80% {
            -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            -webkit-transform: translate3d(0, 0, 0) scaleY(0.95);
            transform: translate3d(0, 0, 0) scaleY(0.95);
        }

        90% {
            -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
            transform: translate3d(0, -4px, 0) scaleY(1.02);
        }
    }

    .bounce {
        -webkit-animation-name: bounce;
        animation-name: bounce;
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
    }

    @-webkit-keyframes flash {
        from, 50%, to {
            opacity: 1;
        }

        25%, 75% {
            opacity: 0;
        }
    }

    @keyframes flash {
        from, 50%, to {
            opacity: 1;
        }

        25%, 75% {
            opacity: 0;
        }
    }

    .flash {
        -webkit-animation-name: flash;
        animation-name: flash;
    }

    /* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
    @-webkit-keyframes pulse {
        from {
            -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
        }

        50% {
            -webkit-transform: scale3d(1.05, 1.05, 1.05);
            transform: scale3d(1.05, 1.05, 1.05);
        }

        to {
            -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
        }
    }

    @keyframes pulse {
        from {
            -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
        }

        50% {
            -webkit-transform: scale3d(1.05, 1.05, 1.05);
            transform: scale3d(1.05, 1.05, 1.05);
        }

        to {
            -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
        }
    }

    @-webkit-keyframes rubberBand {
        from {
            -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
        }

        30% {
            -webkit-transform: scale3d(1.25, 0.75, 1);
            transform: scale3d(1.25, 0.75, 1);
        }

        40% {
            -webkit-transform: scale3d(0.75, 1.25, 1);
            transform: scale3d(0.75, 1.25, 1);
        }

        50% {
            -webkit-transform: scale3d(1.15, 0.85, 1);
            transform: scale3d(1.15, 0.85, 1);
        }

        65% {
            -webkit-transform: scale3d(0.95, 1.05, 1);
            transform: scale3d(0.95, 1.05, 1);
        }

        75% {
            -webkit-transform: scale3d(1.05, 0.95, 1);
            transform: scale3d(1.05, 0.95, 1);
        }

        to {
            -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
        }
    }

    @keyframes rubberBand {
        from {
            -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
        }

        30% {
            -webkit-transform: scale3d(1.25, 0.75, 1);
            transform: scale3d(1.25, 0.75, 1);
        }

        40% {
            -webkit-transform: scale3d(0.75, 1.25, 1);
            transform: scale3d(0.75, 1.25, 1);
        }

        50% {
            -webkit-transform: scale3d(1.15, 0.85, 1);
            transform: scale3d(1.15, 0.85, 1);
        }

        65% {
            -webkit-transform: scale3d(0.95, 1.05, 1);
            transform: scale3d(0.95, 1.05, 1);
        }

        75% {
            -webkit-transform: scale3d(1.05, 0.95, 1);
            transform: scale3d(1.05, 0.95, 1);
        }

        to {
            -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
        }
    }

    @-webkit-keyframes shakeX {
        from, to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        10%, 30%, 50%, 70%, 90% {
            -webkit-transform: translate3d(-10px, 0, 0);
            transform: translate3d(-10px, 0, 0);
        }

        20%, 40%, 60%, 80% {
            -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0);
        }
    }

    @keyframes shakeX {
        from, to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        10%, 30%, 50%, 70%, 90% {
            -webkit-transform: translate3d(-10px, 0, 0);
            transform: translate3d(-10px, 0, 0);
        }

        20%, 40%, 60%, 80% {
            -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0);
        }
    }

    @-webkit-keyframes shakeY {
        from, to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        10%, 30%, 50%, 70%, 90% {
            -webkit-transform: translate3d(0, -10px, 0);
            transform: translate3d(0, -10px, 0);
        }

        20%, 40%, 60%, 80% {
            -webkit-transform: translate3d(0, 10px, 0);
            transform: translate3d(0, 10px, 0);
        }
    }

    @keyframes shakeY {
        from, to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        10%, 30%, 50%, 70%, 90% {
            -webkit-transform: translate3d(0, -10px, 0);
            transform: translate3d(0, -10px, 0);
        }

        20%, 40%, 60%, 80% {
            -webkit-transform: translate3d(0, 10px, 0);
            transform: translate3d(0, 10px, 0);
        }
    }

    @-webkit-keyframes headShake {
        0% {
            -webkit-transform: translateX(0);
            transform: translateX(0);
        }

        6.5% {
            -webkit-transform: translateX(-6px) rotateY(-9deg);
            transform: translateX(-6px) rotateY(-9deg);
        }

        18.5% {
            -webkit-transform: translateX(5px) rotateY(7deg);
            transform: translateX(5px) rotateY(7deg);
        }

        31.5% {
            -webkit-transform: translateX(-3px) rotateY(-5deg);
            transform: translateX(-3px) rotateY(-5deg);
        }

        43.5% {
            -webkit-transform: translateX(2px) rotateY(3deg);
            transform: translateX(2px) rotateY(3deg);
        }

        50% {
            -webkit-transform: translateX(0);
            transform: translateX(0);
        }
    }

    @keyframes headShake {
        0% {
            -webkit-transform: translateX(0);
            transform: translateX(0);
        }

        6.5% {
            -webkit-transform: translateX(-6px) rotateY(-9deg);
            transform: translateX(-6px) rotateY(-9deg);
        }

        18.5% {
            -webkit-transform: translateX(5px) rotateY(7deg);
            transform: translateX(5px) rotateY(7deg);
        }

        31.5% {
            -webkit-transform: translateX(-3px) rotateY(-5deg);
            transform: translateX(-3px) rotateY(-5deg);
        }

        43.5% {
            -webkit-transform: translateX(2px) rotateY(3deg);
            transform: translateX(2px) rotateY(3deg);
        }

        50% {
            -webkit-transform: translateX(0);
            transform: translateX(0);
        }
    }

    @-webkit-keyframes swing {
        20% {
            -webkit-transform: rotate3d(0, 0, 1, 15deg);
            transform: rotate3d(0, 0, 1, 15deg);
        }

        40% {
            -webkit-transform: rotate3d(0, 0, 1, -10deg);
            transform: rotate3d(0, 0, 1, -10deg);
        }

        60% {
            -webkit-transform: rotate3d(0, 0, 1, 5deg);
            transform: rotate3d(0, 0, 1, 5deg);
        }

        80% {
            -webkit-transform: rotate3d(0, 0, 1, -5deg);
            transform: rotate3d(0, 0, 1, -5deg);
        }

        to {
            -webkit-transform: rotate3d(0, 0, 1, 0deg);
            transform: rotate3d(0, 0, 1, 0deg);
        }
    }

    @keyframes swing {
        20% {
            -webkit-transform: rotate3d(0, 0, 1, 15deg);
            transform: rotate3d(0, 0, 1, 15deg);
        }

        40% {
            -webkit-transform: rotate3d(0, 0, 1, -10deg);
            transform: rotate3d(0, 0, 1, -10deg);
        }

        60% {
            -webkit-transform: rotate3d(0, 0, 1, 5deg);
            transform: rotate3d(0, 0, 1, 5deg);
        }

        80% {
            -webkit-transform: rotate3d(0, 0, 1, -5deg);
            transform: rotate3d(0, 0, 1, -5deg);
        }

        to {
            -webkit-transform: rotate3d(0, 0, 1, 0deg);
            transform: rotate3d(0, 0, 1, 0deg);
        }
    }

    .swing {
        -webkit-transform-origin: top center;
        transform-origin: top center;
        -webkit-animation-name: swing;
        animation-name: swing;
    }

    @-webkit-keyframes tada {
        from {
            -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
        }

        10%, 20% {
            -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
            transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
        }

        30%, 50%, 70%, 90% {
            -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
            transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
        }

        40%, 60%, 80% {
            -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
            transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
        }

        to {
            -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
        }
    }

    @keyframes tada {
        from {
            -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
        }

        10%, 20% {
            -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
            transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
        }

        30%, 50%, 70%, 90% {
            -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
            transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
        }

        40%, 60%, 80% {
            -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
            transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
        }

        to {
            -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
        }
    }

    .tada {
        -webkit-animation-name: tada;
        animation-name: tada;
    }

    /* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
    @-webkit-keyframes wobble {
        from {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        15% {
            -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
            transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
        }

        30% {
            -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
            transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
        }

        45% {
            -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
            transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
        }

        60% {
            -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
            transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
        }

        75% {
            -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
            transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes wobble {
        from {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        15% {
            -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
            transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
        }

        30% {
            -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
            transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
        }

        45% {
            -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
            transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
        }

        60% {
            -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
            transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
        }

        75% {
            -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
            transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes jello {
        from, 11.1%, to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        22.2% {
            -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
            transform: skewX(-12.5deg) skewY(-12.5deg);
        }

        33.3% {
            -webkit-transform: skewX(6.25deg) skewY(6.25deg);
            transform: skewX(6.25deg) skewY(6.25deg);
        }

        44.4% {
            -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
            transform: skewX(-3.125deg) skewY(-3.125deg);
        }

        55.5% {
            -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
            transform: skewX(1.5625deg) skewY(1.5625deg);
        }

        66.6% {
            -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
            transform: skewX(-0.78125deg) skewY(-0.78125deg);
        }

        77.7% {
            -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
            transform: skewX(0.390625deg) skewY(0.390625deg);
        }

        88.8% {
            -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
            transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
        }
    }

    @keyframes jello {
        from, 11.1%, to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        22.2% {
            -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
            transform: skewX(-12.5deg) skewY(-12.5deg);
        }

        33.3% {
            -webkit-transform: skewX(6.25deg) skewY(6.25deg);
            transform: skewX(6.25deg) skewY(6.25deg);
        }

        44.4% {
            -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
            transform: skewX(-3.125deg) skewY(-3.125deg);
        }

        55.5% {
            -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
            transform: skewX(1.5625deg) skewY(1.5625deg);
        }

        66.6% {
            -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
            transform: skewX(-0.78125deg) skewY(-0.78125deg);
        }

        77.7% {
            -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
            transform: skewX(0.390625deg) skewY(0.390625deg);
        }

        88.8% {
            -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
            transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
        }
    }

    @-webkit-keyframes heartBeat {
        0% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }

        14% {
            -webkit-transform: scale(1.3);
            transform: scale(1.3);
        }

        28% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }

        42% {
            -webkit-transform: scale(1.3);
            transform: scale(1.3);
        }

        70% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }
    }

    @keyframes heartBeat {
        0% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }

        14% {
            -webkit-transform: scale(1.3);
            transform: scale(1.3);
        }

        28% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }

        42% {
            -webkit-transform: scale(1.3);
            transform: scale(1.3);
        }

        70% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }
    }

    /* Back entrances */
    @-webkit-keyframes backInDown {
        0% {
            -webkit-transform: translateY(-1200px) scale(0.7);
            transform: translateY(-1200px) scale(0.7);
            opacity: 0.7;
        }

        80% {
            -webkit-transform: translateY(0px) scale(0.7);
            transform: translateY(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }
    }

    @keyframes backInDown {
        0% {
            -webkit-transform: translateY(-1200px) scale(0.7);
            transform: translateY(-1200px) scale(0.7);
            opacity: 0.7;
        }

        80% {
            -webkit-transform: translateY(0px) scale(0.7);
            transform: translateY(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }
    }

    @-webkit-keyframes backInLeft {
        0% {
            -webkit-transform: translateX(-2000px) scale(0.7);
            transform: translateX(-2000px) scale(0.7);
            opacity: 0.7;
        }

        80% {
            -webkit-transform: translateX(0px) scale(0.7);
            transform: translateX(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }
    }

    @keyframes backInLeft {
        0% {
            -webkit-transform: translateX(-2000px) scale(0.7);
            transform: translateX(-2000px) scale(0.7);
            opacity: 0.7;
        }

        80% {
            -webkit-transform: translateX(0px) scale(0.7);
            transform: translateX(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }
    }

    @-webkit-keyframes backInRight {
        0% {
            -webkit-transform: translateX(2000px) scale(0.7);
            transform: translateX(2000px) scale(0.7);
            opacity: 0.7;
        }

        80% {
            -webkit-transform: translateX(0px) scale(0.7);
            transform: translateX(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }
    }

    @keyframes backInRight {
        0% {
            -webkit-transform: translateX(2000px) scale(0.7);
            transform: translateX(2000px) scale(0.7);
            opacity: 0.7;
        }

        80% {
            -webkit-transform: translateX(0px) scale(0.7);
            transform: translateX(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }
    }

    @-webkit-keyframes backInUp {
        0% {
            -webkit-transform: translateY(1200px) scale(0.7);
            transform: translateY(1200px) scale(0.7);
            opacity: 0.7;
        }

        80% {
            -webkit-transform: translateY(0px) scale(0.7);
            transform: translateY(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }
    }

    @keyframes backInUp {
        0% {
            -webkit-transform: translateY(1200px) scale(0.7);
            transform: translateY(1200px) scale(0.7);
            opacity: 0.7;
        }

        80% {
            -webkit-transform: translateY(0px) scale(0.7);
            transform: translateY(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }
    }

    /* Back exits */
    @-webkit-keyframes backOutDown {
        0% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }

        20% {
            -webkit-transform: translateY(0px) scale(0.7);
            transform: translateY(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: translateY(700px) scale(0.7);
            transform: translateY(700px) scale(0.7);
            opacity: 0.7;
        }
    }

    @keyframes backOutDown {
        0% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }

        20% {
            -webkit-transform: translateY(0px) scale(0.7);
            transform: translateY(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: translateY(700px) scale(0.7);
            transform: translateY(700px) scale(0.7);
            opacity: 0.7;
        }
    }

    @-webkit-keyframes backOutLeft {
        0% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }

        20% {
            -webkit-transform: translateX(0px) scale(0.7);
            transform: translateX(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: translateX(-2000px) scale(0.7);
            transform: translateX(-2000px) scale(0.7);
            opacity: 0.7;
        }
    }

    @keyframes backOutLeft {
        0% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }

        20% {
            -webkit-transform: translateX(0px) scale(0.7);
            transform: translateX(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: translateX(-2000px) scale(0.7);
            transform: translateX(-2000px) scale(0.7);
            opacity: 0.7;
        }
    }

    @-webkit-keyframes backOutRight {
        0% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }

        20% {
            -webkit-transform: translateX(0px) scale(0.7);
            transform: translateX(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: translateX(2000px) scale(0.7);
            transform: translateX(2000px) scale(0.7);
            opacity: 0.7;
        }
    }

    @keyframes backOutRight {
        0% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }

        20% {
            -webkit-transform: translateX(0px) scale(0.7);
            transform: translateX(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: translateX(2000px) scale(0.7);
            transform: translateX(2000px) scale(0.7);
            opacity: 0.7;
        }
    }

    @-webkit-keyframes backOutUp {
        0% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }

        20% {
            -webkit-transform: translateY(0px) scale(0.7);
            transform: translateY(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: translateY(-700px) scale(0.7);
            transform: translateY(-700px) scale(0.7);
            opacity: 0.7;
        }
    }

    @keyframes backOutUp {
        0% {
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }

        20% {
            -webkit-transform: translateY(0px) scale(0.7);
            transform: translateY(0px) scale(0.7);
            opacity: 0.7;
        }

        100% {
            -webkit-transform: translateY(-700px) scale(0.7);
            transform: translateY(-700px) scale(0.7);
            opacity: 0.7;
        }
    }

    /* Bouncing entrances  */
    @-webkit-keyframes bounceIn {
        from, 20%, 40%, 60%, 80%, to {
            -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        }

        0% {
            opacity: 0;
            -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3);
        }

        20% {
            -webkit-transform: scale3d(1.1, 1.1, 1.1);
            transform: scale3d(1.1, 1.1, 1.1);
        }

        40% {
            -webkit-transform: scale3d(0.9, 0.9, 0.9);
            transform: scale3d(0.9, 0.9, 0.9);
        }

        60% {
            opacity: 1;
            -webkit-transform: scale3d(1.03, 1.03, 1.03);
            transform: scale3d(1.03, 1.03, 1.03);
        }

        80% {
            -webkit-transform: scale3d(0.97, 0.97, 0.97);
            transform: scale3d(0.97, 0.97, 0.97);
        }

        to {
            opacity: 1;
            -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
        }
    }

    @keyframes bounceIn {
        from, 20%, 40%, 60%, 80%, to {
            -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        }

        0% {
            opacity: 0;
            -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3);
        }

        20% {
            -webkit-transform: scale3d(1.1, 1.1, 1.1);
            transform: scale3d(1.1, 1.1, 1.1);
        }

        40% {
            -webkit-transform: scale3d(0.9, 0.9, 0.9);
            transform: scale3d(0.9, 0.9, 0.9);
        }

        60% {
            opacity: 1;
            -webkit-transform: scale3d(1.03, 1.03, 1.03);
            transform: scale3d(1.03, 1.03, 1.03);
        }

        80% {
            -webkit-transform: scale3d(0.97, 0.97, 0.97);
            transform: scale3d(0.97, 0.97, 0.97);
        }

        to {
            opacity: 1;
            -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
        }
    }

    .bounceIn {
        -webkit-animation-duration: 0.75s;
        animation-duration: 0.75s;
        -webkit-animation-duration: calc(var(--cnvs-animate-duration) * 0.75);
        animation-duration: calc(var(--cnvs-animate-duration) * 0.75);
        -webkit-animation-name: bounceIn;
        animation-name: bounceIn;
    }

    @-webkit-keyframes bounceInDown {
        from, 60%, 75%, 90%, to {
            -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        }

        0% {
            opacity: 0;
            -webkit-transform: translate3d(0, -3000px, 0) scaleY(3);
            transform: translate3d(0, -3000px, 0) scaleY(3);
        }

        60% {
            opacity: 1;
            -webkit-transform: translate3d(0, 25px, 0) scaleY(0.9);
            transform: translate3d(0, 25px, 0) scaleY(0.9);
        }

        75% {
            -webkit-transform: translate3d(0, -10px, 0) scaleY(0.95);
            transform: translate3d(0, -10px, 0) scaleY(0.95);
        }

        90% {
            -webkit-transform: translate3d(0, 5px, 0) scaleY(0.985);
            transform: translate3d(0, 5px, 0) scaleY(0.985);
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes bounceInDown {
        from, 60%, 75%, 90%, to {
            -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        }

        0% {
            opacity: 0;
            -webkit-transform: translate3d(0, -3000px, 0) scaleY(3);
            transform: translate3d(0, -3000px, 0) scaleY(3);
        }

        60% {
            opacity: 1;
            -webkit-transform: translate3d(0, 25px, 0) scaleY(0.9);
            transform: translate3d(0, 25px, 0) scaleY(0.9);
        }

        75% {
            -webkit-transform: translate3d(0, -10px, 0) scaleY(0.95);
            transform: translate3d(0, -10px, 0) scaleY(0.95);
        }

        90% {
            -webkit-transform: translate3d(0, 5px, 0) scaleY(0.985);
            transform: translate3d(0, 5px, 0) scaleY(0.985);
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes bounceInLeft {
        from, 60%, 75%, 90%, to {
            -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        }

        0% {
            opacity: 0;
            -webkit-transform: translate3d(-3000px, 0, 0) scaleX(3);
            transform: translate3d(-3000px, 0, 0) scaleX(3);
        }

        60% {
            opacity: 1;
            -webkit-transform: translate3d(25px, 0, 0) scaleX(1);
            transform: translate3d(25px, 0, 0) scaleX(1);
        }

        75% {
            -webkit-transform: translate3d(-10px, 0, 0) scaleX(0.98);
            transform: translate3d(-10px, 0, 0) scaleX(0.98);
        }

        90% {
            -webkit-transform: translate3d(5px, 0, 0) scaleX(0.995);
            transform: translate3d(5px, 0, 0) scaleX(0.995);
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes bounceInLeft {
        from, 60%, 75%, 90%, to {
            -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        }

        0% {
            opacity: 0;
            -webkit-transform: translate3d(-3000px, 0, 0) scaleX(3);
            transform: translate3d(-3000px, 0, 0) scaleX(3);
        }

        60% {
            opacity: 1;
            -webkit-transform: translate3d(25px, 0, 0) scaleX(1);
            transform: translate3d(25px, 0, 0) scaleX(1);
        }

        75% {
            -webkit-transform: translate3d(-10px, 0, 0) scaleX(0.98);
            transform: translate3d(-10px, 0, 0) scaleX(0.98);
        }

        90% {
            -webkit-transform: translate3d(5px, 0, 0) scaleX(0.995);
            transform: translate3d(5px, 0, 0) scaleX(0.995);
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes bounceInRight {
        from, 60%, 75%, 90%, to {
            -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        }

        from {
            opacity: 0;
            -webkit-transform: translate3d(3000px, 0, 0) scaleX(3);
            transform: translate3d(3000px, 0, 0) scaleX(3);
        }

        60% {
            opacity: 1;
            -webkit-transform: translate3d(-25px, 0, 0) scaleX(1);
            transform: translate3d(-25px, 0, 0) scaleX(1);
        }

        75% {
            -webkit-transform: translate3d(10px, 0, 0) scaleX(0.98);
            transform: translate3d(10px, 0, 0) scaleX(0.98);
        }

        90% {
            -webkit-transform: translate3d(-5px, 0, 0) scaleX(0.995);
            transform: translate3d(-5px, 0, 0) scaleX(0.995);
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes bounceInRight {
        from, 60%, 75%, 90%, to {
            -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        }

        from {
            opacity: 0;
            -webkit-transform: translate3d(3000px, 0, 0) scaleX(3);
            transform: translate3d(3000px, 0, 0) scaleX(3);
        }

        60% {
            opacity: 1;
            -webkit-transform: translate3d(-25px, 0, 0) scaleX(1);
            transform: translate3d(-25px, 0, 0) scaleX(1);
        }

        75% {
            -webkit-transform: translate3d(10px, 0, 0) scaleX(0.98);
            transform: translate3d(10px, 0, 0) scaleX(0.98);
        }

        90% {
            -webkit-transform: translate3d(-5px, 0, 0) scaleX(0.995);
            transform: translate3d(-5px, 0, 0) scaleX(0.995);
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes bounceInUp {
        from, 60%, 75%, 90%, to {
            -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        }

        from {
            opacity: 0;
            -webkit-transform: translate3d(0, 3000px, 0) scaleY(5);
            transform: translate3d(0, 3000px, 0) scaleY(5);
        }

        60% {
            opacity: 1;
            -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
            transform: translate3d(0, -20px, 0) scaleY(0.9);
        }

        75% {
            -webkit-transform: translate3d(0, 10px, 0) scaleY(0.95);
            transform: translate3d(0, 10px, 0) scaleY(0.95);
        }

        90% {
            -webkit-transform: translate3d(0, -5px, 0) scaleY(0.985);
            transform: translate3d(0, -5px, 0) scaleY(0.985);
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes bounceInUp {
        from, 60%, 75%, 90%, to {
            -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        }

        from {
            opacity: 0;
            -webkit-transform: translate3d(0, 3000px, 0) scaleY(5);
            transform: translate3d(0, 3000px, 0) scaleY(5);
        }

        60% {
            opacity: 1;
            -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
            transform: translate3d(0, -20px, 0) scaleY(0.9);
        }

        75% {
            -webkit-transform: translate3d(0, 10px, 0) scaleY(0.95);
            transform: translate3d(0, 10px, 0) scaleY(0.95);
        }

        90% {
            -webkit-transform: translate3d(0, -5px, 0) scaleY(0.985);
            transform: translate3d(0, -5px, 0) scaleY(0.985);
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    /* Bouncing exits  */
    @-webkit-keyframes bounceOut {
        20% {
            -webkit-transform: scale3d(0.9, 0.9, 0.9);
            transform: scale3d(0.9, 0.9, 0.9);
        }

        50%, 55% {
            opacity: 1;
            -webkit-transform: scale3d(1.1, 1.1, 1.1);
            transform: scale3d(1.1, 1.1, 1.1);
        }

        to {
            opacity: 0;
            -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3);
        }
    }

    @keyframes bounceOut {
        20% {
            -webkit-transform: scale3d(0.9, 0.9, 0.9);
            transform: scale3d(0.9, 0.9, 0.9);
        }

        50%, 55% {
            opacity: 1;
            -webkit-transform: scale3d(1.1, 1.1, 1.1);
            transform: scale3d(1.1, 1.1, 1.1);
        }

        to {
            opacity: 0;
            -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3);
        }
    }

    @-webkit-keyframes bounceOutDown {
        20% {
            -webkit-transform: translate3d(0, 10px, 0) scaleY(0.985);
            transform: translate3d(0, 10px, 0) scaleY(0.985);
        }

        40%, 45% {
            opacity: 1;
            -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
            transform: translate3d(0, -20px, 0) scaleY(0.9);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, 2000px, 0) scaleY(3);
            transform: translate3d(0, 2000px, 0) scaleY(3);
        }
    }

    @keyframes bounceOutDown {
        20% {
            -webkit-transform: translate3d(0, 10px, 0) scaleY(0.985);
            transform: translate3d(0, 10px, 0) scaleY(0.985);
        }

        40%, 45% {
            opacity: 1;
            -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
            transform: translate3d(0, -20px, 0) scaleY(0.9);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, 2000px, 0) scaleY(3);
            transform: translate3d(0, 2000px, 0) scaleY(3);
        }
    }

    @-webkit-keyframes bounceOutLeft {
        20% {
            opacity: 1;
            -webkit-transform: translate3d(20px, 0, 0) scaleX(0.9);
            transform: translate3d(20px, 0, 0) scaleX(0.9);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(-2000px, 0, 0) scaleX(2);
            transform: translate3d(-2000px, 0, 0) scaleX(2);
        }
    }

    @keyframes bounceOutLeft {
        20% {
            opacity: 1;
            -webkit-transform: translate3d(20px, 0, 0) scaleX(0.9);
            transform: translate3d(20px, 0, 0) scaleX(0.9);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(-2000px, 0, 0) scaleX(2);
            transform: translate3d(-2000px, 0, 0) scaleX(2);
        }
    }

    @-webkit-keyframes bounceOutRight {
        20% {
            opacity: 1;
            -webkit-transform: translate3d(-20px, 0, 0) scaleX(0.9);
            transform: translate3d(-20px, 0, 0) scaleX(0.9);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(2000px, 0, 0) scaleX(2);
            transform: translate3d(2000px, 0, 0) scaleX(2);
        }
    }

    @keyframes bounceOutRight {
        20% {
            opacity: 1;
            -webkit-transform: translate3d(-20px, 0, 0) scaleX(0.9);
            transform: translate3d(-20px, 0, 0) scaleX(0.9);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(2000px, 0, 0) scaleX(2);
            transform: translate3d(2000px, 0, 0) scaleX(2);
        }
    }

    @-webkit-keyframes bounceOutUp {
        20% {
            -webkit-transform: translate3d(0, -10px, 0) scaleY(0.985);
            transform: translate3d(0, -10px, 0) scaleY(0.985);
        }

        40%, 45% {
            opacity: 1;
            -webkit-transform: translate3d(0, 20px, 0) scaleY(0.9);
            transform: translate3d(0, 20px, 0) scaleY(0.9);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, -2000px, 0) scaleY(3);
            transform: translate3d(0, -2000px, 0) scaleY(3);
        }
    }

    @keyframes bounceOutUp {
        20% {
            -webkit-transform: translate3d(0, -10px, 0) scaleY(0.985);
            transform: translate3d(0, -10px, 0) scaleY(0.985);
        }

        40%, 45% {
            opacity: 1;
            -webkit-transform: translate3d(0, 20px, 0) scaleY(0.9);
            transform: translate3d(0, 20px, 0) scaleY(0.9);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, -2000px, 0) scaleY(3);
            transform: translate3d(0, -2000px, 0) scaleY(3);
        }
    }

    /* Fading entrances  */
    @-webkit-keyframes fadeIn {
        from {
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }

    @keyframes fadeIn {
        from {
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }

    .fadeIn {
        -webkit-animation-name: fadeIn;
        animation-name: fadeIn;
    }

    @-webkit-keyframes fadeInDown {
        from {
            opacity: 0;
            -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInDown {
        from {
            opacity: 0;
            -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeInDownBig {
        from {
            opacity: 0;
            -webkit-transform: translate3d(0, -2000px, 0);
            transform: translate3d(0, -2000px, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInDownBig {
        from {
            opacity: 0;
            -webkit-transform: translate3d(0, -2000px, 0);
            transform: translate3d(0, -2000px, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeInLeft {
        from {
            opacity: 0;
            -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInLeft {
        from {
            opacity: 0;
            -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeInLeftBig {
        from {
            opacity: 0;
            -webkit-transform: translate3d(-2000px, 0, 0);
            transform: translate3d(-2000px, 0, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInLeftBig {
        from {
            opacity: 0;
            -webkit-transform: translate3d(-2000px, 0, 0);
            transform: translate3d(-2000px, 0, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeInRight {
        from {
            opacity: 0;
            -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInRight {
        from {
            opacity: 0;
            -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeInRightBig {
        from {
            opacity: 0;
            -webkit-transform: translate3d(2000px, 0, 0);
            transform: translate3d(2000px, 0, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInRightBig {
        from {
            opacity: 0;
            -webkit-transform: translate3d(2000px, 0, 0);
            transform: translate3d(2000px, 0, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeInUp {
        from {
            opacity: 0;
            -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInUp {
        from {
            opacity: 0;
            -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeInUpBig {
        from {
            opacity: 0;
            -webkit-transform: translate3d(0, 2000px, 0);
            transform: translate3d(0, 2000px, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInUpBig {
        from {
            opacity: 0;
            -webkit-transform: translate3d(0, 2000px, 0);
            transform: translate3d(0, 2000px, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeInTopLeft {
        from {
            opacity: 0;
            -webkit-transform: translate3d(-100%, -100%, 0);
            transform: translate3d(-100%, -100%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInTopLeft {
        from {
            opacity: 0;
            -webkit-transform: translate3d(-100%, -100%, 0);
            transform: translate3d(-100%, -100%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeInTopRight {
        from {
            opacity: 0;
            -webkit-transform: translate3d(100%, -100%, 0);
            transform: translate3d(100%, -100%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInTopRight {
        from {
            opacity: 0;
            -webkit-transform: translate3d(100%, -100%, 0);
            transform: translate3d(100%, -100%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeInBottomLeft {
        from {
            opacity: 0;
            -webkit-transform: translate3d(-100%, 100%, 0);
            transform: translate3d(-100%, 100%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInBottomLeft {
        from {
            opacity: 0;
            -webkit-transform: translate3d(-100%, 100%, 0);
            transform: translate3d(-100%, 100%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes fadeInBottomRight {
        from {
            opacity: 0;
            -webkit-transform: translate3d(100%, 100%, 0);
            transform: translate3d(100%, 100%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes fadeInBottomRight {
        from {
            opacity: 0;
            -webkit-transform: translate3d(100%, 100%, 0);
            transform: translate3d(100%, 100%, 0);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    /* Fading exits */
    @-webkit-keyframes fadeOut {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
        }
    }

    @keyframes fadeOut {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
        }
    }

    .fadeOut {
        -webkit-animation-name: fadeOut;
        animation-name: fadeOut;
    }

    @-webkit-keyframes fadeOutDown {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0);
        }
    }

    @keyframes fadeOutDown {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0);
        }
    }

    @-webkit-keyframes fadeOutDownBig {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, 2000px, 0);
            transform: translate3d(0, 2000px, 0);
        }
    }

    @keyframes fadeOutDownBig {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, 2000px, 0);
            transform: translate3d(0, 2000px, 0);
        }
    }

    @-webkit-keyframes fadeOutLeft {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
        }
    }

    @keyframes fadeOutLeft {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
        }
    }

    @-webkit-keyframes fadeOutLeftBig {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(-2000px, 0, 0);
            transform: translate3d(-2000px, 0, 0);
        }
    }

    @keyframes fadeOutLeftBig {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(-2000px, 0, 0);
            transform: translate3d(-2000px, 0, 0);
        }
    }

    @-webkit-keyframes fadeOutRight {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
        }
    }

    @keyframes fadeOutRight {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
        }
    }

    @-webkit-keyframes fadeOutRightBig {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(2000px, 0, 0);
            transform: translate3d(2000px, 0, 0);
        }
    }

    @keyframes fadeOutRightBig {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(2000px, 0, 0);
            transform: translate3d(2000px, 0, 0);
        }
    }

    @-webkit-keyframes fadeOutUp {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
        }
    }

    @keyframes fadeOutUp {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
        }
    }

    @-webkit-keyframes fadeOutUpBig {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, -2000px, 0);
            transform: translate3d(0, -2000px, 0);
        }
    }

    @keyframes fadeOutUpBig {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(0, -2000px, 0);
            transform: translate3d(0, -2000px, 0);
        }
    }

    @-webkit-keyframes fadeOutTopLeft {
        from {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(-100%, -100%, 0);
            transform: translate3d(-100%, -100%, 0);
        }
    }

    @keyframes fadeOutTopLeft {
        from {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(-100%, -100%, 0);
            transform: translate3d(-100%, -100%, 0);
        }
    }

    @-webkit-keyframes fadeOutTopRight {
        from {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(100%, -100%, 0);
            transform: translate3d(100%, -100%, 0);
        }
    }

    @keyframes fadeOutTopRight {
        from {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(100%, -100%, 0);
            transform: translate3d(100%, -100%, 0);
        }
    }

    @-webkit-keyframes fadeOutBottomRight {
        from {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(100%, 100%, 0);
            transform: translate3d(100%, 100%, 0);
        }
    }

    @keyframes fadeOutBottomRight {
        from {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(100%, 100%, 0);
            transform: translate3d(100%, 100%, 0);
        }
    }

    @-webkit-keyframes fadeOutBottomLeft {
        from {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(-100%, 100%, 0);
            transform: translate3d(-100%, 100%, 0);
        }
    }

    @keyframes fadeOutBottomLeft {
        from {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(-100%, 100%, 0);
            transform: translate3d(-100%, 100%, 0);
        }
    }

    /* Flippers */
    @-webkit-keyframes flip {
        from {
            -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
            transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
            -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
        }

        40% {
            -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
            transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
            -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
        }

        50% {
            -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
            transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
            -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
        }

        80% {
            -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
            transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
            -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
        }

        to {
            -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
            transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
            -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
        }
    }

    @keyframes flip {
        from {
            -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
            transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
            -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
        }

        40% {
            -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
            transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
            -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
        }

        50% {
            -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
            transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
            -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
        }

        80% {
            -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
            transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
            -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
        }

        to {
            -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
            transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
            -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
        }
    }

    .animated.flip {
        -webkit-backface-visibility: visible;
        backface-visibility: visible;
        -webkit-animation-name: flip;
        animation-name: flip;
    }

    @-webkit-keyframes flipInX {
        from {
            -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
            opacity: 0;
        }

        40% {
            -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
        }

        60% {
            -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
            opacity: 1;
        }

        80% {
            -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
        }

        to {
            -webkit-transform: perspective(400px);
            transform: perspective(400px);
        }
    }

    @keyframes flipInX {
        from {
            -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
            opacity: 0;
        }

        40% {
            -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
        }

        60% {
            -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
            opacity: 1;
        }

        80% {
            -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
        }

        to {
            -webkit-transform: perspective(400px);
            transform: perspective(400px);
        }
    }

    @-webkit-keyframes flipInY {
        from {
            -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
            opacity: 0;
        }

        40% {
            -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
            -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
        }

        60% {
            -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
            opacity: 1;
        }

        80% {
            -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
        }

        to {
            -webkit-transform: perspective(400px);
            transform: perspective(400px);
        }
    }

    @keyframes flipInY {
        from {
            -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
            opacity: 0;
        }

        40% {
            -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
            -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
        }

        60% {
            -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
            opacity: 1;
        }

        80% {
            -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
        }

        to {
            -webkit-transform: perspective(400px);
            transform: perspective(400px);
        }
    }

    @-webkit-keyframes flipOutX {
        from {
            -webkit-transform: perspective(400px);
            transform: perspective(400px);
        }

        30% {
            -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            opacity: 1;
        }

        to {
            -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            opacity: 0;
        }
    }

    @keyframes flipOutX {
        from {
            -webkit-transform: perspective(400px);
            transform: perspective(400px);
        }

        30% {
            -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            opacity: 1;
        }

        to {
            -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            opacity: 0;
        }
    }

    @-webkit-keyframes flipOutY {
        from {
            -webkit-transform: perspective(400px);
            transform: perspective(400px);
        }

        30% {
            -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
            opacity: 1;
        }

        to {
            -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            opacity: 0;
        }
    }

    @keyframes flipOutY {
        from {
            -webkit-transform: perspective(400px);
            transform: perspective(400px);
        }

        30% {
            -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
            opacity: 1;
        }

        to {
            -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            opacity: 0;
        }
    }

    /* Lightspeed */
    @-webkit-keyframes lightSpeedInRight {
        from {
            -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
            transform: translate3d(100%, 0, 0) skewX(-30deg);
            opacity: 0;
        }

        60% {
            -webkit-transform: skewX(20deg);
            transform: skewX(20deg);
            opacity: 1;
        }

        80% {
            -webkit-transform: skewX(-5deg);
            transform: skewX(-5deg);
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes lightSpeedInRight {
        from {
            -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
            transform: translate3d(100%, 0, 0) skewX(-30deg);
            opacity: 0;
        }

        60% {
            -webkit-transform: skewX(20deg);
            transform: skewX(20deg);
            opacity: 1;
        }

        80% {
            -webkit-transform: skewX(-5deg);
            transform: skewX(-5deg);
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes lightSpeedInLeft {
        from {
            -webkit-transform: translate3d(-100%, 0, 0) skewX(30deg);
            transform: translate3d(-100%, 0, 0) skewX(30deg);
            opacity: 0;
        }

        60% {
            -webkit-transform: skewX(-20deg);
            transform: skewX(-20deg);
            opacity: 1;
        }

        80% {
            -webkit-transform: skewX(5deg);
            transform: skewX(5deg);
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes lightSpeedInLeft {
        from {
            -webkit-transform: translate3d(-100%, 0, 0) skewX(30deg);
            transform: translate3d(-100%, 0, 0) skewX(30deg);
            opacity: 0;
        }

        60% {
            -webkit-transform: skewX(-20deg);
            transform: skewX(-20deg);
            opacity: 1;
        }

        80% {
            -webkit-transform: skewX(5deg);
            transform: skewX(5deg);
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes lightSpeedOutRight {
        from {
            opacity: 1;
        }

        to {
            -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
            transform: translate3d(100%, 0, 0) skewX(30deg);
            opacity: 0;
        }
    }

    @keyframes lightSpeedOutRight {
        from {
            opacity: 1;
        }

        to {
            -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
            transform: translate3d(100%, 0, 0) skewX(30deg);
            opacity: 0;
        }
    }

    @-webkit-keyframes lightSpeedOutLeft {
        from {
            opacity: 1;
        }

        to {
            -webkit-transform: translate3d(-100%, 0, 0) skewX(-30deg);
            transform: translate3d(-100%, 0, 0) skewX(-30deg);
            opacity: 0;
        }
    }

    @keyframes lightSpeedOutLeft {
        from {
            opacity: 1;
        }

        to {
            -webkit-transform: translate3d(-100%, 0, 0) skewX(-30deg);
            transform: translate3d(-100%, 0, 0) skewX(-30deg);
            opacity: 0;
        }
    }

    /* Rotating entrances */
    @-webkit-keyframes rotateIn {
        from {
            -webkit-transform: rotate3d(0, 0, 1, -200deg);
            transform: rotate3d(0, 0, 1, -200deg);
            opacity: 0;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
            opacity: 1;
        }
    }

    @keyframes rotateIn {
        from {
            -webkit-transform: rotate3d(0, 0, 1, -200deg);
            transform: rotate3d(0, 0, 1, -200deg);
            opacity: 0;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
            opacity: 1;
        }
    }

    @-webkit-keyframes rotateInDownLeft {
        from {
            -webkit-transform: rotate3d(0, 0, 1, -45deg);
            transform: rotate3d(0, 0, 1, -45deg);
            opacity: 0;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
            opacity: 1;
        }
    }

    @keyframes rotateInDownLeft {
        from {
            -webkit-transform: rotate3d(0, 0, 1, -45deg);
            transform: rotate3d(0, 0, 1, -45deg);
            opacity: 0;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
            opacity: 1;
        }
    }

    @-webkit-keyframes rotateInDownRight {
        from {
            -webkit-transform: rotate3d(0, 0, 1, 45deg);
            transform: rotate3d(0, 0, 1, 45deg);
            opacity: 0;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
            opacity: 1;
        }
    }

    @keyframes rotateInDownRight {
        from {
            -webkit-transform: rotate3d(0, 0, 1, 45deg);
            transform: rotate3d(0, 0, 1, 45deg);
            opacity: 0;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
            opacity: 1;
        }
    }

    @-webkit-keyframes rotateInUpLeft {
        from {
            -webkit-transform: rotate3d(0, 0, 1, 45deg);
            transform: rotate3d(0, 0, 1, 45deg);
            opacity: 0;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
            opacity: 1;
        }
    }

    @keyframes rotateInUpLeft {
        from {
            -webkit-transform: rotate3d(0, 0, 1, 45deg);
            transform: rotate3d(0, 0, 1, 45deg);
            opacity: 0;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
            opacity: 1;
        }
    }

    @-webkit-keyframes rotateInUpRight {
        from {
            -webkit-transform: rotate3d(0, 0, 1, -90deg);
            transform: rotate3d(0, 0, 1, -90deg);
            opacity: 0;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
            opacity: 1;
        }
    }

    @keyframes rotateInUpRight {
        from {
            -webkit-transform: rotate3d(0, 0, 1, -90deg);
            transform: rotate3d(0, 0, 1, -90deg);
            opacity: 0;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
            opacity: 1;
        }
    }

    /* Rotating exits */
    @-webkit-keyframes rotateOut {
        from {
            opacity: 1;
        }

        to {
            -webkit-transform: rotate3d(0, 0, 1, 200deg);
            transform: rotate3d(0, 0, 1, 200deg);
            opacity: 0;
        }
    }

    @keyframes rotateOut {
        from {
            opacity: 1;
        }

        to {
            -webkit-transform: rotate3d(0, 0, 1, 200deg);
            transform: rotate3d(0, 0, 1, 200deg);
            opacity: 0;
        }
    }

    @-webkit-keyframes rotateOutDownLeft {
        from {
            opacity: 1;
        }

        to {
            -webkit-transform: rotate3d(0, 0, 1, 45deg);
            transform: rotate3d(0, 0, 1, 45deg);
            opacity: 0;
        }
    }

    @keyframes rotateOutDownLeft {
        from {
            opacity: 1;
        }

        to {
            -webkit-transform: rotate3d(0, 0, 1, 45deg);
            transform: rotate3d(0, 0, 1, 45deg);
            opacity: 0;
        }
    }

    @-webkit-keyframes rotateOutDownRight {
        from {
            opacity: 1;
        }

        to {
            -webkit-transform: rotate3d(0, 0, 1, -45deg);
            transform: rotate3d(0, 0, 1, -45deg);
            opacity: 0;
        }
    }

    @keyframes rotateOutDownRight {
        from {
            opacity: 1;
        }

        to {
            -webkit-transform: rotate3d(0, 0, 1, -45deg);
            transform: rotate3d(0, 0, 1, -45deg);
            opacity: 0;
        }
    }

    @-webkit-keyframes rotateOutUpLeft {
        from {
            opacity: 1;
        }

        to {
            -webkit-transform: rotate3d(0, 0, 1, -45deg);
            transform: rotate3d(0, 0, 1, -45deg);
            opacity: 0;
        }
    }

    @keyframes rotateOutUpLeft {
        from {
            opacity: 1;
        }

        to {
            -webkit-transform: rotate3d(0, 0, 1, -45deg);
            transform: rotate3d(0, 0, 1, -45deg);
            opacity: 0;
        }
    }

    @-webkit-keyframes rotateOutUpRight {
        from {
            opacity: 1;
        }

        to {
            -webkit-transform: rotate3d(0, 0, 1, 90deg);
            transform: rotate3d(0, 0, 1, 90deg);
            opacity: 0;
        }
    }

    @keyframes rotateOutUpRight {
        from {
            opacity: 1;
        }

        to {
            -webkit-transform: rotate3d(0, 0, 1, 90deg);
            transform: rotate3d(0, 0, 1, 90deg);
            opacity: 0;
        }
    }

    /* Specials */
    @-webkit-keyframes hinge {
        0% {
            -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
        }

        20%, 60% {
            -webkit-transform: rotate3d(0, 0, 1, 80deg);
            transform: rotate3d(0, 0, 1, 80deg);
            -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
        }

        40%, 80% {
            -webkit-transform: rotate3d(0, 0, 1, 60deg);
            transform: rotate3d(0, 0, 1, 60deg);
            -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
            opacity: 1;
        }

        to {
            -webkit-transform: translate3d(0, 700px, 0);
            transform: translate3d(0, 700px, 0);
            opacity: 0;
        }
    }

    @keyframes hinge {
        0% {
            -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
        }

        20%, 60% {
            -webkit-transform: rotate3d(0, 0, 1, 80deg);
            transform: rotate3d(0, 0, 1, 80deg);
            -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
        }

        40%, 80% {
            -webkit-transform: rotate3d(0, 0, 1, 60deg);
            transform: rotate3d(0, 0, 1, 60deg);
            -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
            opacity: 1;
        }

        to {
            -webkit-transform: translate3d(0, 700px, 0);
            transform: translate3d(0, 700px, 0);
            opacity: 0;
        }
    }

    @-webkit-keyframes jackInTheBox {
        from {
            opacity: 0;
            -webkit-transform: scale(0.1) rotate(30deg);
            transform: scale(0.1) rotate(30deg);
            -webkit-transform-origin: center bottom;
            transform-origin: center bottom;
        }

        50% {
            -webkit-transform: rotate(-10deg);
            transform: rotate(-10deg);
        }

        70% {
            -webkit-transform: rotate(3deg);
            transform: rotate(3deg);
        }

        to {
            opacity: 1;
            -webkit-transform: scale(1);
            transform: scale(1);
        }
    }

    @keyframes jackInTheBox {
        from {
            opacity: 0;
            -webkit-transform: scale(0.1) rotate(30deg);
            transform: scale(0.1) rotate(30deg);
            -webkit-transform-origin: center bottom;
            transform-origin: center bottom;
        }

        50% {
            -webkit-transform: rotate(-10deg);
            transform: rotate(-10deg);
        }

        70% {
            -webkit-transform: rotate(3deg);
            transform: rotate(3deg);
        }

        to {
            opacity: 1;
            -webkit-transform: scale(1);
            transform: scale(1);
        }
    }

    /* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
    @-webkit-keyframes rollIn {
        from {
            opacity: 0;
            -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
            transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes rollIn {
        from {
            opacity: 0;
            -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
            transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
        }

        to {
            opacity: 1;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    /* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
    @-webkit-keyframes rollOut {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
            transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
        }
    }

    @keyframes rollOut {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
            -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
            transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
        }
    }

    /* Zooming entrances */
    @-webkit-keyframes zoomIn {
        from {
            opacity: 0;
            -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3);
        }

        50% {
            opacity: 1;
        }
    }

    @keyframes zoomIn {
        from {
            opacity: 0;
            -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3);
        }

        50% {
            opacity: 1;
        }
    }

    @-webkit-keyframes zoomInDown {
        from {
            opacity: 0;
            -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        }

        60% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        }
    }

    @keyframes zoomInDown {
        from {
            opacity: 0;
            -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        }

        60% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        }
    }

    @-webkit-keyframes zoomInLeft {
        from {
            opacity: 0;
            -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
            -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        }

        60% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
            -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        }
    }

    @keyframes zoomInLeft {
        from {
            opacity: 0;
            -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
            -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        }

        60% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
            -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        }
    }

    @-webkit-keyframes zoomInRight {
        from {
            opacity: 0;
            -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
            -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        }

        60% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
            -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        }
    }

    @keyframes zoomInRight {
        from {
            opacity: 0;
            -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
            -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        }

        60% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
            -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        }
    }

    @-webkit-keyframes zoomInUp {
        from {
            opacity: 0;
            -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        }

        60% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        }
    }

    @keyframes zoomInUp {
        from {
            opacity: 0;
            -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        }

        60% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        }
    }

    /* Zooming exits */
    @-webkit-keyframes zoomOut {
        from {
            opacity: 1;
        }

        50% {
            opacity: 0;
            -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3);
        }

        to {
            opacity: 0;
        }
    }

    @keyframes zoomOut {
        from {
            opacity: 1;
        }

        50% {
            opacity: 0;
            -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3);
        }

        to {
            opacity: 0;
        }
    }

    @-webkit-keyframes zoomOutDown {
        40% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        }

        to {
            opacity: 0;
            -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        }
    }

    @keyframes zoomOutDown {
        40% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        }

        to {
            opacity: 0;
            -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        }
    }

    @-webkit-keyframes zoomOutLeft {
        40% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        }

        to {
            opacity: 0;
            -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
            transform: scale(0.1) translate3d(-2000px, 0, 0);
        }
    }

    @keyframes zoomOutLeft {
        40% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        }

        to {
            opacity: 0;
            -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
            transform: scale(0.1) translate3d(-2000px, 0, 0);
        }
    }

    @-webkit-keyframes zoomOutRight {
        40% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        }

        to {
            opacity: 0;
            -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
            transform: scale(0.1) translate3d(2000px, 0, 0);
        }
    }

    @keyframes zoomOutRight {
        40% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        }

        to {
            opacity: 0;
            -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
            transform: scale(0.1) translate3d(2000px, 0, 0);
        }
    }

    @-webkit-keyframes zoomOutUp {
        40% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        }

        to {
            opacity: 0;
            -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        }
    }

    @keyframes zoomOutUp {
        40% {
            opacity: 1;
            -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        }

        to {
            opacity: 0;
            -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
            -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        }
    }

    /* Sliding entrances */
    @-webkit-keyframes slideInDown {
        from {
            -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
            visibility: visible;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes slideInDown {
        from {
            -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
            visibility: visible;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes slideInLeft {
        from {
            -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
            visibility: visible;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes slideInLeft {
        from {
            -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
            visibility: visible;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes slideInRight {
        from {
            -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
            visibility: visible;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes slideInRight {
        from {
            -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
            visibility: visible;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @-webkit-keyframes slideInUp {
        from {
            -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0);
            visibility: visible;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes slideInUp {
        from {
            -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0);
            visibility: visible;
        }

        to {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
    }

    /* Sliding exits */
    @-webkit-keyframes slideOutDown {
        from {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            visibility: hidden;
            -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0);
        }
    }

    @keyframes slideOutDown {
        from {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            visibility: hidden;
            -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0);
        }
    }

    @-webkit-keyframes slideOutLeft {
        from {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            visibility: hidden;
            -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
        }
    }

    @keyframes slideOutLeft {
        from {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            visibility: hidden;
            -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
        }
    }

    @-webkit-keyframes slideOutRight {
        from {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            visibility: hidden;
            -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
        }
    }

    @keyframes slideOutRight {
        from {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            visibility: hidden;
            -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
        }
    }

    @-webkit-keyframes slideOutUp {
        from {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            visibility: hidden;
            -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
        }
    }

    @keyframes slideOutUp {
        from {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }

        to {
            visibility: hidden;
            -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
        }
    }

    /*-----------------------------------------------------------------------------------
	Dark Scheme - sass/dark.scss
-----------------------------------------------------------------------------------*/
    .dark {
        --cnvs-contrast-bg: #212529;
        --cnvs-contrast-bg-offset: #343a40;
        --cnvs-contrast-0: #000;
        --cnvs-contrast-100: #212529;
        --cnvs-contrast-200: #343a40;
        --cnvs-contrast-300: #495057;
        --cnvs-contrast-400: #6c757d;
        --cnvs-contrast-500: #adb5bd;
        --cnvs-contrast-600: #ced4da;
        --cnvs-contrast-700: #dee2e6;
        --cnvs-contrast-800: #e9ecef;
        --cnvs-contrast-900: #f8f9fa;
        --cnvs-contrast-1000: #fff;
        --bs-link-color: var(--cnvs-contrast-900);
        --cnvs-invert-contrast-0: #fff;
        --cnvs-invert-contrast-100: #f8f9fa;
        --cnvs-invert-contrast-200: #e9ecef;
        --cnvs-invert-contrast-300: #dee2e6;
        --cnvs-invert-contrast-400: #ced4da;
        --cnvs-invert-contrast-500: #adb5bd;
        --cnvs-invert-contrast-600: #6c757d;
        --cnvs-invert-contrast-700: #495057;
        --cnvs-invert-contrast-800: #343a40;
        --cnvs-invert-contrast-900: #212529;
        --cnvs-invert-contrast-1000: #000;
        --cnvs-contrast-rgb: 255, 255, 255;
        --cnvs-invert-contrast-rgb: 0, 0, 0;
        --cnvs-heading-color: var(--cnvs-contrast-900);
        --cnvs-topbar-bg: var(--cnvs-contrast-bg-offset);
        --cnvs-header-bg: var(--cnvs-contrast-bg);
        --cnvs-header-sticky-bg: var(--cnvs-contrast-bg);
        --cnvs-side-header-bg: var(--cnvs-contrast-bg);
        --cnvs-header-floating-bg: var(--cnvs-contrast-bg);
        --cnvs-primary-menu-submenu-bg: var(--cnvs-contrast-bg);
        --cnvs-section-bg: var(--cnvs-contrast-bg-offset);
        --cnvs-footer-bg: var(--cnvs-contrast-bg-offset);
        color: var(--cnvs-contrast-800);
    }

    body.dark {
        --cnvs-body-bg: var(--cnvs-contrast-bg);
    }

.anchor {
    scroll-margin-top: 100px;
}

ul {
    list-style-position: inside;
}

.display-7 {
    font-size: calc(.5rem + 1.0vw);
    font-weight: 300;
    line-height: 1.2;
}

/* Increase disclaimer font size by 1px */
#safety p,
.bg-green-abstract p.text-white,
.bg-darkgreen-abstract p.text-white {
    font-size: calc(1rem + 1px);
}