
: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: system-ui, -apple-system, "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-heading-color: inherit;
    --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-color: #212529;
    --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: 1rem;
    --bs-border-radius-xxl: 2rem;
    --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;
}


*,
::after,
::before {
    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: transparent;
}

.btn-gmb,
.btn-gmb-outline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 18px;
    min-height: 48px;
    font-size: 14px;
    border-radius: 6px;
}

.gmb-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

hr {
    margin: 1rem 0;
    color: inherit;
    border: 0;
    border-top: var(--bs-border-width) solid;
    opacity: 0.25;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    margin-bottom: 0.5rem;
    font-weight: 500;
    line-height: 1.2;
    /* color: var(--bs-heading-color); */
}

.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] {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
    cursor: help;
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none;
}

address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit;
}

ol,
ul {
    padding-left: 2rem;
}

dl,
ol,
ul {
    margin-top: 0;
    margin-bottom: 1rem;
}

ol ol,
ol ul,
ul ol,
ul ul {
    margin-bottom: 0;
}


blockquote {
    margin: 0 0 1rem;
}

b,
strong {
    font-weight: bolder;
}

.small,
small {
    font-size: 0.875em;
}

.mark,
mark {
    padding: 0.1875em;
    color: var(--bs-highlight-color);
    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;
}

code,
kbd,
pre,
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;
}

tbody,
td,
tfoot,
th,
thead,
tr {
    border-color: inherit;
    border-style: solid;
    border-width: 0;
}

label {
    display: inline-block;
}

button {
    border-radius: 0;
}

button:focus:not(:focus-visible) {
    outline: 0;
}

button,
input,
optgroup,
select,
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;
}

[type="button"],
[type="reset"],
[type="submit"],
button {
    -webkit-appearance: button;
}

[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled),
button: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-day-field,
::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-year-field {
    padding: 0;
}

::-webkit-inner-spin-button {
    height: auto;
}

[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px;
}

::-webkit-search-decoration {
    -webkit-appearance: none;
}

::-webkit-color-swatch-wrapper {
    padding: 0;
}

::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button;
}

::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-2 {
    font-size: calc(1.575rem + 3.9vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-2 {
        font-size: 4.5rem;
    }
}

.display-3 {
    font-size: calc(1.525rem + 3.3vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-3 {
        font-size: 4rem;
    }
}

.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;
}

.list-inline {
    padding-left: 0;
    list-style: none;
}

.list-inline-item {
    display: inline-block;
}

.list-inline-item:not(:last-child) {
    margin-right: 0.5rem;
}

.initialism {
    font-size: 0.875em;
    text-transform: uppercase;
}

.blockquote {
    margin-bottom: 1rem;
    font-size: 1.25rem;
}

.blockquote> :last-child {
    margin-bottom: 0;
}

.blockquote-footer {
    margin-top: -1rem;
    margin-bottom: 1rem;
    font-size: 0.875em;
    color: #6c757d;
}

.blockquote-footer::before {
    content: "— ";
}

.img-fluid {
    max-width: 100%;
    height: auto;
}

.img-thumbnail {
    padding: 0.25rem;
    background-color: var(--bs-body-bg);
    border: var(--bs-border-width) solid var(--bs-border-color);
    border-radius: var(--bs-border-radius);
    max-width: 100%;
    height: auto;
}

.figure {
    display: inline-block;
}

.figure-img {
    margin-bottom: 0.5rem;
    line-height: 1;
}

.figure-caption {
    font-size: 0.875em;
    color: var(--bs-secondary-color);
}

.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
    --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,
    .container-sm {
        max-width: 540px;
    }
}

@media (min-width: 768px) {

    .container,
    .container-md,
    .container-sm {
        max-width: 720px;
    }
}

@media (min-width: 992px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 1140px;
    }
}

@media (min-width: 1440px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1320px;
    }
}

:root {
    --bs-breakpoint-xs: 0;
    --bs-breakpoint-sm: 576px;
    --bs-breakpoint-md: 768px;
    --bs-breakpoint-lg: 992px;
    --bs-breakpoint-xl: 1200px;
    --bs-breakpoint-xxl: 1440px;
}

.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%;
}

.row-cols-auto>* {
    flex: 0 0 auto;
    width: auto;
}

.row-cols-1>* {
    flex: 0 0 auto;
    width: 100%;
}

.row-cols-2>* {
    flex: 0 0 auto;
    width: 50%;
}

.row-cols-3>* {
    flex: 0 0 auto;
    width: 33.33333333%;
}

.row-cols-4>* {
    flex: 0 0 auto;
    width: 25%;
}

.row-cols-5>* {
    flex: 0 0 auto;
    width: 20%;
}

.row-cols-6>* {
    flex: 0 0 auto;
    width: 16.66666667%;
}

.col-auto {
    flex: 0 0 auto;
    width: auto;
}

.col-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
}

.col-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
}

.col-3 {
    flex: 0 0 auto;
    width: 25%;
}

.col-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
}

.col-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
}

.col-6 {
    flex: 0 0 auto;
    width: 50%;
}

.col-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
}

.col-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
}

.col-9 {
    flex: 0 0 auto;
    width: 75%;
}

.col-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
}

.col-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
}

.col-12 {
    flex: 0 0 auto;
    width: 100%;
}

.offset-1 {
    margin-left: 8.33333333%;
}

.offset-2 {
    margin-left: 16.66666667%;
}

.offset-3 {
    margin-left: 25%;
}

.offset-4 {
    margin-left: 33.33333333%;
}

.offset-5 {
    margin-left: 41.66666667%;
}

.offset-6 {
    margin-left: 50%;
}

.offset-7 {
    margin-left: 58.33333333%;
}

.offset-8 {
    margin-left: 66.66666667%;
}

.offset-9 {
    margin-left: 75%;
}

.offset-10 {
    margin-left: 83.33333333%;
}

.offset-11 {
    margin-left: 91.66666667%;
}

.g-0,
.gx-0 {
    --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
    --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
    --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
    --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
    --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
    --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
    --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
    --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
    --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
    --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
    --bs-gutter-x: 3rem;
}

.g-5,
.gy-5 {
    --bs-gutter-y: 3rem;
}

@media (min-width: 576px) {
    .col-sm {
        flex: 1 0 0%;
    }

    .row-cols-sm-auto>* {
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-sm-1>* {
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-sm-2>* {
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-sm-3>* {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .row-cols-sm-4>* {
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-sm-5>* {
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-sm-6>* {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-sm-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .col-sm-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-sm-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-sm-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-sm-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-sm-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-sm-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-sm-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-sm-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-sm-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-sm-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-sm-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-sm-12 {
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-sm-0 {
        margin-left: 0;
    }

    .offset-sm-1 {
        margin-left: 8.33333333%;
    }

    .offset-sm-2 {
        margin-left: 16.66666667%;
    }

    .offset-sm-3 {
        margin-left: 25%;
    }

    .offset-sm-4 {
        margin-left: 33.33333333%;
    }

    .offset-sm-5 {
        margin-left: 41.66666667%;
    }

    .offset-sm-6 {
        margin-left: 50%;
    }

    .offset-sm-7 {
        margin-left: 58.33333333%;
    }

    .offset-sm-8 {
        margin-left: 66.66666667%;
    }

    .offset-sm-9 {
        margin-left: 75%;
    }

    .offset-sm-10 {
        margin-left: 83.33333333%;
    }

    .offset-sm-11 {
        margin-left: 91.66666667%;
    }

    .g-sm-0,
    .gx-sm-0 {
        --bs-gutter-x: 0;
    }

    .g-sm-0,
    .gy-sm-0 {
        --bs-gutter-y: 0;
    }

    .g-sm-1,
    .gx-sm-1 {
        --bs-gutter-x: 0.25rem;
    }

    .g-sm-1,
    .gy-sm-1 {
        --bs-gutter-y: 0.25rem;
    }

    .g-sm-2,
    .gx-sm-2 {
        --bs-gutter-x: 0.5rem;
    }

    .g-sm-2,
    .gy-sm-2 {
        --bs-gutter-y: 0.5rem;
    }

    .g-sm-3,
    .gx-sm-3 {
        --bs-gutter-x: 1rem;
    }

    .g-sm-3,
    .gy-sm-3 {
        --bs-gutter-y: 1rem;
    }

    .g-sm-4,
    .gx-sm-4 {
        --bs-gutter-x: 1.5rem;
    }

    .g-sm-4,
    .gy-sm-4 {
        --bs-gutter-y: 1.5rem;
    }

    .g-sm-5,
    .gx-sm-5 {
        --bs-gutter-x: 3rem;
    }

    .g-sm-5,
    .gy-sm-5 {
        --bs-gutter-y: 3rem;
    }
}

@media (min-width: 768px) {
    .col-md {
        flex: 1 0 0%;
    }

    .row-cols-md-auto>* {
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-md-1>* {
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-md-2>* {
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-md-3>* {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .row-cols-md-4>* {
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-md-5>* {
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-md-6>* {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-md-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .col-md-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-md-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-md-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-md-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-md-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-md-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-md-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-md-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-md-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-md-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-md-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-md-12 {
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-md-0 {
        margin-left: 0;
    }

    .offset-md-1 {
        margin-left: 8.33333333%;
    }

    .offset-md-2 {
        margin-left: 16.66666667%;
    }

    .offset-md-3 {
        margin-left: 25%;
    }

    .offset-md-4 {
        margin-left: 33.33333333%;
    }

    .offset-md-5 {
        margin-left: 41.66666667%;
    }

    .offset-md-6 {
        margin-left: 50%;
    }

    .offset-md-7 {
        margin-left: 58.33333333%;
    }

    .offset-md-8 {
        margin-left: 66.66666667%;
    }

    .offset-md-9 {
        margin-left: 75%;
    }

    .offset-md-10 {
        margin-left: 83.33333333%;
    }

    .offset-md-11 {
        margin-left: 91.66666667%;
    }

    .g-md-0,
    .gx-md-0 {
        --bs-gutter-x: 0;
    }

    .g-md-0,
    .gy-md-0 {
        --bs-gutter-y: 0;
    }

    .g-md-1,
    .gx-md-1 {
        --bs-gutter-x: 0.25rem;
    }

    .g-md-1,
    .gy-md-1 {
        --bs-gutter-y: 0.25rem;
    }

    .g-md-2,
    .gx-md-2 {
        --bs-gutter-x: 0.5rem;
    }

    .g-md-2,
    .gy-md-2 {
        --bs-gutter-y: 0.5rem;
    }

    .g-md-3,
    .gx-md-3 {
        --bs-gutter-x: 1rem;
    }

    .g-md-3,
    .gy-md-3 {
        --bs-gutter-y: 1rem;
    }

    .g-md-4,
    .gx-md-4 {
        --bs-gutter-x: 1.5rem;
    }

    .g-md-4,
    .gy-md-4 {
        --bs-gutter-y: 1.5rem;
    }

    .g-md-5,
    .gx-md-5 {
        --bs-gutter-x: 3rem;
    }

    .g-md-5,
    .gy-md-5 {
        --bs-gutter-y: 3rem;
    }
}

@media (min-width: 992px) {
    .col-lg {
        flex: 1 0 0%;
    }

    .row-cols-lg-auto>* {
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-lg-1>* {
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-lg-2>* {
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-lg-3>* {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .row-cols-lg-4>* {
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-lg-5>* {
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-lg-6>* {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-lg-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .col-lg-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-lg-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-lg-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-lg-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-lg-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-lg-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-lg-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-lg-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-lg-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-lg-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-lg-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-lg-12 {
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-lg-0 {
        margin-left: 0;
    }

    .offset-lg-1 {
        margin-left: 8.33333333%;
    }

    .offset-lg-2 {
        margin-left: 16.66666667%;
    }

    .offset-lg-3 {
        margin-left: 25%;
    }

    .offset-lg-4 {
        margin-left: 33.33333333%;
    }

    .offset-lg-5 {
        margin-left: 41.66666667%;
    }

    .offset-lg-6 {
        margin-left: 50%;
    }

    .offset-lg-7 {
        margin-left: 58.33333333%;
    }

    .offset-lg-8 {
        margin-left: 66.66666667%;
    }

    .offset-lg-9 {
        margin-left: 75%;
    }

    .offset-lg-10 {
        margin-left: 83.33333333%;
    }

    .offset-lg-11 {
        margin-left: 91.66666667%;
    }

    .g-lg-0,
    .gx-lg-0 {
        --bs-gutter-x: 0;
    }

    .g-lg-0,
    .gy-lg-0 {
        --bs-gutter-y: 0;
    }

    .g-lg-1,
    .gx-lg-1 {
        --bs-gutter-x: 0.25rem;
    }

    .g-lg-1,
    .gy-lg-1 {
        --bs-gutter-y: 0.25rem;
    }

    .g-lg-2,
    .gx-lg-2 {
        --bs-gutter-x: 0.5rem;
    }

    .g-lg-2,
    .gy-lg-2 {
        --bs-gutter-y: 0.5rem;
    }

    .g-lg-3,
    .gx-lg-3 {
        --bs-gutter-x: 1rem;
    }

    .g-lg-3,
    .gy-lg-3 {
        --bs-gutter-y: 1rem;
    }

    .g-lg-4,
    .gx-lg-4 {
        --bs-gutter-x: 1.5rem;
    }

    .g-lg-4,
    .gy-lg-4 {
        --bs-gutter-y: 1.5rem;
    }

    .g-lg-5,
    .gx-lg-5 {
        --bs-gutter-x: 3rem;
    }

    .g-lg-5,
    .gy-lg-5 {
        --bs-gutter-y: 3rem;
    }
}

@media (min-width: 1200px) {
    .col-xl {
        flex: 1 0 0%;
    }

    .row-cols-xl-auto>* {
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-xl-1>* {
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-xl-2>* {
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-xl-3>* {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .row-cols-xl-4>* {
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-xl-5>* {
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-xl-6>* {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-xl-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .col-xl-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-xl-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-xl-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-xl-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-xl-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-xl-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-xl-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-xl-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-xl-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-xl-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-xl-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-xl-12 {
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-xl-0 {
        margin-left: 0;
    }

    .offset-xl-1 {
        margin-left: 8.33333333%;
    }

    .offset-xl-2 {
        margin-left: 16.66666667%;
    }

    .offset-xl-3 {
        margin-left: 25%;
    }

    .offset-xl-4 {
        margin-left: 33.33333333%;
    }

    .offset-xl-5 {
        margin-left: 41.66666667%;
    }

    .offset-xl-6 {
        margin-left: 50%;
    }

    .offset-xl-7 {
        margin-left: 58.33333333%;
    }

    .offset-xl-8 {
        margin-left: 66.66666667%;
    }

    .offset-xl-9 {
        margin-left: 75%;
    }

    .offset-xl-10 {
        margin-left: 83.33333333%;
    }

    .offset-xl-11 {
        margin-left: 91.66666667%;
    }

    .g-xl-0,
    .gx-xl-0 {
        --bs-gutter-x: 0;
    }

    .g-xl-0,
    .gy-xl-0 {
        --bs-gutter-y: 0;
    }

    .g-xl-1,
    .gx-xl-1 {
        --bs-gutter-x: 0.25rem;
    }

    .g-xl-1,
    .gy-xl-1 {
        --bs-gutter-y: 0.25rem;
    }

    .g-xl-2,
    .gx-xl-2 {
        --bs-gutter-x: 0.5rem;
    }

    .g-xl-2,
    .gy-xl-2 {
        --bs-gutter-y: 0.5rem;
    }

    .g-xl-3,
    .gx-xl-3 {
        --bs-gutter-x: 1rem;
    }

    .g-xl-3,
    .gy-xl-3 {
        --bs-gutter-y: 1rem;
    }

    .g-xl-4,
    .gx-xl-4 {
        --bs-gutter-x: 1.5rem;
    }

    .g-xl-4,
    .gy-xl-4 {
        --bs-gutter-y: 1.5rem;
    }

    .g-xl-5,
    .gx-xl-5 {
        --bs-gutter-x: 3rem;
    }

    .g-xl-5,
    .gy-xl-5 {
        --bs-gutter-y: 3rem;
    }
}

@media (min-width: 1440px) {
    .col-xxl {
        flex: 1 0 0%;
    }

    .row-cols-xxl-auto>* {
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-xxl-1>* {
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-xxl-2>* {
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-xxl-3>* {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .row-cols-xxl-4>* {
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-xxl-5>* {
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-xxl-6>* {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-xxl-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .col-xxl-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-xxl-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-xxl-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-xxl-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-xxl-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-xxl-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-xxl-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-xxl-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-xxl-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-xxl-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-xxl-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-xxl-12 {
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-xxl-0 {
        margin-left: 0;
    }

    .offset-xxl-1 {
        margin-left: 8.33333333%;
    }

    .offset-xxl-2 {
        margin-left: 16.66666667%;
    }

    .offset-xxl-3 {
        margin-left: 25%;
    }

    .offset-xxl-4 {
        margin-left: 33.33333333%;
    }

    .offset-xxl-5 {
        margin-left: 41.66666667%;
    }

    .offset-xxl-6 {
        margin-left: 50%;
    }

    .offset-xxl-7 {
        margin-left: 58.33333333%;
    }

    .offset-xxl-8 {
        margin-left: 66.66666667%;
    }

    .offset-xxl-9 {
        margin-left: 75%;
    }

    .offset-xxl-10 {
        margin-left: 83.33333333%;
    }

    .offset-xxl-11 {
        margin-left: 91.66666667%;
    }

    .g-xxl-0,
    .gx-xxl-0 {
        --bs-gutter-x: 0;
    }

    .g-xxl-0,
    .gy-xxl-0 {
        --bs-gutter-y: 0;
    }

    .g-xxl-1,
    .gx-xxl-1 {
        --bs-gutter-x: 0.25rem;
    }

    .g-xxl-1,
    .gy-xxl-1 {
        --bs-gutter-y: 0.25rem;
    }

    .g-xxl-2,
    .gx-xxl-2 {
        --bs-gutter-x: 0.5rem;
    }

    .g-xxl-2,
    .gy-xxl-2 {
        --bs-gutter-y: 0.5rem;
    }

    .g-xxl-3,
    .gx-xxl-3 {
        --bs-gutter-x: 1rem;
    }

    .g-xxl-3,
    .gy-xxl-3 {
        --bs-gutter-y: 1rem;
    }

    .g-xxl-4,
    .gx-xxl-4 {
        --bs-gutter-x: 1.5rem;
    }

    .g-xxl-4,
    .gy-xxl-4 {
        --bs-gutter-y: 1.5rem;
    }

    .g-xxl-5,
    .gx-xxl-5 {
        --bs-gutter-x: 3rem;
    }

    .g-xxl-5,
    .gy-xxl-5 {
        --bs-gutter-y: 3rem;
    }
}

.col-form-label {
    padding-top: calc(0.375rem + var(--bs-border-width));
    padding-bottom: calc(0.375rem + var(--bs-border-width));
    margin-bottom: 0;
    font-size: inherit;
    line-height: 1.5;
}

.col-form-label-lg {
    padding-top: calc(0.5rem + var(--bs-border-width));
    padding-bottom: calc(0.5rem + var(--bs-border-width));
    font-size: 1.25rem;
}

.col-form-label-sm {
    padding-top: calc(0.25rem + var(--bs-border-width));
    padding-bottom: calc(0.25rem + var(--bs-border-width));
    font-size: 0.875rem;
}

.form-text {
    margin-top: 0.25rem;
    font-size: 0.875em;
    color: var(--bs-secondary-color);
}

.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);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: var(--bs-body-bg);
    background-clip: padding-box;
    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;
}

@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::-moz-placeholder {
    color: var(--bs-secondary-color);
    opacity: 1;
}

.form-control::placeholder {
    color: var(--bs-secondary-color);
    opacity: 1;
}

.form-control:disabled {
    background-color: var(--bs-secondary-bg);
    opacity: 1;
}

.form-control::-webkit-file-upload-button {
    padding: 0.375rem 0.75rem;
    margin: -0.375rem -0.75rem;
    -webkit-margin-end: 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;
    -webkit-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;
    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;
}

.form-control::file-selector-button {
    padding: 0.375rem 0.75rem;
    margin: -0.375rem -0.75rem;
    -webkit-margin-end: 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::-webkit-file-upload-button {
        -webkit-transition: none;
        transition: none;
    }

    .form-control::file-selector-button {
        transition: none;
    }
}

.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
    background-color: var(--bs-secondary-bg);
}

.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
    background-color: var(--bs-secondary-bg);
}

.form-control-plaintext {
    display: block;
    width: 100%;
    padding: 0.375rem 0;
    margin-bottom: 0;
    line-height: 1.5;
    color: var(--bs-body-color);
    background-color: transparent;
    border: solid transparent;
    border-width: var(--bs-border-width) 0;
}

.form-control-plaintext:focus {
    outline: 0;
}

.form-control-plaintext.form-control-lg,
.form-control-plaintext.form-control-sm {
    padding-right: 0;
    padding-left: 0;
}

.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::-webkit-file-upload-button {
    padding: 0.25rem 0.5rem;
    margin: -0.25rem -0.5rem;
    -webkit-margin-end: 0.5rem;
    margin-inline-end: 0.5rem;
}

.form-control-sm::file-selector-button {
    padding: 0.25rem 0.5rem;
    margin: -0.25rem -0.5rem;
    -webkit-margin-end: 0.5rem;
    margin-inline-end: 0.5rem;
}

.form-control-lg {
    min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    border-radius: var(--bs-border-radius-lg);
}

.form-control-lg::-webkit-file-upload-button {
    padding: 0.5rem 1rem;
    margin: -0.5rem -1rem;
    -webkit-margin-end: 1rem;
    margin-inline-end: 1rem;
}

.form-control-lg::file-selector-button {
    padding: 0.5rem 1rem;
    margin: -0.5rem -1rem;
    -webkit-margin-end: 1rem;
    margin-inline-end: 1rem;
}

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));
}

textarea.form-control-lg {
    min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
}

.form-control-color {
    width: 3rem;
    height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));
    padding: 0.375rem;
}

.form-control-color:not(:disabled):not([readonly]) {
    cursor: pointer;
}

.form-control-color::-moz-color-swatch {
    border: 0 !important;
    border-radius: var(--bs-border-radius);
}

.form-control-color::-webkit-color-swatch {
    border: 0 !important;
    border-radius: var(--bs-border-radius);
}

.form-control-color.form-control-sm {
    height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
}

.form-control-color.form-control-lg {
    height: calc(1.5em + 1rem + 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);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    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;
}

@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);
}

.form-select-lg {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 1rem;
    font-size: 1.25rem;
    border-radius: var(--bs-border-radius-lg);
}

[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='%23dee2e6' 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-reverse {
    padding-right: 1.5em;
    padding-left: 0;
    text-align: right;
}

.form-check-reverse .form-check-input {
    float: right;
    margin-right: -1.5em;
    margin-left: 0;
}

.form-check-input {
    --bs-form-check-bg: var(--bs-body-bg);
    flex-shrink: 0;
    width: 1em;
    height: 1em;
    margin-top: 0.25em;
    vertical-align: top;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    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);
    -webkit-print-color-adjust: exact;
    color-adjust: exact;
    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;
}

.form-switch {
    padding-left: 2.5em;
}

.form-switch .form-check-input {
    --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
    width: 2em;
    margin-left: -2.5em;
    background-image: var(--bs-form-switch-bg);
    background-position: left center;
    border-radius: 2em;
    transition: background-position 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-switch .form-check-input {
        transition: none;
    }
}

.form-switch .form-check-input:focus {
    --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e");
}

.form-switch .form-check-input:checked {
    background-position: right center;
    --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}

.form-switch.form-check-reverse {
    padding-right: 2.5em;
    padding-left: 0;
}

.form-switch.form-check-reverse .form-check-input {
    margin-right: -2.5em;
    margin-left: 0;
}

.form-check-inline {
    display: inline-block;
    margin-right: 1rem;
}

.btn-check {
    position: absolute;
    clip: rect(0, 0, 0, 0);
    pointer-events: none;
}

.btn-check:disabled+.btn,
.btn-check[disabled]+.btn {
    pointer-events: none;
    filter: none;
    opacity: 0.65;
}

[data-bs-theme="dark"] .form-switch .form-check-input:not(:checked):not(:focus) {
    --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e");
}

.form-range {
    width: 100%;
    height: 1.5rem;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
}

.form-range:focus {
    outline: 0;
}

.form-range:focus::-webkit-slider-thumb {
    box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.form-range:focus::-moz-range-thumb {
    box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.form-range::-moz-focus-outer {
    border: 0;
}

.form-range::-webkit-slider-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: -0.25rem;
    -webkit-appearance: none;
    appearance: none;
    background-color: #0d6efd;
    border: 0;
    border-radius: 1rem;
    -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: 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-range::-webkit-slider-thumb {
        -webkit-transition: none;
        transition: none;
    }
}

.form-range::-webkit-slider-thumb:active {
    background-color: #b6d4fe;
}

.form-range::-webkit-slider-runnable-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: var(--bs-secondary-bg);
    border-color: transparent;
    border-radius: 1rem;
}

.form-range::-moz-range-thumb {
    width: 1rem;
    height: 1rem;
    -moz-appearance: none;
    appearance: none;
    background-color: #0d6efd;
    border: 0;
    border-radius: 1rem;
    -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: 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-range::-moz-range-thumb {
        -moz-transition: none;
        transition: none;
    }
}

.form-range::-moz-range-thumb:active {
    background-color: #b6d4fe;
}

.form-range::-moz-range-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: var(--bs-secondary-bg);
    border-color: transparent;
    border-radius: 1rem;
}

.form-range:disabled {
    pointer-events: none;
}

.form-range:disabled::-webkit-slider-thumb {
    background-color: var(--bs-secondary-color);
}

.form-range:disabled::-moz-range-thumb {
    background-color: var(--bs-secondary-color);
}

.form-floating {
    position: relative;
}

.form-floating>.form-control,
.form-floating>.form-control-plaintext,
.form-floating>.form-select {
    height: calc(3.5rem + calc(var(--bs-border-width) * 2));
    min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));
    line-height: 1.25;
}

.form-floating>label {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    height: 100%;
    padding: 1rem 0.75rem;
    overflow: hidden;
    text-align: start;
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
    border: var(--bs-border-width) solid transparent;
    transform-origin: 0 0;
    transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-floating>label {
        transition: none;
    }
}

.form-floating>.form-control,
.form-floating>.form-control-plaintext {
    padding: 1rem 0.75rem;
}

.form-floating>.form-control-plaintext::-moz-placeholder,
.form-floating>.form-control::-moz-placeholder {
    color: transparent;
}

.form-floating>.form-control-plaintext::placeholder,
.form-floating>.form-control::placeholder {
    color: transparent;
}

.form-floating>.form-control-plaintext:not(:-moz-placeholder-shown),
.form-floating>.form-control:not(:-moz-placeholder-shown) {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating>.form-control-plaintext:focus,
.form-floating>.form-control-plaintext:not(:placeholder-shown),
.form-floating>.form-control:focus,
.form-floating>.form-control:not(:placeholder-shown) {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating>.form-control-plaintext:-webkit-autofill,
.form-floating>.form-control:-webkit-autofill {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating>.form-select {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating>.form-control:not(:-moz-placeholder-shown)~label {
    color: rgba(var(--bs-body-color-rgb), 0.65);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

.form-floating>.form-control-plaintext~label,
.form-floating>.form-control:focus~label,
.form-floating>.form-control:not(:placeholder-shown)~label,
.form-floating>.form-select~label {
    color: rgba(var(--bs-body-color-rgb), 0.65);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

.form-floating>.form-control:not(:-moz-placeholder-shown)~label::after {
    position: absolute;
    inset: 1rem 0.375rem;
    z-index: -1;
    height: 1.5em;
    content: "";
    background-color: var(--bs-body-bg);
    border-radius: var(--bs-border-radius);
}

.form-floating>.form-control-plaintext~label::after,
.form-floating>.form-control:focus~label::after,
.form-floating>.form-control:not(:placeholder-shown)~label::after,
.form-floating>.form-select~label::after {
    position: absolute;
    inset: 1rem 0.375rem;
    z-index: -1;
    height: 1.5em;
    content: "";
    background-color: var(--bs-body-bg);
    border-radius: var(--bs-border-radius);
}

.form-floating>.form-control:-webkit-autofill~label {
    color: rgba(var(--bs-body-color-rgb), 0.65);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

.form-floating>.form-control-plaintext~label {
    border-width: var(--bs-border-width) 0;
}

.form-floating>.form-control:disabled~label,
.form-floating> :disabled~label {
    color: #6c757d;
}

.form-floating>.form-control:disabled~label::after,
.form-floating> :disabled~label::after {
    background-color: var(--bs-secondary-bg);
}

.input-group {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    width: 100%;
}

.input-group>.form-control,
.input-group>.form-floating,
.input-group>.form-select {
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
}

.input-group>.form-control:focus,
.input-group>.form-floating:focus-within,
.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-text {
    display: flex;
    align-items: center;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: var(--bs-body-color);
    text-align: center;
    white-space: nowrap;
    background-color: var(--bs-tertiary-bg);
    border: var(--bs-border-width) solid var(--bs-border-color);
    border-radius: var(--bs-border-radius);
}

.input-group-lg>.btn,
.input-group-lg>.form-control,
.input-group-lg>.form-select,
.input-group-lg>.input-group-text {
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    border-radius: var(--bs-border-radius-lg);
}

.input-group-sm>.btn,
.input-group-sm>.form-control,
.input-group-sm>.form-select,
.input-group-sm>.input-group-text {
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    border-radius: var(--bs-border-radius-sm);
}

.input-group-lg>.form-select,
.input-group-sm>.form-select {
    padding-right: 3rem;
}

.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n + 3),
.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,
.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select,
.input-group:not(.has-validation)> :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group.has-validation>.dropdown-toggle:nth-last-child(n + 4),
.input-group.has-validation>.form-floating:nth-last-child(n + 3)>.form-control,
.input-group.has-validation>.form-floating:nth-last-child(n + 3)>.form-select,
.input-group.has-validation> :nth-last-child(n + 3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating) {
    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;
}

.input-group>.form-floating:not(:first-child)>.form-control,
.input-group>.form-floating:not(:first-child)>.form-select {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.valid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.875em;
    color: var(--bs-form-valid-color);
}

.valid-tooltip {
    position: absolute;
    top: 100%;
    z-index: 5;
    display: none;
    max-width: 100%;
    padding: 0.25rem 0.5rem;
    margin-top: 0.1rem;
    font-size: 0.875rem;
    color: #fff;
    background-color: var(--bs-success);
    border-radius: var(--bs-border-radius);
}

.is-valid~.valid-feedback,
.is-valid~.valid-tooltip,
.was-validated :valid~.valid-feedback,
.was-validated :valid~.valid-tooltip {
    display: block;
}

.form-control.is-valid,
.was-validated .form-control: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,
.was-validated .form-control:valid:focus {
    border-color: var(--bs-form-valid-border-color);
    box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}

.was-validated textarea.form-control:valid,
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,
.was-validated .form-select: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"],
.was-validated .form-select:valid:not([multiple]):not([size]),
.was-validated .form-select: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,
.was-validated .form-select: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-control-color.is-valid,
.was-validated .form-control-color:valid {
    width: calc(3rem + calc(1.5em + 0.75rem));
}

.form-check-input.is-valid,
.was-validated .form-check-input:valid {
    border-color: var(--bs-form-valid-border-color);
}

.form-check-input.is-valid:checked,
.was-validated .form-check-input:valid:checked {
    background-color: var(--bs-form-valid-color);
}

.form-check-input.is-valid:focus,
.was-validated .form-check-input:valid:focus {
    box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}

.form-check-input.is-valid~.form-check-label,
.was-validated .form-check-input:valid~.form-check-label {
    color: var(--bs-form-valid-color);
}

.form-check-inline .form-check-input~.valid-feedback {
    margin-left: 0.5em;
}

.input-group>.form-control:not(:focus).is-valid,
.input-group>.form-floating:not(:focus-within).is-valid,
.input-group>.form-select:not(:focus).is-valid,
.was-validated .input-group>.form-control:not(:focus):valid,
.was-validated .input-group>.form-floating:not(:focus-within):valid,
.was-validated .input-group>.form-select:not(:focus):valid {
    z-index: 3;
}

.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.875em;
    color: var(--bs-form-invalid-color);
}

.invalid-tooltip {
    position: absolute;
    top: 100%;
    z-index: 5;
    display: none;
    max-width: 100%;
    padding: 0.25rem 0.5rem;
    margin-top: 0.1rem;
    font-size: 0.875rem;
    color: #fff;
    background-color: var(--bs-danger);
    border-radius: var(--bs-border-radius);
}

.is-invalid~.invalid-feedback,
.is-invalid~.invalid-tooltip,
.was-validated :invalid~.invalid-feedback,
.was-validated :invalid~.invalid-tooltip {
    display: block;
}

.form-control.is-invalid,
.was-validated .form-control: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,
.was-validated .form-control:invalid:focus {
    border-color: var(--bs-form-invalid-border-color);
    box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}

.was-validated textarea.form-control:invalid,
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,
.was-validated .form-select: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"],
.was-validated .form-select:invalid:not([multiple]):not([size]),
.was-validated .form-select: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,
.was-validated .form-select: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-control-color.is-invalid,
.was-validated .form-control-color:invalid {
    width: calc(3rem + calc(1.5em + 0.75rem));
}

.form-check-input.is-invalid,
.was-validated .form-check-input:invalid {
    border-color: var(--bs-form-invalid-border-color);
}

.form-check-input.is-invalid:checked,
.was-validated .form-check-input:invalid:checked {
    background-color: var(--bs-form-invalid-color);
}

.form-check-input.is-invalid:focus,
.was-validated .form-check-input:invalid:focus {
    box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}

.form-check-input.is-invalid~.form-check-label,
.was-validated .form-check-input:invalid~.form-check-label {
    color: var(--bs-form-invalid-color);
}

.form-check-inline .form-check-input~.invalid-feedback {
    margin-left: 0.5em;
}

.input-group>.form-control:not(:focus).is-invalid,
.input-group>.form-floating:not(:focus-within).is-invalid,
.input-group>.form-select:not(:focus).is-invalid,
.was-validated .input-group>.form-control:not(:focus):invalid,
.was-validated .input-group>.form-floating:not(:focus-within):invalid,
.was-validated .input-group>.form-select:not(:focus):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-out-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), 0.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-out-line-height);
    color: var(--bs-btn-color);
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    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-check+.btn:hover {
    color: var(--bs-btn-color);
    background-color: var(--bs-btn-bg);
    border-color: var(--bs-btn-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);
}

.btn-check:focus-visible+.btn {
    border-color: var(--bs-btn-hover-border-color);
    outline: 0;
    box-shadow: var(--bs-btn-focus-box-shadow);
}

.btn-check:checked+.btn,
.btn.active,
.btn.show,
.btn:first-child:active,
:not(.btn-check)+.btn:active {
    color: var(--bs-btn-active-color);
    background-color: var(--bs-btn-active-bg);
    border-color: var(--bs-btn-active-border-color);
}

.btn-check:checked+.btn:focus-visible,
.btn.active:focus-visible,
.btn.show:focus-visible,
.btn:first-child:active:focus-visible,
:not(.btn-check)+.btn:active: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-secondary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #6c757d;
    --bs-btn-border-color: #6c757d;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #5c636a;
    --bs-btn-hover-border-color: #565e64;
    --bs-btn-focus-shadow-rgb: 130, 138, 145;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #565e64;
    --bs-btn-active-border-color: #51585e;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #6c757d;
    --bs-btn-disabled-border-color: #6c757d;
}

.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-info {
    --bs-btn-color: #000;
    --bs-btn-bg: #0dcaf0;
    --bs-btn-border-color: #0dcaf0;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #31d2f2;
    --bs-btn-hover-border-color: #25cff2;
    --bs-btn-focus-shadow-rgb: 11, 172, 204;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #3dd5f3;
    --bs-btn-active-border-color: #25cff2;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #000;
    --bs-btn-disabled-bg: #0dcaf0;
    --bs-btn-disabled-border-color: #0dcaf0;
}

.btn-warning {
    --bs-btn-color: #000;
    --bs-btn-bg: #ffc107;
    --bs-btn-border-color: #ffc107;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #ffca2c;
    --bs-btn-hover-border-color: #ffc720;
    --bs-btn-focus-shadow-rgb: 217, 164, 6;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #ffcd39;
    --bs-btn-active-border-color: #ffc720;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #000;
    --bs-btn-disabled-bg: #ffc107;
    --bs-btn-disabled-border-color: #ffc107;
}

.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-dark {
    --bs-btn-color: #fff;
    --bs-btn-bg: #212529;
    --bs-btn-border-color: #212529;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #424649;
    --bs-btn-hover-border-color: #373b3e;
    --bs-btn-focus-shadow-rgb: 66, 70, 73;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #4d5154;
    --bs-btn-active-border-color: #373b3e;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #212529;
    --bs-btn-disabled-border-color: #212529;
}

.btn-outline-primary {
    --bs-btn-color: #0d6efd;
    --bs-btn-border-color: #0d6efd;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #0d6efd;
    --bs-btn-hover-border-color: #0d6efd;
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #0d6efd;
    --bs-btn-active-border-color: #0d6efd;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #0d6efd;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #0d6efd;
    --bs-gradient: none;
}

.btn-outline-secondary {
    --bs-btn-color: #6c757d;
    --bs-btn-border-color: #6c757d;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #6c757d;
    --bs-btn-hover-border-color: #6c757d;
    --bs-btn-focus-shadow-rgb: 108, 117, 125;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #6c757d;
    --bs-btn-active-border-color: #6c757d;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #6c757d;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #6c757d;
    --bs-gradient: none;
}

.btn-outline-success {
    --bs-btn-color: #198754;
    --bs-btn-border-color: #198754;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #198754;
    --bs-btn-hover-border-color: #198754;
    --bs-btn-focus-shadow-rgb: 25, 135, 84;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #198754;
    --bs-btn-active-border-color: #198754;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #198754;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #198754;
    --bs-gradient: none;
}

.btn-outline-info {
    --bs-btn-color: #0dcaf0;
    --bs-btn-border-color: #0dcaf0;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #0dcaf0;
    --bs-btn-hover-border-color: #0dcaf0;
    --bs-btn-focus-shadow-rgb: 13, 202, 240;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #0dcaf0;
    --bs-btn-active-border-color: #0dcaf0;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #0dcaf0;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #0dcaf0;
    --bs-gradient: none;
}

.btn-outline-warning {
    --bs-btn-color: #ffc107;
    --bs-btn-border-color: #ffc107;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #ffc107;
    --bs-btn-hover-border-color: #ffc107;
    --bs-btn-focus-shadow-rgb: 255, 193, 7;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #ffc107;
    --bs-btn-active-border-color: #ffc107;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #ffc107;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #ffc107;
    --bs-gradient: none;
}

.btn-outline-danger {
    --bs-btn-color: #dc3545;
    --bs-btn-border-color: #dc3545;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #dc3545;
    --bs-btn-hover-border-color: #dc3545;
    --bs-btn-focus-shadow-rgb: 220, 53, 69;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #dc3545;
    --bs-btn-active-border-color: #dc3545;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #dc3545;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #dc3545;
    --bs-gradient: none;
}

.btn-outline-light {
    --bs-btn-color: #f8f9fa;
    --bs-btn-border-color: #f8f9fa;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #f8f9fa;
    --bs-btn-hover-border-color: #f8f9fa;
    --bs-btn-focus-shadow-rgb: 248, 249, 250;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #f8f9fa;
    --bs-btn-active-border-color: #f8f9fa;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #f8f9fa;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #f8f9fa;
    --bs-gradient: none;
}

.btn-out-line-dark {
    --bs-btn-color: #212529;
    --bs-btn-border-color: #212529;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #212529;
    --bs-btn-hover-border-color: #212529;
    --bs-btn-focus-shadow-rgb: 33, 37, 41;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #212529;
    --bs-btn-active-border-color: #212529;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #212529;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #212529;
    --bs-gradient: none;
}

.btn-link {
    --bs-btn-font-weight: 400;
    --bs-btn-color: var(--bs-link-color);
    --bs-btn-bg: transparent;
    --bs-btn-border-color: transparent;
    --bs-btn-hover-color: var(--bs-link-hover-color);
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-color: var(--bs-link-hover-color);
    --bs-btn-active-border-color: transparent;
    --bs-btn-disabled-color: #6c757d;
    --bs-btn-disabled-border-color: transparent;
    --bs-btn-box-shadow: 0 0 0 #000;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    text-decoration: underline;
}

.btn-link:focus-visible {
    color: var(--bs-btn-color);
}

.btn-link:hover {
    color: var(--bs-btn-hover-color);
}

.btn-group-lg>.btn,
.btn-lg {
    --bs-btn-padding-y: 0.5rem;
    --bs-btn-padding-x: 1rem;
    --bs-btn-font-size: 1.25rem;
    --bs-btn-border-radius: var(--bs-border-radius-lg);
}

.btn-group-sm>.btn,
.btn-sm {
    --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;
    }
}

.dropdown,
.dropdown-center,
.dropend,
.dropstart,
.dropup,
.dropup-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: var(--bs-box-shadow);
    --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);
}

.dropdown-menu[data-bs-popper] {
    top: 100%;
    left: 0;
    margin-top: var(--bs-dropdown-spacer);
}

.dropdown-menu-start {
    --bs-position: start;
}

.dropdown-menu-start[data-bs-popper] {
    right: auto;
    left: 0;
}

.dropdown-menu-end {
    --bs-position: end;
}

.dropdown-menu-end[data-bs-popper] {
    right: 0;
    left: auto;
}

@media (min-width: 576px) {
    .dropdown-menu-sm-start {
        --bs-position: start;
    }

    .dropdown-menu-sm-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-sm-end {
        --bs-position: end;
    }

    .dropdown-menu-sm-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 768px) {
    .dropdown-menu-md-start {
        --bs-position: start;
    }

    .dropdown-menu-md-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-md-end {
        --bs-position: end;
    }

    .dropdown-menu-md-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 992px) {
    .dropdown-menu-lg-start {
        --bs-position: start;
    }

    .dropdown-menu-lg-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-lg-end {
        --bs-position: end;
    }

    .dropdown-menu-lg-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 1200px) {
    .dropdown-menu-xl-start {
        --bs-position: start;
    }

    .dropdown-menu-xl-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-xl-end {
        --bs-position: end;
    }

    .dropdown-menu-xl-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 1440px) {
    .dropdown-menu-xxl-start {
        --bs-position: start;
    }

    .dropdown-menu-xxl-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-xxl-end {
        --bs-position: end;
    }

    .dropdown-menu-xxl-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

.dropup .dropdown-menu[data-bs-popper] {
    top: auto;
    bottom: 100%;
    margin-top: 0;
    margin-bottom: var(--bs-dropdown-spacer);
}

.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-menu[data-bs-popper] {
    top: 0;
    right: auto;
    left: 100%;
    margin-top: 0;
    margin-left: var(--bs-dropdown-spacer);
}

.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-menu[data-bs-popper] {
    top: 0;
    right: 100%;
    left: auto;
    margin-top: 0;
    margin-right: var(--bs-dropdown-spacer);
}

.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:focus,
.dropdown-item:hover {
    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;
}

.dropdown-item-text {
    display: block;
    padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
    color: var(--bs-dropdown-link-color);
}

.dropdown-menu-dark {
    --bs-dropdown-color: #dee2e6;
    --bs-dropdown-bg: #343a40;
    --bs-dropdown-border-color: var(--bs-border-color-translucent);
    --bs-dropdown-box-shadow: ;
    --bs-dropdown-link-color: #dee2e6;
    --bs-dropdown-link-hover-color: #fff;
    --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
    --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
    --bs-dropdown-link-active-color: #fff;
    --bs-dropdown-link-active-bg: #0d6efd;
    --bs-dropdown-link-disabled-color: #adb5bd;
    --bs-dropdown-header-color: #adb5bd;
}

.btn-group,
.btn-group-vertical {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
}

.btn-group-vertical>.btn,
.btn-group>.btn {
    position: relative;
    flex: 1 1 auto;
}

.btn-group-vertical>.btn-check:checked+.btn,
.btn-group-vertical>.btn-check:focus+.btn,
.btn-group-vertical>.btn.active,
.btn-group-vertical>.btn:active,
.btn-group-vertical>.btn:focus,
.btn-group-vertical>.btn:hover,
.btn-group>.btn-check:checked+.btn,
.btn-group>.btn-check:focus+.btn,
.btn-group>.btn.active,
.btn-group>.btn:active,
.btn-group>.btn:focus,
.btn-group>.btn:hover {
    z-index: 1;
}

.btn-toolbar {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.btn-toolbar .input-group {
    width: auto;
}

.btn-group {
    border-radius: var(--bs-border-radius);
}

.btn-group>.btn-group:not(:first-child),
.btn-group> :not(.btn-check:first-child)+.btn {
    margin-left: calc(var(--bs-border-width) * -1);
}

.btn-group>.btn-group:not(:last-child)>.btn,
.btn-group>.btn.dropdown-toggle-split:first-child,
.btn-group>.btn:not(:last-child):not(.dropdown-toggle) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.btn-group>.btn-group:not(:first-child)>.btn,
.btn-group>.btn:nth-child(n + 3),
.btn-group> :not(.btn-check)+.btn {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
    padding-right: 0.5625rem;
    padding-left: 0.5625rem;
}

.dropdown-toggle-split::after,
.dropend .dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after {
    margin-left: 0;
}

.dropstart .dropdown-toggle-split::before {
    margin-right: 0;
}

.btn-group-sm>.btn+.dropdown-toggle-split,
.btn-sm+.dropdown-toggle-split {
    padding-right: 0.375rem;
    padding-left: 0.375rem;
}

.btn-group-lg>.btn+.dropdown-toggle-split,
.btn-lg+.dropdown-toggle-split {
    padding-right: 0.75rem;
    padding-left: 0.75rem;
}

.btn-group-vertical {
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.btn-group-vertical>.btn,
.btn-group-vertical>.btn-group {
    width: 100%;
}

.btn-group-vertical>.btn-group:not(:first-child),
.btn-group-vertical>.btn:not(:first-child) {
    margin-top: calc(var(--bs-border-width) * -1);
}

.btn-group-vertical>.btn-group:not(:last-child)>.btn,
.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle) {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.btn-group-vertical>.btn-group:not(:first-child)>.btn,
.btn-group-vertical>.btn~.btn {
    border-top-left-radius: 0;
    border-top-right-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;
}

.nav-link {
    display: block;
    padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
    font-size: var(--bs-nav-link-font-size);
    font-weight: var(--bs-nav-link-font-weight);
    color: var(--bs-nav-link-color);
    text-decoration: none;
    background: 0 0;
    border: 0;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .nav-link {
        transition: none;
    }
}

.nav-link:focus,
.nav-link:hover {
    color: var(--bs-nav-link-hover-color);
}

.nav-link:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.nav-link.disabled,
.nav-link:disabled {
    color: var(--bs-nav-link-disabled-color);
    pointer-events: none;
    cursor: default;
}

.nav-tabs {
    --bs-nav-tabs-border-width: var(--bs-border-width);
    --bs-nav-tabs-border-color: var(--bs-border-color);
    --bs-nav-tabs-border-radius: var(--bs-border-radius);
    --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);
    --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);
    --bs-nav-tabs-link-active-bg: var(--bs-body-bg);
    --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);
    border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);
}

.nav-tabs .nav-link {
    margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));
    border: var(--bs-nav-tabs-border-width) solid transparent;
    border-top-left-radius: var(--bs-nav-tabs-border-radius);
    border-top-right-radius: var(--bs-nav-tabs-border-radius);
}

.nav-tabs .nav-link:focus,
.nav-tabs .nav-link:hover {
    isolation: isolate;
    border-color: var(--bs-nav-tabs-link-hover-border-color);
}

.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
    color: var(--bs-nav-tabs-link-active-color);
    background-color: var(--bs-nav-tabs-link-active-bg);
    border-color: var(--bs-nav-tabs-link-active-border-color);
}

.nav-tabs .dropdown-menu {
    margin-top: calc(-1 * var(--bs-nav-tabs-border-width));
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.nav-pills {
    --bs-nav-pills-border-radius: var(--bs-border-radius);
    --bs-nav-pills-link-active-color: #fff;
    --bs-nav-pills-link-active-bg: #0d6efd;
}

.nav-pills .nav-link {
    border-radius: var(--bs-nav-pills-border-radius);
}

.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
    color: var(--bs-nav-pills-link-active-color);
    background-color: var(--bs-nav-pills-link-active-bg);
}

.nav-underline {
    --bs-nav-underline-gap: 1rem;
    --bs-nav-underline-border-width: 0.125rem;
    --bs-nav-underline-link-active-color: var(--bs-emphasis-color);
    gap: var(--bs-nav-underline-gap);
}

.nav-underline .nav-link {
    padding-right: 0;
    padding-left: 0;
    border-bottom: var(--bs-nav-underline-border-width) solid transparent;
}

.nav-underline .nav-link:focus,
.nav-underline .nav-link:hover {
    border-bottom-color: currentcolor;
}

.nav-underline .nav-link.active,
.nav-underline .show>.nav-link {
    font-weight: 700;
    color: var(--bs-nav-underline-link-active-color);
    border-bottom-color: currentcolor;
}

.nav-fill .nav-item,
.nav-fill>.nav-link {
    flex: 1 1 auto;
    text-align: center;
}

.nav-justified .nav-item,
.nav-justified>.nav-link {
    flex-basis: 0;
    flex-grow: 1;
    text-align: center;
}

.nav-fill .nav-item .nav-link,
.nav-justified .nav-item .nav-link {
    width: 100%;
}

.tab-content>.tab-pane {
    display: none;
}

.tab-content>.active {
    display: block;
}

.navbar {
    --bs-navbar-padding-x: 0;
    --bs-navbar-padding-y: 0.5rem;
    --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);
    --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);
    --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);
    --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);
    --bs-navbar-brand-padding-y: 0.3125rem;
    --bs-navbar-brand-margin-end: 1rem;
    --bs-navbar-brand-font-size: 1.25rem;
    --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);
    --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);
    --bs-navbar-nav-link-padding-x: 0.5rem;
    --bs-navbar-toggler-padding-y: 0.25rem;
    --bs-navbar-toggler-padding-x: 0.75rem;
    --bs-navbar-toggler-font-size: 1.25rem;
    --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);
    --bs-navbar-toggler-border-radius: var(--bs-border-radius);
    --bs-navbar-toggler-focus-width: 0.25rem;
    --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);
}

.navbar>.container,
.navbar>.container-fluid,
.navbar>.container-lg,
.navbar>.container-md,
.navbar>.container-sm,
.navbar>.container-xl,
.navbar>.container-xxl {
    display: flex;
    flex-wrap: inherit;
    align-items: center;
    justify-content: space-between;
}

.navbar-brand {
    padding-top: var(--bs-navbar-brand-padding-y);
    padding-bottom: var(--bs-navbar-brand-padding-y);
    margin-right: var(--bs-navbar-brand-margin-end);
    font-size: var(--bs-navbar-brand-font-size);
    color: var(--bs-navbar-brand-color);
    text-decoration: none;
    white-space: nowrap;
}

.navbar-brand:focus,
.navbar-brand:hover {
    color: var(--bs-navbar-brand-hover-color);
}

.navbar-nav {
    --bs-nav-link-padding-x: 0;
    --bs-nav-link-padding-y: 0.5rem;
    --bs-nav-link-font-weight: ;
    --bs-nav-link-color: var(--bs-navbar-color);
    --bs-nav-link-hover-color: var(--bs-navbar-hover-color);
    --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}

.navbar-nav .nav-link.active,
.navbar-nav .nav-link.show {
    color: var(--bs-navbar-active-color);
}

.navbar-nav .dropdown-menu {
    position: static;
}

.navbar-text {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    color: var(--bs-navbar-color);
}

.navbar-text a,
.navbar-text a:focus,
.navbar-text a:hover {
    color: var(--bs-navbar-active-color);
}

.navbar-collapse {
    flex-basis: 100%;
    flex-grow: 1;
    align-items: center;
}

.navbar-toggler {
    padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);
    font-size: var(--bs-navbar-toggler-font-size);
    line-height: 1;
    color: var(--bs-navbar-color);
    background-color: transparent;
    border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);
    border-radius: var(--bs-navbar-toggler-border-radius);
    transition: var(--bs-navbar-toggler-transition);
}

@media (prefers-reduced-motion: reduce) {
    .navbar-toggler {
        transition: none;
    }
}

.navbar-toggler:hover {
    text-decoration: none;
}

.navbar-toggler:focus {
    text-decoration: none;
    outline: 0;
    box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);
}

.navbar-toggler-icon {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
    background-image: var(--bs-navbar-toggler-icon-bg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
}

.navbar-nav-scroll {
    max-height: var(--bs-scroll-height, 75vh);
    overflow-y: auto;
}

@media (min-width: 576px) {
    .navbar-expand-sm {
        flex-wrap: nowrap;
        justify-content: flex-start;
    }

    .navbar-expand-sm .navbar-nav {
        flex-direction: row;
    }

    .navbar-expand-sm .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .navbar-expand-sm .navbar-nav .nav-link {
        padding-right: var(--bs-navbar-nav-link-padding-x);
        padding-left: var(--bs-navbar-nav-link-padding-x);
    }

    .navbar-expand-sm .navbar-nav-scroll {
        overflow: visible;
    }

    .navbar-expand-sm .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }

    .navbar-expand-sm .navbar-toggler {
        display: none;
    }

    .navbar-expand-sm .offcanvas {
        position: static;
        z-index: auto;
        flex-grow: 1;
        width: auto !important;
        height: auto !important;
        visibility: visible !important;
        background-color: transparent !important;
        border: 0 !important;
        transform: none !important;
        transition: none;
    }

    .navbar-expand-sm .offcanvas .offcanvas-header {
        display: none;
    }

    .navbar-expand-sm .offcanvas .offcanvas-body {
        display: flex;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

@media (min-width: 768px) {
    .navbar-expand-md {
        flex-wrap: nowrap;
        justify-content: flex-start;
    }

    .navbar-expand-md .navbar-nav {
        flex-direction: row;
    }

    .navbar-expand-md .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .navbar-expand-md .navbar-nav .nav-link {
        padding-right: var(--bs-navbar-nav-link-padding-x);
        padding-left: var(--bs-navbar-nav-link-padding-x);
    }

    .navbar-expand-md .navbar-nav-scroll {
        overflow: visible;
    }

    .navbar-expand-md .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }

    .navbar-expand-md .navbar-toggler {
        display: none;
    }

    .navbar-expand-md .offcanvas {
        position: static;
        z-index: auto;
        flex-grow: 1;
        width: auto !important;
        height: auto !important;
        visibility: visible !important;
        background-color: transparent !important;
        border: 0 !important;
        transform: none !important;
        transition: none;
    }

    .navbar-expand-md .offcanvas .offcanvas-header {
        display: none;
    }

    .navbar-expand-md .offcanvas .offcanvas-body {
        display: flex;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

@media (min-width: 992px) {
    .navbar-expand-lg {
        flex-wrap: nowrap;
        justify-content: flex-start;
    }

    .navbar-expand-lg .navbar-nav {
        flex-direction: row;
    }

    .navbar-expand-lg .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: var(--bs-navbar-nav-link-padding-x);
        padding-left: var(--bs-navbar-nav-link-padding-x);
    }

    .navbar-expand-lg .navbar-nav-scroll {
        overflow: visible;
    }

    .navbar-expand-lg .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }

    .navbar-expand-lg .navbar-toggler {
        display: none;
    }

    .navbar-expand-lg .offcanvas {
        position: static;
        z-index: auto;
        flex-grow: 1;
        width: auto !important;
        height: auto !important;
        visibility: visible !important;
        background-color: transparent !important;
        border: 0 !important;
        transform: none !important;
        transition: none;
    }

    .navbar-expand-lg .offcanvas .offcanvas-header {
        display: none;
    }

    .navbar-expand-lg .offcanvas .offcanvas-body {
        display: flex;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

@media (min-width: 1200px) {
    .navbar-expand-xl {
        flex-wrap: nowrap;
        justify-content: flex-start;
    }

    .navbar-expand-xl .navbar-nav {
        flex-direction: row;
    }

    .navbar-expand-xl .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .navbar-expand-xl .navbar-nav .nav-link {
        padding-right: var(--bs-navbar-nav-link-padding-x);
        padding-left: var(--bs-navbar-nav-link-padding-x);
    }

    .navbar-expand-xl .navbar-nav-scroll {
        overflow: visible;
    }

    .navbar-expand-xl .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }

    .navbar-expand-xl .navbar-toggler {
        display: none;
    }

    .navbar-expand-xl .offcanvas {
        position: static;
        z-index: auto;
        flex-grow: 1;
        width: auto !important;
        height: auto !important;
        visibility: visible !important;
        background-color: transparent !important;
        border: 0 !important;
        transform: none !important;
        transition: none;
    }

    .navbar-expand-xl .offcanvas .offcanvas-header {
        display: none;
    }

    .navbar-expand-xl .offcanvas .offcanvas-body {
        display: flex;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

@media (min-width: 1440px) {
    .navbar-expand-xxl {
        flex-wrap: nowrap;
        justify-content: flex-start;
    }

    .navbar-expand-xxl .navbar-nav {
        flex-direction: row;
    }

    .navbar-expand-xxl .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .navbar-expand-xxl .navbar-nav .nav-link {
        padding-right: var(--bs-navbar-nav-link-padding-x);
        padding-left: var(--bs-navbar-nav-link-padding-x);
    }

    .navbar-expand-xxl .navbar-nav-scroll {
        overflow: visible;
    }

    .navbar-expand-xxl .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }

    .navbar-expand-xxl .navbar-toggler {
        display: none;
    }

    .navbar-expand-xxl .offcanvas {
        position: static;
        z-index: auto;
        flex-grow: 1;
        width: auto !important;
        height: auto !important;
        visibility: visible !important;
        background-color: transparent !important;
        border: 0 !important;
        transform: none !important;
        transition: none;
    }

    .navbar-expand-xxl .offcanvas .offcanvas-header {
        display: none;
    }

    .navbar-expand-xxl .offcanvas .offcanvas-body {
        display: flex;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

.navbar-expand {
    flex-wrap: nowrap;
    justify-content: flex-start;
}

.navbar-expand .navbar-nav {
    flex-direction: row;
}

.navbar-expand .navbar-nav .dropdown-menu {
    position: absolute;
}

.navbar-expand .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
}

.navbar-expand .navbar-nav-scroll {
    overflow: visible;
}

.navbar-expand .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
}

.navbar-expand .navbar-toggler {
    display: none;
}

.navbar-expand .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
}

.navbar-expand .offcanvas .offcanvas-header {
    display: none;
}

.navbar-expand .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
}

.navbar-dark,
.navbar[data-bs-theme="dark"] {
    --bs-navbar-color: rgba(255, 255, 255, 0.55);
    --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);
    --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);
    --bs-navbar-active-color: #fff;
    --bs-navbar-brand-color: #fff;
    --bs-navbar-brand-hover-color: #fff;
    --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);
    --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

[data-bs-theme="dark"] .navbar-toggler-icon {
    --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.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;
}

.card>.list-group {
    border-top: inherit;
    border-bottom: inherit;
}

.card>.list-group:first-child {
    border-top-width: 0;
    border-top-left-radius: var(--bs-card-inner-border-radius);
    border-top-right-radius: var(--bs-card-inner-border-radius);
}

.card>.list-group:last-child {
    border-bottom-width: 0;
    border-bottom-right-radius: var(--bs-card-inner-border-radius);
    border-bottom-left-radius: var(--bs-card-inner-border-radius);
}

.card>.card-header+.list-group,
.card>.list-group+.card-footer {
    border-top: 0;
}

.card-body {
    flex: 1 1 auto;
    padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
    color: var(--bs-card-color);
}

.card-title {
    margin-bottom: var(--bs-card-title-spacer-y);
    color: var(--bs-card-title-color);
}

.card-subtitle {
    margin-top: calc(-0.5 * var(--bs-card-title-spacer-y));
    margin-bottom: 0;
    color: var(--bs-card-subtitle-color);
}

.card-text:last-child {
    margin-bottom: 0;
}

.card-link+.card-link {
    margin-left: var(--bs-card-spacer-x);
}

.card-header {
    padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
    margin-bottom: 0;
    color: var(--bs-card-cap-color);
    background-color: var(--bs-card-cap-bg);
    border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
}

.card-header:first-child {
    border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;
}

.card-footer {
    padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
    color: var(--bs-card-cap-color);
    background-color: var(--bs-card-cap-bg);
    border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);
}

.card-footer:last-child {
    border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);
}

.card-header-tabs {
    margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
    margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));
    margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
    border-bottom: 0;
}

.card-header-tabs .nav-link.active {
    background-color: var(--bs-card-bg);
    border-bottom-color: var(--bs-card-bg);
}

.card-header-pills {
    margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
    margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
}

.card-img-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: var(--bs-card-img-overlay-padding);
    border-radius: var(--bs-card-inner-border-radius);
}

.card-img,
.card-img-bottom,
.card-img-top {
    width: 100%;
}

.card-img,
.card-img-top {
    border-top-left-radius: var(--bs-card-inner-border-radius);
    border-top-right-radius: var(--bs-card-inner-border-radius);
}

.card-img,
.card-img-bottom {
    border-bottom-right-radius: var(--bs-card-inner-border-radius);
    border-bottom-left-radius: var(--bs-card-inner-border-radius);
}

.card-group>.card {
    margin-bottom: var(--bs-card-group-margin);
}

@media (min-width: 576px) {
    .card-group {
        display: flex;
        flex-flow: row wrap;
    }

    .card-group>.card {
        flex: 1 0 0%;
        margin-bottom: 0;
    }

    .card-group>.card+.card {
        margin-left: 0;
        border-left: 0;
    }

    .card-group>.card:not(:last-child) {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }

    .card-group>.card:not(:last-child) .card-header,
    .card-group>.card:not(:last-child) .card-img-top {
        border-top-right-radius: 0;
    }

    .card-group>.card:not(:last-child) .card-footer,
    .card-group>.card:not(:last-child) .card-img-bottom {
        border-bottom-right-radius: 0;
    }

    .card-group>.card:not(:first-child) {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }

    .card-group>.card:not(:first-child) .card-header,
    .card-group>.card:not(:first-child) .card-img-top {
        border-top-left-radius: 0;
    }

    .card-group>.card:not(:first-child) .card-footer,
    .card-group>.card:not(:first-child) .card-img-bottom {
        border-bottom-left-radius: 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(--bs-border-color);
    --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-button {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
    font-size: 1rem;
    color: var(--bs-accordion-btn-color);
    text-align: left;
    background-color: var(--bs-accordion-btn-bg);
    border: 0;
    border-radius: 0;
    overflow-anchor: none;
    transition: var(--bs-accordion-transition);
}

@media (prefers-reduced-motion: reduce) {
    .accordion-button {
        transition: none;
    }
}

.accordion-button:not(.collapsed) {
    color: var(--bs-accordion-active-color);
    background-color: var(--bs-accordion-active-bg);
    box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}

.accordion-button:not(.collapsed)::after {
    background-image: var(--bs-accordion-btn-active-icon);
    transform: var(--bs-accordion-btn-icon-transform);
}

.accordion-button::after {
    flex-shrink: 0;
    width: var(--bs-accordion-btn-icon-width);
    height: var(--bs-accordion-btn-icon-width);
    margin-left: auto;
    content: "";
    background-image: var(--bs-accordion-btn-icon);
    background-repeat: no-repeat;
    background-size: var(--bs-accordion-btn-icon-width);
    transition: var(--bs-accordion-btn-icon-transition);
}

@media (prefers-reduced-motion: reduce) {
    .accordion-button::after {
        transition: none;
    }
}

.accordion-button:hover {
    z-index: 2;
}

.accordion-button:focus {
    z-index: 3;
    border-color: var(--bs-accordion-btn-focus-border-color);
    outline: 0;
    box-shadow: var(--bs-accordion-btn-focus-box-shadow);
}

.accordion-header {
    margin-bottom: 0;
}

.accordion-item {
    color: var(--bs-accordion-color);
    background-color: var(--bs-accordion-bg);
    border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}

.accordion-item:first-of-type {
    border-top-left-radius: var(--bs-accordion-border-radius);
    border-top-right-radius: var(--bs-accordion-border-radius);
}

.accordion-item:first-of-type .accordion-button {
    border-top-left-radius: var(--bs-accordion-inner-border-radius);
    border-top-right-radius: var(--bs-accordion-inner-border-radius);
}

.accordion-item:not(:first-of-type) {
    border-top: 0;
}

.accordion-item:last-of-type {
    border-bottom-right-radius: var(--bs-accordion-border-radius);
    border-bottom-left-radius: var(--bs-accordion-border-radius);
}

.accordion-item:last-of-type .accordion-button.collapsed {
    border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
    border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
}

.accordion-item:last-of-type .accordion-collapse {
    border-bottom-right-radius: var(--bs-accordion-border-radius);
    border-bottom-left-radius: var(--bs-accordion-border-radius);
}

.accordion-body {
    padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);
}

.accordion-flush .accordion-collapse {
    border-width: 0;
}

.accordion-flush .accordion-item {
    border-right: 0;
    border-left: 0;
    border-radius: 0;
}

.accordion-flush .accordion-item:first-child {
    border-top: 0;
}

.accordion-flush .accordion-item:last-child {
    border-bottom: 0;
}

.accordion-flush .accordion-item .accordion-button,
.accordion-flush .accordion-item .accordion-button.collapsed {
    border-radius: 0;
}

[data-bs-theme="dark"] .accordion-button::after {
    --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%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-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%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");
}

.breadcrumb {
    --bs-breadcrumb-padding-x: 0;
    --bs-breadcrumb-padding-y: 0;
    --bs-breadcrumb-margin-bottom: 1rem;
    --bs-breadcrumb-bg: ;
    --bs-breadcrumb-border-radius: ;
    --bs-breadcrumb-divider-color: var(--bs-secondary-color);
    --bs-breadcrumb-item-padding-x: 0.5rem;
    --bs-breadcrumb-item-active-color: var(--bs-secondary-color);
    display: flex;
    flex-wrap: wrap;
    padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);
    margin-bottom: var(--bs-breadcrumb-margin-bottom);
    font-size: var(--bs-breadcrumb-font-size);
    list-style: none;
    background-color: var(--bs-breadcrumb-bg);
    border-radius: var(--bs-breadcrumb-border-radius);
}

.breadcrumb-item+.breadcrumb-item {
    padding-left: var(--bs-breadcrumb-item-padding-x);
}

.breadcrumb-item+.breadcrumb-item::before {
    float: left;
    padding-right: var(--bs-breadcrumb-item-padding-x);
    color: var(--bs-breadcrumb-divider-color);
    content: var(--bs-breadcrumb-divider, "../index-2.html");
}

.breadcrumb-item.active {
    color: var(--bs-breadcrumb-item-active-color);
}

.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);
}

.active>.page-link,
.page-link.active {
    z-index: 3;
    color: var(--bs-pagination-active-color);
    background-color: var(--bs-pagination-active-bg);
    border-color: var(--bs-pagination-active-border-color);
}

.disabled>.page-link,
.page-link.disabled {
    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);
}

.pagination-lg {
    --bs-pagination-padding-x: 1.5rem;
    --bs-pagination-padding-y: 0.75rem;
    --bs-pagination-font-size: 1.25rem;
    --bs-pagination-border-radius: var(--bs-border-radius-lg);
}

.pagination-sm {
    --bs-pagination-padding-x: 0.5rem;
    --bs-pagination-padding-y: 0.25rem;
    --bs-pagination-font-size: 0.875rem;
    --bs-pagination-border-radius: var(--bs-border-radius-sm);
}

.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-heading {
    color: inherit;
}

.alert-link {
    font-weight: 700;
    color: var(--bs-alert-link-color);
}

.alert-dismissible {
    padding-right: 3rem;
}

.alert-dismissible .btn-close {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    padding: 1.25rem 1rem;
}

.alert-primary {
    --bs-alert-color: var(--bs-primary-text-emphasis);
    --bs-alert-bg: var(--bs-primary-bg-subtle);
    --bs-alert-border-color: var(--bs-primary-border-subtle);
    --bs-alert-link-color: var(--bs-primary-text-emphasis);
}

.alert-secondary {
    --bs-alert-color: var(--bs-secondary-text-emphasis);
    --bs-alert-bg: var(--bs-secondary-bg-subtle);
    --bs-alert-border-color: var(--bs-secondary-border-subtle);
    --bs-alert-link-color: var(--bs-secondary-text-emphasis);
}

.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-info {
    --bs-alert-color: var(--bs-info-text-emphasis);
    --bs-alert-bg: var(--bs-info-bg-subtle);
    --bs-alert-border-color: var(--bs-info-border-subtle);
    --bs-alert-link-color: var(--bs-info-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);
}

.alert-light {
    --bs-alert-color: var(--bs-light-text-emphasis);
    --bs-alert-bg: var(--bs-light-bg-subtle);
    --bs-alert-border-color: var(--bs-light-border-subtle);
    --bs-alert-link-color: var(--bs-light-text-emphasis);
}

.alert-dark {
    --bs-alert-color: var(--bs-dark-text-emphasis);
    --bs-alert-bg: var(--bs-dark-bg-subtle);
    --bs-alert-border-color: var(--bs-dark-border-subtle);
    --bs-alert-link-color: var(--bs-dark-text-emphasis);
}

@keyframes progress-bar-stripes {
    0% {
        background-position-x: 1rem;
    }
}

.progress,
.progress-stacked {
    --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-stacked>.progress {
    overflow: visible;
}

.progress-stacked>.progress>.progress-bar {
    width: 100%;
}

.progress-bar-animated {
    animation: 1s linear infinite progress-bar-stripes;
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar-animated {
        animation: none;
    }
}

.list-group {
    --bs-list-group-color: var(--bs-body-color);
    --bs-list-group-bg: var(--bs-body-bg);
    --bs-list-group-border-color: var(--bs-border-color);
    --bs-list-group-border-width: var(--bs-border-width);
    --bs-list-group-border-radius: var(--bs-border-radius);
    --bs-list-group-item-padding-x: 1rem;
    --bs-list-group-item-padding-y: 0.5rem;
    --bs-list-group-action-color: var(--bs-secondary-color);
    --bs-list-group-action-hover-color: var(--bs-emphasis-color);
    --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);
    --bs-list-group-action-active-color: var(--bs-body-color);
    --bs-list-group-action-active-bg: var(--bs-secondary-bg);
    --bs-list-group-disabled-color: var(--bs-secondary-color);
    --bs-list-group-disabled-bg: var(--bs-body-bg);
    --bs-list-group-active-color: #fff;
    --bs-list-group-active-bg: #0d6efd;
    --bs-list-group-active-border-color: #0d6efd;
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    border-radius: var(--bs-list-group-border-radius);
}

.list-group-numbered {
    list-style-type: none;
    counter-reset: section;
}

.list-group-numbered>.list-group-item::before {
    content: counters(section, ".") ". ";
    counter-increment: section;
}

.list-group-item-action {
    width: 100%;
    color: var(--bs-list-group-action-color);
    text-align: inherit;
}

.list-group-item-action:focus,
.list-group-item-action:hover {
    z-index: 1;
    color: var(--bs-list-group-action-hover-color);
    text-decoration: none;
    background-color: var(--bs-list-group-action-hover-bg);
}

.list-group-item-action:active {
    color: var(--bs-list-group-action-active-color);
    background-color: var(--bs-list-group-action-active-bg);
}

.list-group-item {
    position: relative;
    display: block;
    padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);
    color: var(--bs-list-group-color);
    text-decoration: none;
    background-color: var(--bs-list-group-bg);
    border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);
}

.list-group-item:first-child {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
}

.list-group-item:last-child {
    border-bottom-right-radius: inherit;
    border-bottom-left-radius: inherit;
}

.list-group-item.disabled,
.list-group-item:disabled {
    color: var(--bs-list-group-disabled-color);
    pointer-events: none;
    background-color: var(--bs-list-group-disabled-bg);
}

.list-group-item.active {
    z-index: 2;
    color: var(--bs-list-group-active-color);
    background-color: var(--bs-list-group-active-bg);
    border-color: var(--bs-list-group-active-border-color);
}

.list-group-item+.list-group-item {
    border-top-width: 0;
}

.list-group-item+.list-group-item.active {
    margin-top: calc(-1 * var(--bs-list-group-border-width));
    border-top-width: var(--bs-list-group-border-width);
}

.list-group-horizontal {
    flex-direction: row;
}

.list-group-horizontal>.list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
}

.list-group-horizontal>.list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
}

.list-group-horizontal>.list-group-item.active {
    margin-top: 0;
}

.list-group-horizontal>.list-group-item+.list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
}

.list-group-horizontal>.list-group-item+.list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
}

@media (min-width: 576px) {
    .list-group-horizontal-sm {
        flex-direction: row;
    }

    .list-group-horizontal-sm>.list-group-item:first-child:not(:last-child) {
        border-bottom-left-radius: var(--bs-list-group-border-radius);
        border-top-right-radius: 0;
    }

    .list-group-horizontal-sm>.list-group-item:last-child:not(:first-child) {
        border-top-right-radius: var(--bs-list-group-border-radius);
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-sm>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-sm>.list-group-item+.list-group-item {
        border-top-width: var(--bs-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-sm>.list-group-item+.list-group-item.active {
        margin-left: calc(-1 * var(--bs-list-group-border-width));
        border-left-width: var(--bs-list-group-border-width);
    }
}

@media (min-width: 768px) {
    .list-group-horizontal-md {
        flex-direction: row;
    }

    .list-group-horizontal-md>.list-group-item:first-child:not(:last-child) {
        border-bottom-left-radius: var(--bs-list-group-border-radius);
        border-top-right-radius: 0;
    }

    .list-group-horizontal-md>.list-group-item:last-child:not(:first-child) {
        border-top-right-radius: var(--bs-list-group-border-radius);
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-md>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-md>.list-group-item+.list-group-item {
        border-top-width: var(--bs-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-md>.list-group-item+.list-group-item.active {
        margin-left: calc(-1 * var(--bs-list-group-border-width));
        border-left-width: var(--bs-list-group-border-width);
    }
}

@media (min-width: 992px) {
    .list-group-horizontal-lg {
        flex-direction: row;
    }

    .list-group-horizontal-lg>.list-group-item:first-child:not(:last-child) {
        border-bottom-left-radius: var(--bs-list-group-border-radius);
        border-top-right-radius: 0;
    }

    .list-group-horizontal-lg>.list-group-item:last-child:not(:first-child) {
        border-top-right-radius: var(--bs-list-group-border-radius);
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-lg>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-lg>.list-group-item+.list-group-item {
        border-top-width: var(--bs-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-lg>.list-group-item+.list-group-item.active {
        margin-left: calc(-1 * var(--bs-list-group-border-width));
        border-left-width: var(--bs-list-group-border-width);
    }
}

@media (min-width: 1200px) {
    .list-group-horizontal-xl {
        flex-direction: row;
    }

    .list-group-horizontal-xl>.list-group-item:first-child:not(:last-child) {
        border-bottom-left-radius: var(--bs-list-group-border-radius);
        border-top-right-radius: 0;
    }

    .list-group-horizontal-xl>.list-group-item:last-child:not(:first-child) {
        border-top-right-radius: var(--bs-list-group-border-radius);
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-xl>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-xl>.list-group-item+.list-group-item {
        border-top-width: var(--bs-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-xl>.list-group-item+.list-group-item.active {
        margin-left: calc(-1 * var(--bs-list-group-border-width));
        border-left-width: var(--bs-list-group-border-width);
    }
}

@media (min-width: 1440px) {
    .list-group-horizontal-xxl {
        flex-direction: row;
    }

    .list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child) {
        border-bottom-left-radius: var(--bs-list-group-border-radius);
        border-top-right-radius: 0;
    }

    .list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child) {
        border-top-right-radius: var(--bs-list-group-border-radius);
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-xxl>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-xxl>.list-group-item+.list-group-item {
        border-top-width: var(--bs-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-xxl>.list-group-item+.list-group-item.active {
        margin-left: calc(-1 * var(--bs-list-group-border-width));
        border-left-width: var(--bs-list-group-border-width);
    }
}

.list-group-flush {
    border-radius: 0;
}

.list-group-flush>.list-group-item {
    border-width: 0 0 var(--bs-list-group-border-width);
}

.list-group-flush>.list-group-item:last-child {
    border-bottom-width: 0;
}

.list-group-item-primary {
    --bs-list-group-color: var(--bs-primary-text-emphasis);
    --bs-list-group-bg: var(--bs-primary-bg-subtle);
    --bs-list-group-border-color: var(--bs-primary-border-subtle);
    --bs-list-group-action-hover-color: var(--bs-emphasis-color);
    --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);
    --bs-list-group-action-active-color: var(--bs-emphasis-color);
    --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);
    --bs-list-group-active-color: var(--bs-primary-bg-subtle);
    --bs-list-group-active-bg: var(--bs-primary-text-emphasis);
    --bs-list-group-active-border-color: var(--bs-primary-text-emphasis);
}

.list-group-item-secondary {
    --bs-list-group-color: var(--bs-secondary-text-emphasis);
    --bs-list-group-bg: var(--bs-secondary-bg-subtle);
    --bs-list-group-border-color: var(--bs-secondary-border-subtle);
    --bs-list-group-action-hover-color: var(--bs-emphasis-color);
    --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);
    --bs-list-group-action-active-color: var(--bs-emphasis-color);
    --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);
    --bs-list-group-active-color: var(--bs-secondary-bg-subtle);
    --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);
    --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis);
}

.list-group-item-success {
    --bs-list-group-color: var(--bs-success-text-emphasis);
    --bs-list-group-bg: var(--bs-success-bg-subtle);
    --bs-list-group-border-color: var(--bs-success-border-subtle);
    --bs-list-group-action-hover-color: var(--bs-emphasis-color);
    --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);
    --bs-list-group-action-active-color: var(--bs-emphasis-color);
    --bs-list-group-action-active-bg: var(--bs-success-border-subtle);
    --bs-list-group-active-color: var(--bs-success-bg-subtle);
    --bs-list-group-active-bg: var(--bs-success-text-emphasis);
    --bs-list-group-active-border-color: var(--bs-success-text-emphasis);
}

.list-group-item-info {
    --bs-list-group-color: var(--bs-info-text-emphasis);
    --bs-list-group-bg: var(--bs-info-bg-subtle);
    --bs-list-group-border-color: var(--bs-info-border-subtle);
    --bs-list-group-action-hover-color: var(--bs-emphasis-color);
    --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);
    --bs-list-group-action-active-color: var(--bs-emphasis-color);
    --bs-list-group-action-active-bg: var(--bs-info-border-subtle);
    --bs-list-group-active-color: var(--bs-info-bg-subtle);
    --bs-list-group-active-bg: var(--bs-info-text-emphasis);
    --bs-list-group-active-border-color: var(--bs-info-text-emphasis);
}

.list-group-item-warning {
    --bs-list-group-color: var(--bs-warning-text-emphasis);
    --bs-list-group-bg: var(--bs-warning-bg-subtle);
    --bs-list-group-border-color: var(--bs-warning-border-subtle);
    --bs-list-group-action-hover-color: var(--bs-emphasis-color);
    --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);
    --bs-list-group-action-active-color: var(--bs-emphasis-color);
    --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);
    --bs-list-group-active-color: var(--bs-warning-bg-subtle);
    --bs-list-group-active-bg: var(--bs-warning-text-emphasis);
    --bs-list-group-active-border-color: var(--bs-warning-text-emphasis);
}

.list-group-item-danger {
    --bs-list-group-color: var(--bs-danger-text-emphasis);
    --bs-list-group-bg: var(--bs-danger-bg-subtle);
    --bs-list-group-border-color: var(--bs-danger-border-subtle);
    --bs-list-group-action-hover-color: var(--bs-emphasis-color);
    --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);
    --bs-list-group-action-active-color: var(--bs-emphasis-color);
    --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);
    --bs-list-group-active-color: var(--bs-danger-bg-subtle);
    --bs-list-group-active-bg: var(--bs-danger-text-emphasis);
    --bs-list-group-active-border-color: var(--bs-danger-text-emphasis);
}

.list-group-item-light {
    --bs-list-group-color: var(--bs-light-text-emphasis);
    --bs-list-group-bg: var(--bs-light-bg-subtle);
    --bs-list-group-border-color: var(--bs-light-border-subtle);
    --bs-list-group-action-hover-color: var(--bs-emphasis-color);
    --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);
    --bs-list-group-action-active-color: var(--bs-emphasis-color);
    --bs-list-group-action-active-bg: var(--bs-light-border-subtle);
    --bs-list-group-active-color: var(--bs-light-bg-subtle);
    --bs-list-group-active-bg: var(--bs-light-text-emphasis);
    --bs-list-group-active-border-color: var(--bs-light-text-emphasis);
}

.list-group-item-dark {
    --bs-list-group-color: var(--bs-dark-text-emphasis);
    --bs-list-group-bg: var(--bs-dark-bg-subtle);
    --bs-list-group-border-color: var(--bs-dark-border-subtle);
    --bs-list-group-action-hover-color: var(--bs-emphasis-color);
    --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);
    --bs-list-group-action-active-color: var(--bs-emphasis-color);
    --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);
    --bs-list-group-active-color: var(--bs-dark-bg-subtle);
    --bs-list-group-active-bg: var(--bs-dark-text-emphasis);
    --bs-list-group-active-border-color: var(--bs-dark-text-emphasis);
}

.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;
    -webkit-user-select: none;
    -moz-user-select: 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-container {
    --bs-toast-zindex: 1090;
    position: absolute;
    z-index: var(--bs-toast-zindex);
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    max-width: 100%;
    pointer-events: none;
}

.toast-container> :not(:last-child) {
    margin-bottom: var(--bs-toast-spacing);
}

.toast-header {
    display: flex;
    align-items: center;
    padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);
    color: var(--bs-toast-header-color);
    background-color: var(--bs-toast-header-bg);
    background-clip: padding-box;
    border-bottom: var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);
    border-top-left-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
    border-top-right-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
}

.toast-header .btn-close {
    margin-right: calc(-0.5 * var(--bs-toast-padding-x));
    margin-left: var(--bs-toast-padding-x);
}

.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: var(--bs-box-shadow-sm);
    --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: var(--bs-box-shadow);
    }

    .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-footer,
.modal-fullscreen .modal-header {
    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-footer,
    .modal-fullscreen-sm-down .modal-header {
        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-footer,
    .modal-fullscreen-md-down .modal-header {
        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-footer,
    .modal-fullscreen-lg-down .modal-header {
        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-footer,
    .modal-fullscreen-xl-down .modal-header {
        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-footer,
    .modal-fullscreen-xxl-down .modal-header {
        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-auto[data-popper-placement^="top"] .tooltip-arrow,
.bs-tooltip-top .tooltip-arrow {
    bottom: calc(-1 * var(--bs-tooltip-arrow-height));
}

.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow::before,
.bs-tooltip-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);
}

.bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow,
.bs-tooltip-end .tooltip-arrow {
    left: calc(-1 * var(--bs-tooltip-arrow-height));
    width: var(--bs-tooltip-arrow-height);
    height: var(--bs-tooltip-arrow-width);
}

.bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow::before,
.bs-tooltip-end .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);
}

.bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow,
.bs-tooltip-bottom .tooltip-arrow {
    top: calc(-1 * var(--bs-tooltip-arrow-height));
}

.bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow::before,
.bs-tooltip-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);
}

.bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow,
.bs-tooltip-start .tooltip-arrow {
    right: calc(-1 * var(--bs-tooltip-arrow-height));
    width: var(--bs-tooltip-arrow-height);
    height: var(--bs-tooltip-arrow-width);
}

.bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow::before,
.bs-tooltip-start .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);
}

.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: var(--bs-box-shadow);
    --bs-popover-header-padding-x: 1rem;
    --bs-popover-header-padding-y: 0.5rem;
    --bs-popover-header-font-size: 1rem;
    --bs-popover-header-color: inherit;
    --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::after,
.popover .popover-arrow::before {
    position: absolute;
    display: block;
    content: "";
    border-color: transparent;
    border-style: solid;
    border-width: 0;
}

.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow,
.bs-popover-top>.popover-arrow {
    bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}

.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::before,
.bs-popover-top>.popover-arrow::after,
.bs-popover-top>.popover-arrow::before {
    border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
}

.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::before,
.bs-popover-top>.popover-arrow::before {
    bottom: 0;
    border-top-color: var(--bs-popover-arrow-border);
}

.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::after,
.bs-popover-top>.popover-arrow::after {
    bottom: var(--bs-popover-border-width);
    border-top-color: var(--bs-popover-bg);
}

.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow,
.bs-popover-end>.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-auto[data-popper-placement^="right"]>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::before,
.bs-popover-end>.popover-arrow::after,
.bs-popover-end>.popover-arrow::before {
    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-auto[data-popper-placement^="right"]>.popover-arrow::before,
.bs-popover-end>.popover-arrow::before {
    left: 0;
    border-right-color: var(--bs-popover-arrow-border);
}

.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::after,
.bs-popover-end>.popover-arrow::after {
    left: var(--bs-popover-border-width);
    border-right-color: var(--bs-popover-bg);
}

.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow,
.bs-popover-bottom>.popover-arrow {
    top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}

.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::before,
.bs-popover-bottom>.popover-arrow::after,
.bs-popover-bottom>.popover-arrow::before {
    border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
}

.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::before,
.bs-popover-bottom>.popover-arrow::before {
    top: 0;
    border-bottom-color: var(--bs-popover-arrow-border);
}

.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::after,
.bs-popover-bottom>.popover-arrow::after {
    top: var(--bs-popover-border-width);
    border-bottom-color: var(--bs-popover-bg);
}

.bs-popover-auto[data-popper-placement^="bottom"] .popover-header::before,
.bs-popover-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);
}

.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow,
.bs-popover-start>.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-auto[data-popper-placement^="left"]>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::before,
.bs-popover-start>.popover-arrow::after,
.bs-popover-start>.popover-arrow::before {
    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-auto[data-popper-placement^="left"]>.popover-arrow::before,
.bs-popover-start>.popover-arrow::before {
    right: 0;
    border-left-color: var(--bs-popover-arrow-border);
}

.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::after,
.bs-popover-start>.popover-arrow::after {
    right: var(--bs-popover-border-width);
    border-left-color: var(--bs-popover-bg);
}

.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%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: transform 0.6s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-item {
        transition: none;
    }
}

.carousel-item-next,
.carousel-item-prev,
.carousel-item.active {
    display: block;
}

.active.carousel-item-end,
.carousel-item-next:not(.carousel-item-start) {
    transform: translateX(100%);
}

.active.carousel-item-start,
.carousel-item-prev:not(.carousel-item-end) {
    transform: translateX(-100%);
}

.carousel-fade .carousel-item {
    opacity: 0;
    transition-property: opacity;
    transform: none;
}

.carousel-fade .carousel-item-next.carousel-item-start,
.carousel-fade .carousel-item-prev.carousel-item-end,
.carousel-fade .carousel-item.active {
    z-index: 1;
    opacity: 1;
}

.carousel-fade .active.carousel-item-end,
.carousel-fade .active.carousel-item-start {
    z-index: 0;
    opacity: 0;
    transition: opacity 0s 0.6s;
}

@media (prefers-reduced-motion: reduce) {

    .carousel-fade .active.carousel-item-end,
    .carousel-fade .active.carousel-item-start {
        transition: none;
    }
}

.carousel-control-next,
.carousel-control-prev {
    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: 0 0;
    border: 0;
    opacity: 0.5;
    transition: opacity 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {

    .carousel-control-next,
    .carousel-control-prev {
        transition: none;
    }
}

.carousel-control-next:focus,
.carousel-control-next:hover,
.carousel-control-prev:focus,
.carousel-control-prev:hover {
    color: #fff;
    text-decoration: none;
    outline: 0;
    opacity: 0.9;
}

.carousel-control-prev {
    left: 0;
}

.carousel-control-next {
    right: 0;
}

.carousel-control-next-icon,
.carousel-control-prev-icon {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 100% 100%;
}

.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-next-icon,
.carousel-dark .carousel-control-prev-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-next-icon,
[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 {
    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-border,
.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);
    }
}

.spinner-border {
    --bs-spinner-width: 2rem;
    --bs-spinner-height: 2rem;
    --bs-spinner-vertical-align: -0.125em;
    --bs-spinner-border-width: 0.25em;
    --bs-spinner-animation-speed: 0.75s;
    --bs-spinner-animation-name: spinner-border;
    border: var(--bs-spinner-border-width) solid currentcolor;
    border-right-color: transparent;
}

.spinner-border-sm {
    --bs-spinner-width: 1rem;
    --bs-spinner-height: 1rem;
    --bs-spinner-border-width: 0.2em;
}

@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-border,
    .spinner-grow {
        --bs-spinner-animation-speed: 1.5s;
    }
}

.offcanvas,
.offcanvas-lg,
.offcanvas-md,
.offcanvas-sm,
.offcanvas-xl,
.offcanvas-xxl {
    --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: var(--bs-box-shadow-sm);
    --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%);
    }

    .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%);
    }

    .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%);
    }

    .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%);
    }

    .offcanvas-sm.show:not(.hiding),
    .offcanvas-sm.showing {
        transform: none;
    }

    .offcanvas-sm.hiding,
    .offcanvas-sm.show,
    .offcanvas-sm.showing {
        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%);
    }

    .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%);
    }

    .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%);
    }

    .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%);
    }

    .offcanvas-md.show:not(.hiding),
    .offcanvas-md.showing {
        transform: none;
    }

    .offcanvas-md.hiding,
    .offcanvas-md.show,
    .offcanvas-md.showing {
        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%);
    }

    .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%);
    }

    .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%);
    }

    .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%);
    }

    .offcanvas-lg.show:not(.hiding),
    .offcanvas-lg.showing {
        transform: none;
    }

    .offcanvas-lg.hiding,
    .offcanvas-lg.show,
    .offcanvas-lg.showing {
        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%);
    }

    .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%);
    }

    .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%);
    }

    .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%);
    }

    .offcanvas-xl.show:not(.hiding),
    .offcanvas-xl.showing {
        transform: none;
    }

    .offcanvas-xl.hiding,
    .offcanvas-xl.show,
    .offcanvas-xl.showing {
        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%);
    }

    .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%);
    }

    .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%);
    }

    .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%);
    }

    .offcanvas-xxl.show:not(.hiding),
    .offcanvas-xxl.showing {
        transform: none;
    }

    .offcanvas-xxl.hiding,
    .offcanvas-xxl.show,
    .offcanvas-xxl.showing {
        visibility: visible;
    }
}

@media (min-width: 1440px) {
    .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.show:not(.hiding),
.offcanvas.showing {
    transform: none;
}

.offcanvas.hiding,
.offcanvas.show,
.offcanvas.showing {
    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: "";
}

.placeholder-xs {
    min-height: 0.6em;
}

.placeholder-sm {
    min-height: 0.8em;
}

.placeholder-lg {
    min-height: 1.2em;
}

.placeholder-glow .placeholder {
    animation: placeholder-glow 2s ease-in-out infinite;
}

@keyframes placeholder-glow {
    50% {
        opacity: 0.2;
    }
}

.placeholder-wave {
    -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
    mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
    -webkit-mask-size: 200% 100%;
    mask-size: 200% 100%;
    animation: placeholder-wave 2s linear infinite;
}

@keyframes placeholder-wave {
    100% {
        -webkit-mask-position: -200% 0%;
        mask-position: -200% 0%;
    }
}

.clearfix::after {
    display: block;
    clear: both;
    content: "";
}

.text-bg-primary {
    color: #fff !important;
    background-color: RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-secondary {
    color: #fff !important;
    background-color: RGBA(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-success {
    color: #fff !important;
    background-color: RGBA(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-info {
    color: #000 !important;
    background-color: RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-warning {
    color: #000 !important;
    background-color: RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-danger {
    color: #fff !important;
    background-color: RGBA(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-light {
    color: #000 !important;
    background-color: RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-dark {
    color: #fff !important;
    background-color: RGBA(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

.link-primary {
    color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.link-primary:focus,
.link-primary:hover {
    color: RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;
}

.link-secondary {
    color: RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.link-secondary:focus,
.link-secondary:hover {
    color: RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;
}

.link-success {
    color: RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.link-success:focus,
.link-success:hover {
    color: RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;
}

.link-info {
    color: RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.link-info:focus,
.link-info:hover {
    color: RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;
}

.link-warning {
    color: RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.link-warning:focus,
.link-warning:hover {
    color: RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;
}

.link-danger {
    color: RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.link-danger:focus,
.link-danger:hover {
    color: RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;
}

.link-light {
    color: RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.link-light:focus,
.link-light:hover {
    color: RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;
}

.link-dark {
    color: RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.link-dark:focus,
.link-dark:hover {
    color: RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;
}

.link-body-emphasis {
    color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.link-body-emphasis:focus,
.link-body-emphasis:hover {
    color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;
    -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb),
            var(--bs-link-underline-opacity, 0.75)) !important;
    text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;
}

.focus-ring:focus {
    outline: 0;
    box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);
}

.icon-link {
    display: inline-flex;
    gap: 0.375rem;
    align-items: center;
    -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
    text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
    text-underline-offset: 0.25em;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.icon-link>.bi {
    flex-shrink: 0;
    width: 1em;
    height: 1em;
    fill: currentcolor;
    transition: 0.2s ease-in-out transform;
}

@media (prefers-reduced-motion: reduce) {
    .icon-link>.bi {
        transition: none;
    }
}

.icon-link-hover:focus-visible>.bi,
.icon-link-hover:hover>.bi {
    transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));
}

.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-1x1 {
    --bs-aspect-ratio: 100%;
}

.ratio-4x3 {
    --bs-aspect-ratio: 75%;
}

.ratio-16x9 {
    --bs-aspect-ratio: 56.25%;
}

.ratio-21x9 {
    --bs-aspect-ratio: 42.8571428571%;
}

.fixed-top {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
}

.fixed-bottom {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1030;
}

.sticky-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
}

.sticky-bottom {
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    z-index: 1020;
}

@media (min-width: 576px) {
    .sticky-sm-top {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-sm-bottom {
        position: -webkit-sticky;
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

@media (min-width: 768px) {
    .sticky-md-top {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-md-bottom {
        position: -webkit-sticky;
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

@media (min-width: 992px) {
    .sticky-lg-top {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-lg-bottom {
        position: -webkit-sticky;
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

@media (min-width: 1200px) {
    .sticky-xl-top {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-xl-bottom {
        position: -webkit-sticky;
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

@media (min-width: 1440px) {
    .sticky-xxl-top {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-xxl-bottom {
        position: -webkit-sticky;
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

.hstack {
    display: flex;
    flex-direction: row;
    align-items: center;
    align-self: stretch;
}

.vstack {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-self: stretch;
}

.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
    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-focusable:not(:focus):not(:focus-within):not(caption),
.visually-hidden:not(caption) {
    position: absolute !important;
}

.stretched-link::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    content: "";
}

.text-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.vr {
    display: inline-block;
    align-self: stretch;
    width: var(--bs-border-width);
    min-height: 1em;
    background-color: currentcolor;
    opacity: 0.25;
}

.align-baseline {
    vertical-align: baseline !important;
}

.align-top {
    vertical-align: top !important;
}

.align-middle {
    vertical-align: middle !important;
}

.align-bottom {
    vertical-align: bottom !important;
}

.align-text-bottom {
    vertical-align: text-bottom !important;
}

.align-text-top {
    vertical-align: text-top !important;
}

.float-start {
    float: left !important;
}

.float-end {
    float: right !important;
}

.float-none {
    float: none !important;
}

.object-fit-contain {
    -o-object-fit: contain !important;
    object-fit: contain !important;
}

.object-fit-cover {
    -o-object-fit: cover !important;
    object-fit: cover !important;
}

.object-fit-fill {
    -o-object-fit: fill !important;
    object-fit: fill !important;
}

.object-fit-scale {
    -o-object-fit: scale-down !important;
    object-fit: scale-down !important;
}

.object-fit-none {
    -o-object-fit: none !important;
    object-fit: none !important;
}

.opacity-0 {
    opacity: 0 !important;
}

.opacity-25 {
    opacity: 0.25 !important;
}

.opacity-50 {
    opacity: 0.5 !important;
}

.opacity-75 {
    opacity: 0.75 !important;
}

.opacity-100 {
    opacity: 1 !important;
}

.overflow-auto {
    overflow: auto !important;
}

.overflow-hidden {
    overflow: hidden !important;
}

.overflow-visible {
    overflow: visible !important;
}

.overflow-scroll {
    overflow: scroll !important;
}

.overflow-x-auto {
    overflow-x: auto !important;
}

.overflow-x-hidden {
    overflow-x: hidden !important;
}

.overflow-x-visible {
    overflow-x: visible !important;
}

.overflow-x-scroll {
    overflow-x: scroll !important;
}

.overflow-y-auto {
    overflow-y: auto !important;
}

.overflow-y-hidden {
    overflow-y: hidden !important;
}

.overflow-y-visible {
    overflow-y: visible !important;
}

.overflow-y-scroll {
    overflow-y: scroll !important;
}

.d-inline {
    display: inline !important;
}

.d-inline-block {
    display: inline-block !important;
}

.d-block {
    display: block !important;
}

.d-grid {
    display: grid !important;
}

.d-inline-grid {
    display: inline-grid !important;
}

.d-table {
    display: table !important;
}

.d-table-row {
    display: table-row !important;
}

.d-table-cell {
    display: table-cell !important;
}

.d-flex {
    display: flex !important;
}

.d-inline-flex {
    display: inline-flex !important;
}

.d-none {
    display: none !important;
}

.shadow {
    box-shadow: var(--bs-box-shadow) !important;
}

.shadow-sm {
    box-shadow: var(--bs-box-shadow-sm) !important;
}

.shadow-lg {
    box-shadow: var(--bs-box-shadow-lg) !important;
}

.shadow-none {
    box-shadow: none !important;
}

.focus-ring-primary {
    --bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-secondary {
    --bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-success {
    --bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-info {
    --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-warning {
    --bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-danger {
    --bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-light {
    --bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-dark {
    --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity));
}

.position-static {
    position: static !important;
}

.position-relative {
    position: relative !important;
}

.position-absolute {
    position: absolute !important;
}

.position-fixed {
    position: fixed !important;
}

.position-sticky {
    position: -webkit-sticky !important;
    position: sticky !important;
}

.top-0 {
    top: 0 !important;
}

.top-50 {
    top: 50% !important;
}

.top-100 {
    top: 100% !important;
}

.bottom-0 {
    bottom: 0 !important;
}

.bottom-50 {
    bottom: 50% !important;
}

.bottom-100 {
    bottom: 100% !important;
}

.start-0 {
    left: 0 !important;
}

.start-50 {
    left: 50% !important;
}

.start-100 {
    left: 100% !important;
}

.end-0 {
    right: 0 !important;
}

.end-50 {
    right: 50% !important;
}

.end-100 {
    right: 100% !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-top {
    border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-top-0 {
    border-top: 0 !important;
}

.border-end {
    border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-end-0 {
    border-right: 0 !important;
}

.border-bottom {
    border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-bottom-0 {
    border-bottom: 0 !important;
}

.border-start {
    border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-start-0 {
    border-left: 0 !important;
}

.border-primary {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;
}

.border-secondary {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;
}

.border-success {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;
}

.border-info {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;
}

.border-warning {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important;
}

.border-danger {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;
}

.border-light {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;
}

.border-dark {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;
}

.border-black {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important;
}

.border-white {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important;
}

.border-primary-subtle {
    border-color: var(--bs-primary-border-subtle) !important;
}

.border-secondary-subtle {
    border-color: var(--bs-secondary-border-subtle) !important;
}

.border-success-subtle {
    border-color: var(--bs-success-border-subtle) !important;
}

.border-info-subtle {
    border-color: var(--bs-info-border-subtle) !important;
}

.border-warning-subtle {
    border-color: var(--bs-warning-border-subtle) !important;
}

.border-danger-subtle {
    border-color: var(--bs-danger-border-subtle) !important;
}

.border-light-subtle {
    border-color: var(--bs-light-border-subtle) !important;
}

.border-dark-subtle {
    border-color: var(--bs-dark-border-subtle) !important;
}

.border-1 {
    border-width: 1px !important;
}

.border-2 {
    border-width: 2px !important;
}

.border-3 {
    border-width: 3px !important;
}

.border-4 {
    border-width: 4px !important;
}

.border-5 {
    border-width: 5px !important;
}

.border-opacity-10 {
    --bs-border-opacity: 0.1;
}

.border-opacity-25 {
    --bs-border-opacity: 0.25;
}

.border-opacity-50 {
    --bs-border-opacity: 0.5;
}

.border-opacity-75 {
    --bs-border-opacity: 0.75;
}

.border-opacity-100 {
    --bs-border-opacity: 1;
}

.w-25 {
    width: 25% !important;
}

.w-50 {
    width: 50% !important;
}

.w-75 {
    width: 75% !important;
}

.w-100 {
    width: 100% !important;
}

.w-auto {
    width: auto !important;
}

.mw-100 {
    max-width: 100% !important;
}

.vw-100 {
    width: 100vw !important;
}

.min-vw-100 {
    min-width: 100vw !important;
}

.h-25 {
    height: 25% !important;
}

.h-50 {
    height: 50% !important;
}

.h-75 {
    height: 75% !important;
}

.h-100 {
    height: 100% !important;
}

.h-auto {
    height: auto !important;
}

.mh-100 {
    max-height: 100% !important;
}

.vh-100 {
    height: 100vh !important;
}

.min-vh-100 {
    min-height: 100vh !important;
}

.flex-fill {
    flex: 1 1 auto !important;
}

.flex-row {
    flex-direction: row !important;
}

.flex-column {
    flex-direction: column !important;
}

.flex-row-reverse {
    flex-direction: row-reverse !important;
}

.flex-column-reverse {
    flex-direction: column-reverse !important;
}

.flex-grow-0 {
    flex-grow: 0 !important;
}

.flex-grow-1 {
    flex-grow: 1 !important;
}

.flex-shrink-0 {
    flex-shrink: 0 !important;
}

.flex-shrink-1 {
    flex-shrink: 1 !important;
}

.flex-wrap {
    flex-wrap: wrap !important;
}

.flex-nowrap {
    flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse !important;
}

.justify-content-start {
    justify-content: flex-start !important;
}

.justify-content-end {
    justify-content: flex-end !important;
}

.justify-content-center {
    justify-content: center !important;
}

.justify-content-between {
    justify-content: space-between !important;
}

.justify-content-around {
    justify-content: space-around !important;
}

.justify-content-evenly {
    justify-content: space-evenly !important;
}

.align-items-start {
    align-items: flex-start !important;
}

.align-items-end {
    align-items: flex-end !important;
}

.align-items-center {
    align-items: center !important;
}

.align-items-baseline {
    align-items: baseline !important;
}

.align-items-stretch {
    align-items: stretch !important;
}

.align-content-start {
    align-content: flex-start !important;
}

.align-content-end {
    align-content: flex-end !important;
}

.align-content-center {
    align-content: center !important;
}

.align-content-between {
    align-content: space-between !important;
}

.align-content-around {
    align-content: space-around !important;
}

.align-content-stretch {
    align-content: stretch !important;
}

.align-self-auto {
    align-self: auto !important;
}

.align-self-start {
    align-self: flex-start !important;
}

.align-self-end {
    align-self: flex-end !important;
}

.align-self-center {
    align-self: center !important;
}

.align-self-baseline {
    align-self: baseline !important;
}

.align-self-stretch {
    align-self: stretch !important;
}

.order-first {
    order: -1 !important;
}

.order-0 {
    order: 0 !important;
}

.order-1 {
    order: 1 !important;
}

.order-2 {
    order: 2 !important;
}

.order-3 {
    order: 3 !important;
}

.order-4 {
    order: 4 !important;
}

.order-5 {
    order: 5 !important;
}

.order-last {
    order: 6 !important;
}

.m-0 {
    margin: 0 !important;
}

.m-1 {
    margin: 0.25rem !important;
}

.m-2 {
    margin: 0.5rem !important;
}

.m-3 {
    margin: 1rem !important;
}

.m-4 {
    margin: 1.5rem !important;
}

.m-5 {
    margin: 3rem !important;
}

.m-auto {
    margin: auto !important;
}

.mx-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.mx-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
}

.mx-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
}

.mx-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
}

.mx-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
}

.mx-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
}

.mx-auto {
    margin-right: auto !important;
    margin-left: auto !important;
}

.my-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.my-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
}

.my-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
}

.my-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
}

.my-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
}

.my-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
}

.my-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
}

.mt-0 {
    margin-top: 0 !important;
}

.mt-1 {
    margin-top: 0.25rem !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;
}

.mt-auto {
    margin-top: auto !important;
}

.me-0 {
    margin-right: 0 !important;
}

.me-1 {
    margin-right: 0.25rem !important;
}

.me-2 {
    margin-right: 0.5rem !important;
}

.me-3 {
    margin-right: 1rem !important;
}

.me-4 {
    margin-right: 1.5rem !important;
}

.me-5 {
    margin-right: 3rem !important;
}

.me-auto {
    margin-right: auto !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.mb-1 {
    margin-bottom: 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;
}

.mb-auto {
    margin-bottom: auto !important;
}

.ms-0 {
    margin-left: 0 !important;
}

.ms-1 {
    margin-left: 0.25rem !important;
}

.ms-2 {
    margin-left: 0.5rem !important;
}

.ms-3 {
    margin-left: 1rem !important;
}

.ms-4 {
    margin-left: 1.5rem !important;
}

.ms-5 {
    margin-left: 3rem !important;
}

.ms-auto {
    margin-left: auto !important;
}

.p-0 {
    padding: 0 !important;
}

.p-1 {
    padding: 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;
}

.px-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.px-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
}

.px-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
}

.px-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
}

.px-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
}

.px-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
}

.py-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.py-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
}

.py-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
}

.py-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

.py-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
}

.py-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
}

.pt-0 {
    padding-top: 0 !important;
}

.pt-1 {
    padding-top: 0.25rem !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-0 {
    padding-right: 0 !important;
}

.pe-1 {
    padding-right: 0.25rem !important;
}

.pe-2 {
    padding-right: 0.5rem !important;
}

.pe-3 {
    padding-right: 1rem !important;
}

.pe-4 {
    padding-right: 1.5rem !important;
}

.pe-5 {
    padding-right: 3rem !important;
}

.pb-0 {
    padding-bottom: 0 !important;
}

.pb-1 {
    padding-bottom: 0.25rem !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-1 {
    padding-left: 0.25rem !important;
}

.ps-2 {
    padding-left: 0.5rem !important;
}

.ps-3 {
    padding-left: 1rem !important;
}

.ps-4 {
    padding-left: 1.5rem !important;
}

.ps-5 {
    padding-left: 3rem !important;
}

.gap-0 {
    gap: 0 !important;
}

.gap-1 {
    gap: 0.25rem !important;
}

.gap-2 {
    gap: 0.5rem !important;
}

.gap-3 {
    gap: 1rem !important;
}

.gap-4 {
    gap: 1.5rem !important;
}

.gap-5 {
    gap: 3rem !important;
}

.row-gap-0 {
    row-gap: 0 !important;
}

.row-gap-1 {
    row-gap: 0.25rem !important;
}

.row-gap-2 {
    row-gap: 0.5rem !important;
}

.row-gap-3 {
    row-gap: 1rem !important;
}

.row-gap-4 {
    row-gap: 1.5rem !important;
}

.row-gap-5 {
    row-gap: 3rem !important;
}

.column-gap-0 {
    -moz-column-gap: 0 !important;
    column-gap: 0 !important;
}

.column-gap-1 {
    -moz-column-gap: 0.25rem !important;
    column-gap: 0.25rem !important;
}

.column-gap-2 {
    -moz-column-gap: 0.5rem !important;
    column-gap: 0.5rem !important;
}

.column-gap-3 {
    -moz-column-gap: 1rem !important;
    column-gap: 1rem !important;
}

.column-gap-4 {
    -moz-column-gap: 1.5rem !important;
    column-gap: 1.5rem !important;
}

.column-gap-5 {
    -moz-column-gap: 3rem !important;
    column-gap: 3rem !important;
}

.font-monospace {
    font-family: var(--bs-font-monospace) !important;
}

.fs-1 {
    font-size: calc(1.375rem + 1.5vw) !important;
}

.fs-2 {
    font-size: calc(1.325rem + 0.9vw) !important;
}

.fs-3 {
    font-size: calc(1.3rem + 0.6vw) !important;
}

.fs-4 {
    font-size: calc(1.275rem + 0.3vw) !important;
}

.fs-5 {
    font-size: 1.25rem !important;
}

.fs-6 {
    font-size: 1rem !important;
}

.fst-italic {
    font-style: italic !important;
}

.fst-normal {
    font-style: normal !important;
}

.fw-lighter {
    font-weight: lighter !important;
}

.fw-light {
    font-weight: 300 !important;
}

.fw-normal {
    font-weight: 400 !important;
}

.fw-medium {
    font-weight: 500 !important;
}

.fw-semibold {
    font-weight: 600 !important;
}

.fw-bold {
    font-weight: 700 !important;
}

.fw-bolder {
    font-weight: bolder !important;
}

.lh-1 {
    line-height: 1 !important;
}

.lh-sm {
    line-height: 1.25 !important;
}

.lh-base {
    line-height: 1.5 !important;
}

.lh-lg {
    line-height: 2 !important;
}

.text-start {
    text-align: left !important;
}

.text-end {
    text-align: right !important;
}

.text-center {
    text-align: center !important;
}

.text-decoration-none {
    text-decoration: none !important;
}

.text-decoration-underline {
    text-decoration: underline !important;
}

.text-decoration-line-through {
    text-decoration: line-through !important;
}

.text-lowercase {
    text-transform: lowercase !important;
}

.text-uppercase {
    text-transform: uppercase !important;
}

.text-capitalize {
    text-transform: capitalize !important;
}

.text-wrap {
    white-space: normal !important;
}

.text-nowrap {
    white-space: nowrap !important;
}

.text-break {
    word-wrap: break-word !important;
    word-break: break-word !important;
}

.text-primary {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
}

.text-secondary {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-secondary-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-black {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;
}

.text-white {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
}

.text-body {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;
}

.text-muted {
    --bs-text-opacity: 1;
    color: var(--bs-secondary-color) !important;
}

.text-black-50 {
    --bs-text-opacity: 1;
    color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
    --bs-text-opacity: 1;
    color: rgba(255, 255, 255, 0.5) !important;
}

.text-body-secondary {
    --bs-text-opacity: 1;
    color: var(--bs-secondary-color) !important;
}

.text-body-tertiary {
    --bs-text-opacity: 1;
    color: var(--bs-tertiary-color) !important;
}

.text-body-emphasis {
    --bs-text-opacity: 1;
    color: var(--bs-emphasis-color) !important;
}

.text-reset {
    --bs-text-opacity: 1;
    color: inherit !important;
}

.text-opacity-25 {
    --bs-text-opacity: 0.25;
}

.text-opacity-50 {
    --bs-text-opacity: 0.5;
}

.text-opacity-75 {
    --bs-text-opacity: 0.75;
}

.text-opacity-100 {
    --bs-text-opacity: 1;
}

.text-primary-emphasis {
    color: var(--bs-primary-text-emphasis) !important;
}

.text-secondary-emphasis {
    color: var(--bs-secondary-text-emphasis) !important;
}

.text-success-emphasis {
    color: var(--bs-success-text-emphasis) !important;
}

.text-info-emphasis {
    color: var(--bs-info-text-emphasis) !important;
}

.text-warning-emphasis {
    color: var(--bs-warning-text-emphasis) !important;
}

.text-danger-emphasis {
    color: var(--bs-danger-text-emphasis) !important;
}

.text-light-emphasis {
    color: var(--bs-light-text-emphasis) !important;
}

.text-dark-emphasis {
    color: var(--bs-dark-text-emphasis) !important;
}

.link-opacity-10 {
    --bs-link-opacity: 0.1;
}

.link-opacity-10-hover:hover {
    --bs-link-opacity: 0.1;
}

.link-opacity-25 {
    --bs-link-opacity: 0.25;
}

.link-opacity-25-hover:hover {
    --bs-link-opacity: 0.25;
}

.link-opacity-50 {
    --bs-link-opacity: 0.5;
}

.link-opacity-50-hover:hover {
    --bs-link-opacity: 0.5;
}

.link-opacity-75 {
    --bs-link-opacity: 0.75;
}

.link-opacity-75-hover:hover {
    --bs-link-opacity: 0.75;
}

.link-opacity-100 {
    --bs-link-opacity: 1;
}

.link-opacity-100-hover:hover {
    --bs-link-opacity: 1;
}

.link-offset-1 {
    text-underline-offset: 0.125em !important;
}

.link-offset-1-hover:hover {
    text-underline-offset: 0.125em !important;
}

.link-offset-2 {
    text-underline-offset: 0.25em !important;
}

.link-offset-2-hover:hover {
    text-underline-offset: 0.25em !important;
}

.link-offset-3 {
    text-underline-offset: 0.375em !important;
}

.link-offset-3-hover:hover {
    text-underline-offset: 0.375em !important;
}

.link-underline-primary {
    --bs-link-underline-opacity: 1;
    -webkit-text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;
    text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-secondary {
    --bs-link-underline-opacity: 1;
    -webkit-text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;
    text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-success {
    --bs-link-underline-opacity: 1;
    -webkit-text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;
    text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-info {
    --bs-link-underline-opacity: 1;
    -webkit-text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;
    text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-warning {
    --bs-link-underline-opacity: 1;
    -webkit-text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;
    text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-danger {
    --bs-link-underline-opacity: 1;
    -webkit-text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;
    text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-light {
    --bs-link-underline-opacity: 1;
    -webkit-text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;
    text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-dark {
    --bs-link-underline-opacity: 1;
    -webkit-text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;
    text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline {
    --bs-link-underline-opacity: 1;
    -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.link-underline-opacity-0 {
    --bs-link-underline-opacity: 0;
}

.link-underline-opacity-0-hover:hover {
    --bs-link-underline-opacity: 0;
}

.link-underline-opacity-10 {
    --bs-link-underline-opacity: 0.1;
}

.link-underline-opacity-10-hover:hover {
    --bs-link-underline-opacity: 0.1;
}

.link-underline-opacity-25 {
    --bs-link-underline-opacity: 0.25;
}

.link-underline-opacity-25-hover:hover {
    --bs-link-underline-opacity: 0.25;
}

.link-underline-opacity-50 {
    --bs-link-underline-opacity: 0.5;
}

.link-underline-opacity-50-hover:hover {
    --bs-link-underline-opacity: 0.5;
}

.link-underline-opacity-75 {
    --bs-link-underline-opacity: 0.75;
}

.link-underline-opacity-75-hover:hover {
    --bs-link-underline-opacity: 0.75;
}

.link-underline-opacity-100 {
    --bs-link-underline-opacity: 1;
}

.link-underline-opacity-100-hover:hover {
    --bs-link-underline-opacity: 1;
}

.bg-primary {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-secondary {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-secondary-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-light {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-light-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-black {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;
}

.bg-white {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;
}

.bg-body {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important;
}

.bg-transparent {
    --bs-bg-opacity: 1;
    background-color: transparent !important;
}

.bg-body-secondary {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important;
}

.bg-body-tertiary {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important;
}

.bg-opacity-10 {
    --bs-bg-opacity: 0.1;
}

.bg-opacity-25 {
    --bs-bg-opacity: 0.25;
}

.bg-opacity-50 {
    --bs-bg-opacity: 0.5;
}

.bg-opacity-75 {
    --bs-bg-opacity: 0.75;
}

.bg-opacity-100 {
    --bs-bg-opacity: 1;
}

.bg-primary-subtle {
    background-color: var(--bs-primary-bg-subtle) !important;
}

.bg-secondary-subtle {
    background-color: var(--bs-secondary-bg-subtle) !important;
}

.bg-success-subtle {
    background-color: var(--bs-success-bg-subtle) !important;
}

.bg-info-subtle {
    background-color: var(--bs-info-bg-subtle) !important;
}

.bg-warning-subtle {
    background-color: var(--bs-warning-bg-subtle) !important;
}

.bg-danger-subtle {
    background-color: var(--bs-danger-bg-subtle) !important;
}

.bg-light-subtle {
    background-color: var(--bs-light-bg-subtle) !important;
}

.bg-dark-subtle {
    background-color: var(--bs-dark-bg-subtle) !important;
}

.bg-gradient {
    background-image: var(--bs-gradient) !important;
}

.user-select-all {
    -webkit-user-select: all !important;
    -moz-user-select: all !important;
    user-select: all !important;
}

.user-select-auto {
    -webkit-user-select: auto !important;
    -moz-user-select: auto !important;
    user-select: auto !important;
}

.user-select-none {
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    user-select: none !important;
}

.pe-none {
    pointer-events: none !important;
}

.pe-auto {
    pointer-events: auto !important;
}

.rounded {
    border-radius: var(--bs-border-radius) !important;
}

.rounded-0 {
    border-radius: 0 !important;
}

.rounded-1 {
    border-radius: var(--bs-border-radius-sm) !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-circle {
    border-radius: 50% !important;
}

.rounded-pill {
    border-radius: var(--bs-border-radius-pill) !important;
}

.rounded-top {
    border-top-left-radius: var(--bs-border-radius) !important;
    border-top-right-radius: var(--bs-border-radius) !important;
}

.rounded-top-0 {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

.rounded-top-1 {
    border-top-left-radius: var(--bs-border-radius-sm) !important;
    border-top-right-radius: var(--bs-border-radius-sm) !important;
}

.rounded-top-2 {
    border-top-left-radius: var(--bs-border-radius) !important;
    border-top-right-radius: var(--bs-border-radius) !important;
}

.rounded-top-3 {
    border-top-left-radius: var(--bs-border-radius-lg) !important;
    border-top-right-radius: var(--bs-border-radius-lg) !important;
}

.rounded-top-4 {
    border-top-left-radius: var(--bs-border-radius-xl) !important;
    border-top-right-radius: var(--bs-border-radius-xl) !important;
}

.rounded-top-5 {
    border-top-left-radius: var(--bs-border-radius-xxl) !important;
    border-top-right-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-top-circle {
    border-top-left-radius: 50% !important;
    border-top-right-radius: 50% !important;
}

.rounded-top-pill {
    border-top-left-radius: var(--bs-border-radius-pill) !important;
    border-top-right-radius: var(--bs-border-radius-pill) !important;
}

.rounded-end {
    border-top-right-radius: var(--bs-border-radius) !important;
    border-bottom-right-radius: var(--bs-border-radius) !important;
}

.rounded-end-0 {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

.rounded-end-1 {
    border-top-right-radius: var(--bs-border-radius-sm) !important;
    border-bottom-right-radius: var(--bs-border-radius-sm) !important;
}

.rounded-end-2 {
    border-top-right-radius: var(--bs-border-radius) !important;
    border-bottom-right-radius: var(--bs-border-radius) !important;
}

.rounded-end-3 {
    border-top-right-radius: var(--bs-border-radius-lg) !important;
    border-bottom-right-radius: var(--bs-border-radius-lg) !important;
}

.rounded-end-4 {
    border-top-right-radius: var(--bs-border-radius-xl) !important;
    border-bottom-right-radius: var(--bs-border-radius-xl) !important;
}

.rounded-end-5 {
    border-top-right-radius: var(--bs-border-radius-xxl) !important;
    border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-end-circle {
    border-top-right-radius: 50% !important;
    border-bottom-right-radius: 50% !important;
}

.rounded-end-pill {
    border-top-right-radius: var(--bs-border-radius-pill) !important;
    border-bottom-right-radius: var(--bs-border-radius-pill) !important;
}

.rounded-bottom {
    border-bottom-right-radius: var(--bs-border-radius) !important;
    border-bottom-left-radius: var(--bs-border-radius) !important;
}

.rounded-bottom-0 {
    border-bottom-right-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}

.rounded-bottom-1 {
    border-bottom-right-radius: var(--bs-border-radius-sm) !important;
    border-bottom-left-radius: var(--bs-border-radius-sm) !important;
}

.rounded-bottom-2 {
    border-bottom-right-radius: var(--bs-border-radius) !important;
    border-bottom-left-radius: var(--bs-border-radius) !important;
}

.rounded-bottom-3 {
    border-bottom-right-radius: var(--bs-border-radius-lg) !important;
    border-bottom-left-radius: var(--bs-border-radius-lg) !important;
}

.rounded-bottom-4 {
    border-bottom-right-radius: var(--bs-border-radius-xl) !important;
    border-bottom-left-radius: var(--bs-border-radius-xl) !important;
}

.rounded-bottom-5 {
    border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
    border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-bottom-circle {
    border-bottom-right-radius: 50% !important;
    border-bottom-left-radius: 50% !important;
}

.rounded-bottom-pill {
    border-bottom-right-radius: var(--bs-border-radius-pill) !important;
    border-bottom-left-radius: var(--bs-border-radius-pill) !important;
}

.rounded-start {
    border-bottom-left-radius: var(--bs-border-radius) !important;
    border-top-left-radius: var(--bs-border-radius) !important;
}

.rounded-start-0 {
    border-bottom-left-radius: 0 !important;
    border-top-left-radius: 0 !important;
}

.rounded-start-1 {
    border-bottom-left-radius: var(--bs-border-radius-sm) !important;
    border-top-left-radius: var(--bs-border-radius-sm) !important;
}

.rounded-start-2 {
    border-bottom-left-radius: var(--bs-border-radius) !important;
    border-top-left-radius: var(--bs-border-radius) !important;
}

.rounded-start-3 {
    border-bottom-left-radius: var(--bs-border-radius-lg) !important;
    border-top-left-radius: var(--bs-border-radius-lg) !important;
}

.rounded-start-4 {
    border-bottom-left-radius: var(--bs-border-radius-xl) !important;
    border-top-left-radius: var(--bs-border-radius-xl) !important;
}

.rounded-start-5 {
    border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
    border-top-left-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-start-circle {
    border-bottom-left-radius: 50% !important;
    border-top-left-radius: 50% !important;
}

.rounded-start-pill {
    border-bottom-left-radius: var(--bs-border-radius-pill) !important;
    border-top-left-radius: var(--bs-border-radius-pill) !important;
}

.visible {
    visibility: visible !important;
}

.invisible {
    visibility: hidden !important;
}

.z-n1 {
    z-index: -1 !important;
}

.z-0 {
    z-index: 0 !important;
}

.z-1 {
    z-index: 1 !important;
}

.z-2 {
    z-index: 2 !important;
}

.z-3 {
    z-index: 3 !important;
}

@media (min-width: 576px) {
    .float-sm-start {
        float: left !important;
    }

    .float-sm-end {
        float: right !important;
    }

    .float-sm-none {
        float: none !important;
    }

    .object-fit-sm-contain {
        -o-object-fit: contain !important;
        object-fit: contain !important;
    }

    .object-fit-sm-cover {
        -o-object-fit: cover !important;
        object-fit: cover !important;
    }

    .object-fit-sm-fill {
        -o-object-fit: fill !important;
        object-fit: fill !important;
    }

    .object-fit-sm-scale {
        -o-object-fit: scale-down !important;
        object-fit: scale-down !important;
    }

    .object-fit-sm-none {
        -o-object-fit: none !important;
        object-fit: none !important;
    }

    .d-sm-inline {
        display: inline !important;
    }

    .d-sm-inline-block {
        display: inline-block !important;
    }

    .d-sm-block {
        display: block !important;
    }

    .d-sm-grid {
        display: grid !important;
    }

    .d-sm-inline-grid {
        display: inline-grid !important;
    }

    .d-sm-table {
        display: table !important;
    }

    .d-sm-table-row {
        display: table-row !important;
    }

    .d-sm-table-cell {
        display: table-cell !important;
    }

    .d-sm-flex {
        display: flex !important;
    }

    .d-sm-inline-flex {
        display: inline-flex !important;
    }

    .d-sm-none {
        display: none !important;
    }

    .flex-sm-fill {
        flex: 1 1 auto !important;
    }

    .flex-sm-row {
        flex-direction: row !important;
    }

    .flex-sm-column {
        flex-direction: column !important;
    }

    .flex-sm-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-sm-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-sm-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-sm-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-sm-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-sm-shrink-1 {
        flex-shrink: 1 !important;
    }

    .flex-sm-wrap {
        flex-wrap: wrap !important;
    }

    .flex-sm-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-sm-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .justify-content-sm-start {
        justify-content: flex-start !important;
    }

    .justify-content-sm-end {
        justify-content: flex-end !important;
    }

    .justify-content-sm-center {
        justify-content: center !important;
    }

    .justify-content-sm-between {
        justify-content: space-between !important;
    }

    .justify-content-sm-around {
        justify-content: space-around !important;
    }

    .justify-content-sm-evenly {
        justify-content: space-evenly !important;
    }

    .align-items-sm-start {
        align-items: flex-start !important;
    }

    .align-items-sm-end {
        align-items: flex-end !important;
    }

    .align-items-sm-center {
        align-items: center !important;
    }

    .align-items-sm-baseline {
        align-items: baseline !important;
    }

    .align-items-sm-stretch {
        align-items: stretch !important;
    }

    .align-content-sm-start {
        align-content: flex-start !important;
    }

    .align-content-sm-end {
        align-content: flex-end !important;
    }

    .align-content-sm-center {
        align-content: center !important;
    }

    .align-content-sm-between {
        align-content: space-between !important;
    }

    .align-content-sm-around {
        align-content: space-around !important;
    }

    .align-content-sm-stretch {
        align-content: stretch !important;
    }

    .align-self-sm-auto {
        align-self: auto !important;
    }

    .align-self-sm-start {
        align-self: flex-start !important;
    }

    .align-self-sm-end {
        align-self: flex-end !important;
    }

    .align-self-sm-center {
        align-self: center !important;
    }

    .align-self-sm-baseline {
        align-self: baseline !important;
    }

    .align-self-sm-stretch {
        align-self: stretch !important;
    }

    .order-sm-first {
        order: -1 !important;
    }

    .order-sm-0 {
        order: 0 !important;
    }

    .order-sm-1 {
        order: 1 !important;
    }

    .order-sm-2 {
        order: 2 !important;
    }

    .order-sm-3 {
        order: 3 !important;
    }

    .order-sm-4 {
        order: 4 !important;
    }

    .order-sm-5 {
        order: 5 !important;
    }

    .order-sm-last {
        order: 6 !important;
    }

    .m-sm-0 {
        margin: 0 !important;
    }

    .m-sm-1 {
        margin: 0.25rem !important;
    }

    .m-sm-2 {
        margin: 0.5rem !important;
    }

    .m-sm-3 {
        margin: 1rem !important;
    }

    .m-sm-4 {
        margin: 1.5rem !important;
    }

    .m-sm-5 {
        margin: 3rem !important;
    }

    .m-sm-auto {
        margin: auto !important;
    }

    .mx-sm-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .mx-sm-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }

    .mx-sm-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }

    .mx-sm-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .mx-sm-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

    .mx-sm-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }

    .mx-sm-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-sm-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .my-sm-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

    .my-sm-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .my-sm-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .my-sm-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .my-sm-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }

    .my-sm-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-sm-0 {
        margin-top: 0 !important;
    }

    .mt-sm-1 {
        margin-top: 0.25rem !important;
    }

    .mt-sm-2 {
        margin-top: 0.5rem !important;
    }

    .mt-sm-3 {
        margin-top: 1rem !important;
    }

    .mt-sm-4 {
        margin-top: 1.5rem !important;
    }

    .mt-sm-5 {
        margin-top: 3rem !important;
    }

    .mt-sm-auto {
        margin-top: auto !important;
    }

    .me-sm-0 {
        margin-right: 0 !important;
    }

    .me-sm-1 {
        margin-right: 0.25rem !important;
    }

    .me-sm-2 {
        margin-right: 0.5rem !important;
    }

    .me-sm-3 {
        margin-right: 1rem !important;
    }

    .me-sm-4 {
        margin-right: 1.5rem !important;
    }

    .me-sm-5 {
        margin-right: 3rem !important;
    }

    .me-sm-auto {
        margin-right: auto !important;
    }

    .mb-sm-0 {
        margin-bottom: 0 !important;
    }

    .mb-sm-1 {
        margin-bottom: 0.25rem !important;
    }

    .mb-sm-2 {
        margin-bottom: 0.5rem !important;
    }

    .mb-sm-3 {
        margin-bottom: 1rem !important;
    }

    .mb-sm-4 {
        margin-bottom: 1.5rem !important;
    }

    .mb-sm-5 {
        margin-bottom: 3rem !important;
    }

    .mb-sm-auto {
        margin-bottom: auto !important;
    }

    .ms-sm-0 {
        margin-left: 0 !important;
    }

    .ms-sm-1 {
        margin-left: 0.25rem !important;
    }

    .ms-sm-2 {
        margin-left: 0.5rem !important;
    }

    .ms-sm-3 {
        margin-left: 1rem !important;
    }

    .ms-sm-4 {
        margin-left: 1.5rem !important;
    }

    .ms-sm-5 {
        margin-left: 3rem !important;
    }

    .ms-sm-auto {
        margin-left: auto !important;
    }

    .p-sm-0 {
        padding: 0 !important;
    }

    .p-sm-1 {
        padding: 0.25rem !important;
    }

    .p-sm-2 {
        padding: 0.5rem !important;
    }

    .p-sm-3 {
        padding: 1rem !important;
    }

    .p-sm-4 {
        padding: 1.5rem !important;
    }

    .p-sm-5 {
        padding: 3rem !important;
    }

    .px-sm-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-sm-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

    .px-sm-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }

    .px-sm-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .px-sm-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    .px-sm-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }

    .py-sm-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .py-sm-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

    .py-sm-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

    .py-sm-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-sm-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .py-sm-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }

    .pt-sm-0 {
        padding-top: 0 !important;
    }

    .pt-sm-1 {
        padding-top: 0.25rem !important;
    }

    .pt-sm-2 {
        padding-top: 0.5rem !important;
    }

    .pt-sm-3 {
        padding-top: 1rem !important;
    }

    .pt-sm-4 {
        padding-top: 1.5rem !important;
    }

    .pt-sm-5 {
        padding-top: 3rem !important;
    }

    .pe-sm-0 {
        padding-right: 0 !important;
    }

    .pe-sm-1 {
        padding-right: 0.25rem !important;
    }

    .pe-sm-2 {
        padding-right: 0.5rem !important;
    }

    .pe-sm-3 {
        padding-right: 1rem !important;
    }

    .pe-sm-4 {
        padding-right: 1.5rem !important;
    }

    .pe-sm-5 {
        padding-right: 3rem !important;
    }

    .pb-sm-0 {
        padding-bottom: 0 !important;
    }

    .pb-sm-1 {
        padding-bottom: 0.25rem !important;
    }

    .pb-sm-2 {
        padding-bottom: 0.5rem !important;
    }

    .pb-sm-3 {
        padding-bottom: 1rem !important;
    }

    .pb-sm-4 {
        padding-bottom: 1.5rem !important;
    }

    .pb-sm-5 {
        padding-bottom: 3rem !important;
    }

    .ps-sm-0 {
        padding-left: 0 !important;
    }

    .ps-sm-1 {
        padding-left: 0.25rem !important;
    }

    .ps-sm-2 {
        padding-left: 0.5rem !important;
    }

    .ps-sm-3 {
        padding-left: 1rem !important;
    }

    .ps-sm-4 {
        padding-left: 1.5rem !important;
    }

    .ps-sm-5 {
        padding-left: 3rem !important;
    }

    .gap-sm-0 {
        gap: 0 !important;
    }

    .gap-sm-1 {
        gap: 0.25rem !important;
    }

    .gap-sm-2 {
        gap: 0.5rem !important;
    }

    .gap-sm-3 {
        gap: 1rem !important;
    }

    .gap-sm-4 {
        gap: 1.5rem !important;
    }

    .gap-sm-5 {
        gap: 3rem !important;
    }

    .row-gap-sm-0 {
        row-gap: 0 !important;
    }

    .row-gap-sm-1 {
        row-gap: 0.25rem !important;
    }

    .row-gap-sm-2 {
        row-gap: 0.5rem !important;
    }

    .row-gap-sm-3 {
        row-gap: 1rem !important;
    }

    .row-gap-sm-4 {
        row-gap: 1.5rem !important;
    }

    .row-gap-sm-5 {
        row-gap: 3rem !important;
    }

    .column-gap-sm-0 {
        -moz-column-gap: 0 !important;
        column-gap: 0 !important;
    }

    .column-gap-sm-1 {
        -moz-column-gap: 0.25rem !important;
        column-gap: 0.25rem !important;
    }

    .column-gap-sm-2 {
        -moz-column-gap: 0.5rem !important;
        column-gap: 0.5rem !important;
    }

    .column-gap-sm-3 {
        -moz-column-gap: 1rem !important;
        column-gap: 1rem !important;
    }

    .column-gap-sm-4 {
        -moz-column-gap: 1.5rem !important;
        column-gap: 1.5rem !important;
    }

    .column-gap-sm-5 {
        -moz-column-gap: 3rem !important;
        column-gap: 3rem !important;
    }

    .text-sm-start {
        text-align: left !important;
    }

    .text-sm-end {
        text-align: right !important;
    }

    .text-sm-center {
        text-align: center !important;
    }
}

@media (min-width: 768px) {
    .float-md-start {
        float: left !important;
    }

    .float-md-end {
        float: right !important;
    }

    .float-md-none {
        float: none !important;
    }

    .object-fit-md-contain {
        -o-object-fit: contain !important;
        object-fit: contain !important;
    }

    .object-fit-md-cover {
        -o-object-fit: cover !important;
        object-fit: cover !important;
    }

    .object-fit-md-fill {
        -o-object-fit: fill !important;
        object-fit: fill !important;
    }

    .object-fit-md-scale {
        -o-object-fit: scale-down !important;
        object-fit: scale-down !important;
    }

    .object-fit-md-none {
        -o-object-fit: none !important;
        object-fit: none !important;
    }

    .d-md-inline {
        display: inline !important;
    }

    .d-md-inline-block {
        display: inline-block !important;
    }

    .d-md-block {
        display: block !important;
    }

    .d-md-grid {
        display: grid !important;
    }

    .d-md-inline-grid {
        display: inline-grid !important;
    }

    .d-md-table {
        display: table !important;
    }

    .d-md-table-row {
        display: table-row !important;
    }

    .d-md-table-cell {
        display: table-cell !important;
    }

    .d-md-flex {
        display: flex !important;
    }

    .d-md-inline-flex {
        display: inline-flex !important;
    }

    .d-md-none {
        display: none !important;
    }

    .flex-md-fill {
        flex: 1 1 auto !important;
    }

    .flex-md-row {
        flex-direction: row !important;
    }

    .flex-md-column {
        flex-direction: column !important;
    }

    .flex-md-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-md-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-md-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-md-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-md-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-md-shrink-1 {
        flex-shrink: 1 !important;
    }

    .flex-md-wrap {
        flex-wrap: wrap !important;
    }

    .flex-md-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-md-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .justify-content-md-start {
        justify-content: flex-start !important;
    }

    .justify-content-md-end {
        justify-content: flex-end !important;
    }

    .justify-content-md-center {
        justify-content: center !important;
    }

    .justify-content-md-between {
        justify-content: space-between !important;
    }

    .justify-content-md-around {
        justify-content: space-around !important;
    }

    .justify-content-md-evenly {
        justify-content: space-evenly !important;
    }

    .align-items-md-start {
        align-items: flex-start !important;
    }

    .align-items-md-end {
        align-items: flex-end !important;
    }

    .align-items-md-center {
        align-items: center !important;
    }

    .align-items-md-baseline {
        align-items: baseline !important;
    }

    .align-items-md-stretch {
        align-items: stretch !important;
    }

    .align-content-md-start {
        align-content: flex-start !important;
    }

    .align-content-md-end {
        align-content: flex-end !important;
    }

    .align-content-md-center {
        align-content: center !important;
    }

    .align-content-md-between {
        align-content: space-between !important;
    }

    .align-content-md-around {
        align-content: space-around !important;
    }

    .align-content-md-stretch {
        align-content: stretch !important;
    }

    .align-self-md-auto {
        align-self: auto !important;
    }

    .align-self-md-start {
        align-self: flex-start !important;
    }

    .align-self-md-end {
        align-self: flex-end !important;
    }

    .align-self-md-center {
        align-self: center !important;
    }

    .align-self-md-baseline {
        align-self: baseline !important;
    }

    .align-self-md-stretch {
        align-self: stretch !important;
    }

    .order-md-first {
        order: -1 !important;
    }

    .order-md-0 {
        order: 0 !important;
    }

    .order-md-1 {
        order: 1 !important;
    }

    .order-md-2 {
        order: 2 !important;
    }

    .order-md-3 {
        order: 3 !important;
    }

    .order-md-4 {
        order: 4 !important;
    }

    .order-md-5 {
        order: 5 !important;
    }

    .order-md-last {
        order: 6 !important;
    }

    .m-md-0 {
        margin: 0 !important;
    }

    .m-md-1 {
        margin: 0.25rem !important;
    }

    .m-md-2 {
        margin: 0.5rem !important;
    }

    .m-md-3 {
        margin: 1rem !important;
    }

    .m-md-4 {
        margin: 1.5rem !important;
    }

    .m-md-5 {
        margin: 3rem !important;
    }

    .m-md-auto {
        margin: auto !important;
    }

    .mx-md-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .mx-md-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }

    .mx-md-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }

    .mx-md-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .mx-md-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

    .mx-md-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }

    .mx-md-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-md-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .my-md-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

    .my-md-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .my-md-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .my-md-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .my-md-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }

    .my-md-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-md-0 {
        margin-top: 0 !important;
    }

    .mt-md-1 {
        margin-top: 0.25rem !important;
    }

    .mt-md-2 {
        margin-top: 0.5rem !important;
    }

    .mt-md-3 {
        margin-top: 1rem !important;
    }

    .mt-md-4 {
        margin-top: 1.5rem !important;
    }

    .mt-md-5 {
        margin-top: 3rem !important;
    }

    .mt-md-auto {
        margin-top: auto !important;
    }

    .me-md-0 {
        margin-right: 0 !important;
    }

    .me-md-1 {
        margin-right: 0.25rem !important;
    }

    .me-md-2 {
        margin-right: 0.5rem !important;
    }

    .me-md-3 {
        margin-right: 1rem !important;
    }

    .me-md-4 {
        margin-right: 1.5rem !important;
    }

    .me-md-5 {
        margin-right: 3rem !important;
    }

    .me-md-auto {
        margin-right: auto !important;
    }

    .mb-md-0 {
        margin-bottom: 0 !important;
    }

    .mb-md-1 {
        margin-bottom: 0.25rem !important;
    }

    .mb-md-2 {
        margin-bottom: 0.5rem !important;
    }

    .mb-md-3 {
        margin-bottom: 1rem !important;
    }

    .mb-md-4 {
        margin-bottom: 1.5rem !important;
    }

    .mb-md-5 {
        margin-bottom: 3rem !important;
    }

    .mb-md-auto {
        margin-bottom: auto !important;
    }

    .ms-md-0 {
        margin-left: 0 !important;
    }

    .ms-md-1 {
        margin-left: 0.25rem !important;
    }

    .ms-md-2 {
        margin-left: 0.5rem !important;
    }

    .ms-md-3 {
        margin-left: 1rem !important;
    }

    .ms-md-4 {
        margin-left: 1.5rem !important;
    }

    .ms-md-5 {
        margin-left: 3rem !important;
    }

    .ms-md-auto {
        margin-left: auto !important;
    }

    .p-md-0 {
        padding: 0 !important;
    }

    .p-md-1 {
        padding: 0.25rem !important;
    }

    .p-md-2 {
        padding: 0.5rem !important;
    }

    .p-md-3 {
        padding: 1rem !important;
    }

    .p-md-4 {
        padding: 1.5rem !important;
    }

    .p-md-5 {
        padding: 3rem !important;
    }

    .px-md-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-md-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

    .px-md-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }

    .px-md-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .px-md-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    .px-md-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }

    .py-md-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .py-md-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

    .py-md-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

    .py-md-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-md-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .py-md-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }

    .pt-md-0 {
        padding-top: 0 !important;
    }

    .pt-md-1 {
        padding-top: 0.25rem !important;
    }

    .pt-md-2 {
        padding-top: 0.5rem !important;
    }

    .pt-md-3 {
        padding-top: 1rem !important;
    }

    .pt-md-4 {
        padding-top: 1.5rem !important;
    }

    .pt-md-5 {
        padding-top: 3rem !important;
    }

    .pe-md-0 {
        padding-right: 0 !important;
    }

    .pe-md-1 {
        padding-right: 0.25rem !important;
    }

    .pe-md-2 {
        padding-right: 0.5rem !important;
    }

    .pe-md-3 {
        padding-right: 1rem !important;
    }

    .pe-md-4 {
        padding-right: 1.5rem !important;
    }

    .pe-md-5 {
        padding-right: 3rem !important;
    }

    .pb-md-0 {
        padding-bottom: 0 !important;
    }

    .pb-md-1 {
        padding-bottom: 0.25rem !important;
    }

    .pb-md-2 {
        padding-bottom: 0.5rem !important;
    }

    .pb-md-3 {
        padding-bottom: 1rem !important;
    }

    .pb-md-4 {
        padding-bottom: 1.5rem !important;
    }

    .pb-md-5 {
        padding-bottom: 3rem !important;
    }

    .ps-md-0 {
        padding-left: 0 !important;
    }

    .ps-md-1 {
        padding-left: 0.25rem !important;
    }

    .ps-md-2 {
        padding-left: 0.5rem !important;
    }

    .ps-md-3 {
        padding-left: 1rem !important;
    }

    .ps-md-4 {
        padding-left: 1.5rem !important;
    }

    .ps-md-5 {
        padding-left: 3rem !important;
    }

    .gap-md-0 {
        gap: 0 !important;
    }

    .gap-md-1 {
        gap: 0.25rem !important;
    }

    .gap-md-2 {
        gap: 0.5rem !important;
    }

    .gap-md-3 {
        gap: 1rem !important;
    }

    .gap-md-4 {
        gap: 1.5rem !important;
    }

    .gap-md-5 {
        gap: 3rem !important;
    }

    .row-gap-md-0 {
        row-gap: 0 !important;
    }

    .row-gap-md-1 {
        row-gap: 0.25rem !important;
    }

    .row-gap-md-2 {
        row-gap: 0.5rem !important;
    }

    .row-gap-md-3 {
        row-gap: 1rem !important;
    }

    .row-gap-md-4 {
        row-gap: 1.5rem !important;
    }

    .row-gap-md-5 {
        row-gap: 3rem !important;
    }

    .column-gap-md-0 {
        -moz-column-gap: 0 !important;
        column-gap: 0 !important;
    }

    .column-gap-md-1 {
        -moz-column-gap: 0.25rem !important;
        column-gap: 0.25rem !important;
    }

    .column-gap-md-2 {
        -moz-column-gap: 0.5rem !important;
        column-gap: 0.5rem !important;
    }

    .column-gap-md-3 {
        -moz-column-gap: 1rem !important;
        column-gap: 1rem !important;
    }

    .column-gap-md-4 {
        -moz-column-gap: 1.5rem !important;
        column-gap: 1.5rem !important;
    }

    .column-gap-md-5 {
        -moz-column-gap: 3rem !important;
        column-gap: 3rem !important;
    }

    .text-md-start {
        text-align: left !important;
    }

    .text-md-end {
        text-align: right !important;
    }

    .text-md-center {
        text-align: center !important;
    }
}

@media (min-width: 992px) {
    .float-lg-start {
        float: left !important;
    }

    .float-lg-end {
        float: right !important;
    }

    .float-lg-none {
        float: none !important;
    }

    .object-fit-lg-contain {
        -o-object-fit: contain !important;
        object-fit: contain !important;
    }

    .object-fit-lg-cover {
        -o-object-fit: cover !important;
        object-fit: cover !important;
    }

    .object-fit-lg-fill {
        -o-object-fit: fill !important;
        object-fit: fill !important;
    }

    .object-fit-lg-scale {
        -o-object-fit: scale-down !important;
        object-fit: scale-down !important;
    }

    .object-fit-lg-none {
        -o-object-fit: none !important;
        object-fit: none !important;
    }

    .d-lg-inline {
        display: inline !important;
    }

    .d-lg-inline-block {
        display: inline-block !important;
    }

    .d-lg-block {
        display: block !important;
    }

    .d-lg-grid {
        display: grid !important;
    }

    .d-lg-inline-grid {
        display: inline-grid !important;
    }

    .d-lg-table {
        display: table !important;
    }

    .d-lg-table-row {
        display: table-row !important;
    }

    .d-lg-table-cell {
        display: table-cell !important;
    }

    .d-lg-flex {
        display: flex !important;
    }

    .d-lg-inline-flex {
        display: inline-flex !important;
    }

    .d-lg-none {
        display: none !important;
    }

    .flex-lg-fill {
        flex: 1 1 auto !important;
    }

    .flex-lg-row {
        flex-direction: row !important;
    }

    .flex-lg-column {
        flex-direction: column !important;
    }

    .flex-lg-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-lg-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-lg-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-lg-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-lg-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-lg-shrink-1 {
        flex-shrink: 1 !important;
    }

    .flex-lg-wrap {
        flex-wrap: wrap !important;
    }

    .flex-lg-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-lg-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .justify-content-lg-start {
        justify-content: flex-start !important;
    }

    .justify-content-lg-end {
        justify-content: flex-end !important;
    }

    .justify-content-lg-center {
        justify-content: center !important;
    }

    .justify-content-lg-between {
        justify-content: space-between !important;
    }

    .justify-content-lg-around {
        justify-content: space-around !important;
    }

    .justify-content-lg-evenly {
        justify-content: space-evenly !important;
    }

    .align-items-lg-start {
        align-items: flex-start !important;
    }

    .align-items-lg-end {
        align-items: flex-end !important;
    }

    .align-items-lg-center {
        align-items: center !important;
    }

    .align-items-lg-baseline {
        align-items: baseline !important;
    }

    .align-items-lg-stretch {
        align-items: stretch !important;
    }

    .align-content-lg-start {
        align-content: flex-start !important;
    }

    .align-content-lg-end {
        align-content: flex-end !important;
    }

    .align-content-lg-center {
        align-content: center !important;
    }

    .align-content-lg-between {
        align-content: space-between !important;
    }

    .align-content-lg-around {
        align-content: space-around !important;
    }

    .align-content-lg-stretch {
        align-content: stretch !important;
    }

    .align-self-lg-auto {
        align-self: auto !important;
    }

    .align-self-lg-start {
        align-self: flex-start !important;
    }

    .align-self-lg-end {
        align-self: flex-end !important;
    }

    .align-self-lg-center {
        align-self: center !important;
    }

    .align-self-lg-baseline {
        align-self: baseline !important;
    }

    .align-self-lg-stretch {
        align-self: stretch !important;
    }

    .order-lg-first {
        order: -1 !important;
    }

    .order-lg-0 {
        order: 0 !important;
    }

    .order-lg-1 {
        order: 1 !important;
    }

    .order-lg-2 {
        order: 2 !important;
    }

    .order-lg-3 {
        order: 3 !important;
    }

    .order-lg-4 {
        order: 4 !important;
    }

    .order-lg-5 {
        order: 5 !important;
    }

    .order-lg-last {
        order: 6 !important;
    }

    .m-lg-0 {
        margin: 0 !important;
    }

    .m-lg-1 {
        margin: 0.25rem !important;
    }

    .m-lg-2 {
        margin: 0.5rem !important;
    }

    .m-lg-3 {
        margin: 1rem !important;
    }

    .m-lg-4 {
        margin: 1.5rem !important;
    }

    .m-lg-5 {
        margin: 3rem !important;
    }

    .m-lg-auto {
        margin: auto !important;
    }

    .mx-lg-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .mx-lg-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }

    .mx-lg-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }

    .mx-lg-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .mx-lg-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

    .mx-lg-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }

    .mx-lg-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-lg-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .my-lg-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

    .my-lg-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .my-lg-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .my-lg-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .my-lg-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }

    .my-lg-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-lg-0 {
        margin-top: 0 !important;
    }

    .mt-lg-1 {
        margin-top: 0.25rem !important;
    }

    .mt-lg-2 {
        margin-top: 0.5rem !important;
    }

    .mt-lg-3 {
        margin-top: 1rem !important;
    }

    .mt-lg-4 {
        margin-top: 1.5rem !important;
    }

    .mt-lg-5 {
        margin-top: 3rem !important;
    }

    .mt-lg-auto {
        margin-top: auto !important;
    }

    .me-lg-0 {
        margin-right: 0 !important;
    }

    .me-lg-1 {
        margin-right: 0.25rem !important;
    }

    .me-lg-2 {
        margin-right: 0.5rem !important;
    }

    .me-lg-3 {
        margin-right: 1rem !important;
    }

    .me-lg-4 {
        margin-right: 1.5rem !important;
    }

    .me-lg-5 {
        margin-right: 3rem !important;
    }

    .me-lg-auto {
        margin-right: auto !important;
    }

    .mb-lg-0 {
        margin-bottom: 0 !important;
    }

    .mb-lg-1 {
        margin-bottom: 0.25rem !important;
    }

    .mb-lg-2 {
        margin-bottom: 0.5rem !important;
    }

    .mb-lg-3 {
        margin-bottom: 1rem !important;
    }

    .mb-lg-4 {
        margin-bottom: 1.5rem !important;
    }

    .mb-lg-5 {
        margin-bottom: 3rem !important;
    }

    .mb-lg-auto {
        margin-bottom: auto !important;
    }

    .ms-lg-0 {
        margin-left: 0 !important;
    }

    .ms-lg-1 {
        margin-left: 0.25rem !important;
    }

    .ms-lg-2 {
        margin-left: 0.5rem !important;
    }

    .ms-lg-3 {
        margin-left: 1rem !important;
    }

    .ms-lg-4 {
        margin-left: 1.5rem !important;
    }

    .ms-lg-5 {
        margin-left: 3rem !important;
    }

    .ms-lg-auto {
        margin-left: auto !important;
    }

    .p-lg-0 {
        padding: 0 !important;
    }

    .p-lg-1 {
        padding: 0.25rem !important;
    }

    .p-lg-2 {
        padding: 0.5rem !important;
    }

    .p-lg-3 {
        padding: 1rem !important;
    }

    .p-lg-4 {
        padding: 1.5rem !important;
    }

    .p-lg-5 {
        padding: 3rem !important;
    }

    .px-lg-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-lg-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

    .px-lg-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }

    .px-lg-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .px-lg-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    .px-lg-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }

    .py-lg-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .py-lg-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

    .py-lg-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

    .py-lg-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-lg-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .py-lg-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }

    .pt-lg-0 {
        padding-top: 0 !important;
    }

    .pt-lg-1 {
        padding-top: 0.25rem !important;
    }

    .pt-lg-2 {
        padding-top: 0.5rem !important;
    }

    .pt-lg-3 {
        padding-top: 1rem !important;
    }

    .pt-lg-4 {
        padding-top: 1.5rem !important;
    }

    .pt-lg-5 {
        padding-top: 3rem !important;
    }

    .pe-lg-0 {
        padding-right: 0 !important;
    }

    .pe-lg-1 {
        padding-right: 0.25rem !important;
    }

    .pe-lg-2 {
        padding-right: 0.5rem !important;
    }

    .pe-lg-3 {
        padding-right: 1rem !important;
    }

    .pe-lg-4 {
        padding-right: 1.5rem !important;
    }

    .pe-lg-5 {
        padding-right: 3rem !important;
    }

    .pb-lg-0 {
        padding-bottom: 0 !important;
    }

    .pb-lg-1 {
        padding-bottom: 0.25rem !important;
    }

    .pb-lg-2 {
        padding-bottom: 0.5rem !important;
    }

    .pb-lg-3 {
        padding-bottom: 1rem !important;
    }

    .pb-lg-4 {
        padding-bottom: 1.5rem !important;
    }

    .pb-lg-5 {
        padding-bottom: 3rem !important;
    }

    .ps-lg-0 {
        padding-left: 0 !important;
    }

    .ps-lg-1 {
        padding-left: 0.25rem !important;
    }

    .ps-lg-2 {
        padding-left: 0.5rem !important;
    }

    .ps-lg-3 {
        padding-left: 1rem !important;
    }

    .ps-lg-4 {
        padding-left: 1.5rem !important;
    }

    .ps-lg-5 {
        padding-left: 3rem !important;
    }

    .gap-lg-0 {
        gap: 0 !important;
    }

    .gap-lg-1 {
        gap: 0.25rem !important;
    }

    .gap-lg-2 {
        gap: 0.5rem !important;
    }

    .gap-lg-3 {
        gap: 1rem !important;
    }

    .gap-lg-4 {
        gap: 1.5rem !important;
    }

    .gap-lg-5 {
        gap: 3rem !important;
    }

    .row-gap-lg-0 {
        row-gap: 0 !important;
    }

    .row-gap-lg-1 {
        row-gap: 0.25rem !important;
    }

    .row-gap-lg-2 {
        row-gap: 0.5rem !important;
    }

    .row-gap-lg-3 {
        row-gap: 1rem !important;
    }

    .row-gap-lg-4 {
        row-gap: 1.5rem !important;
    }

    .row-gap-lg-5 {
        row-gap: 3rem !important;
    }

    .column-gap-lg-0 {
        -moz-column-gap: 0 !important;
        column-gap: 0 !important;
    }

    .column-gap-lg-1 {
        -moz-column-gap: 0.25rem !important;
        column-gap: 0.25rem !important;
    }

    .column-gap-lg-2 {
        -moz-column-gap: 0.5rem !important;
        column-gap: 0.5rem !important;
    }

    .column-gap-lg-3 {
        -moz-column-gap: 1rem !important;
        column-gap: 1rem !important;
    }

    .column-gap-lg-4 {
        -moz-column-gap: 1.5rem !important;
        column-gap: 1.5rem !important;
    }

    .column-gap-lg-5 {
        -moz-column-gap: 3rem !important;
        column-gap: 3rem !important;
    }

    .text-lg-start {
        text-align: left !important;
    }

    .text-lg-end {
        text-align: right !important;
    }

    .text-lg-center {
        text-align: center !important;
    }
}

@media (min-width: 1200px) {
    .float-xl-start {
        float: left !important;
    }

    .float-xl-end {
        float: right !important;
    }

    .float-xl-none {
        float: none !important;
    }

    .object-fit-xl-contain {
        -o-object-fit: contain !important;
        object-fit: contain !important;
    }

    .object-fit-xl-cover {
        -o-object-fit: cover !important;
        object-fit: cover !important;
    }

    .object-fit-xl-fill {
        -o-object-fit: fill !important;
        object-fit: fill !important;
    }

    .object-fit-xl-scale {
        -o-object-fit: scale-down !important;
        object-fit: scale-down !important;
    }

    .object-fit-xl-none {
        -o-object-fit: none !important;
        object-fit: none !important;
    }

    .d-xl-inline {
        display: inline !important;
    }

    .d-xl-inline-block {
        display: inline-block !important;
    }

    .d-xl-block {
        display: block !important;
    }

    .d-xl-grid {
        display: grid !important;
    }

    .d-xl-inline-grid {
        display: inline-grid !important;
    }

    .d-xl-table {
        display: table !important;
    }

    .d-xl-table-row {
        display: table-row !important;
    }

    .d-xl-table-cell {
        display: table-cell !important;
    }

    .d-xl-flex {
        display: flex !important;
    }

    .d-xl-inline-flex {
        display: inline-flex !important;
    }

    .d-xl-none {
        display: none !important;
    }

    .flex-xl-fill {
        flex: 1 1 auto !important;
    }

    .flex-xl-row {
        flex-direction: row !important;
    }

    .flex-xl-column {
        flex-direction: column !important;
    }

    .flex-xl-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-xl-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-xl-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-xl-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-xl-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-xl-shrink-1 {
        flex-shrink: 1 !important;
    }

    .flex-xl-wrap {
        flex-wrap: wrap !important;
    }

    .flex-xl-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-xl-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .justify-content-xl-start {
        justify-content: flex-start !important;
    }

    .justify-content-xl-end {
        justify-content: flex-end !important;
    }

    .justify-content-xl-center {
        justify-content: center !important;
    }

    .justify-content-xl-between {
        justify-content: space-between !important;
    }

    .justify-content-xl-around {
        justify-content: space-around !important;
    }

    .justify-content-xl-evenly {
        justify-content: space-evenly !important;
    }

    .align-items-xl-start {
        align-items: flex-start !important;
    }

    .align-items-xl-end {
        align-items: flex-end !important;
    }

    .align-items-xl-center {
        align-items: center !important;
    }

    .align-items-xl-baseline {
        align-items: baseline !important;
    }

    .align-items-xl-stretch {
        align-items: stretch !important;
    }

    .align-content-xl-start {
        align-content: flex-start !important;
    }

    .align-content-xl-end {
        align-content: flex-end !important;
    }

    .align-content-xl-center {
        align-content: center !important;
    }

    .align-content-xl-between {
        align-content: space-between !important;
    }

    .align-content-xl-around {
        align-content: space-around !important;
    }

    .align-content-xl-stretch {
        align-content: stretch !important;
    }

    .align-self-xl-auto {
        align-self: auto !important;
    }

    .align-self-xl-start {
        align-self: flex-start !important;
    }

    .align-self-xl-end {
        align-self: flex-end !important;
    }

    .align-self-xl-center {
        align-self: center !important;
    }

    .align-self-xl-baseline {
        align-self: baseline !important;
    }

    .align-self-xl-stretch {
        align-self: stretch !important;
    }

    .order-xl-first {
        order: -1 !important;
    }

    .order-xl-0 {
        order: 0 !important;
    }

    .order-xl-1 {
        order: 1 !important;
    }

    .order-xl-2 {
        order: 2 !important;
    }

    .order-xl-3 {
        order: 3 !important;
    }

    .order-xl-4 {
        order: 4 !important;
    }

    .order-xl-5 {
        order: 5 !important;
    }

    .order-xl-last {
        order: 6 !important;
    }

    .m-xl-0 {
        margin: 0 !important;
    }

    .m-xl-1 {
        margin: 0.25rem !important;
    }

    .m-xl-2 {
        margin: 0.5rem !important;
    }

    .m-xl-3 {
        margin: 1rem !important;
    }

    .m-xl-4 {
        margin: 1.5rem !important;
    }

    .m-xl-5 {
        margin: 3rem !important;
    }

    .m-xl-auto {
        margin: auto !important;
    }

    .mx-xl-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .mx-xl-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }

    .mx-xl-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }

    .mx-xl-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .mx-xl-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

    .mx-xl-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }

    .mx-xl-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-xl-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .my-xl-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

    .my-xl-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .my-xl-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .my-xl-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .my-xl-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }

    .my-xl-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-xl-0 {
        margin-top: 0 !important;
    }

    .mt-xl-1 {
        margin-top: 0.25rem !important;
    }

    .mt-xl-2 {
        margin-top: 0.5rem !important;
    }

    .mt-xl-3 {
        margin-top: 1rem !important;
    }

    .mt-xl-4 {
        margin-top: 1.5rem !important;
    }

    .mt-xl-5 {
        margin-top: 3rem !important;
    }

    .mt-xl-auto {
        margin-top: auto !important;
    }

    .me-xl-0 {
        margin-right: 0 !important;
    }

    .me-xl-1 {
        margin-right: 0.25rem !important;
    }

    .me-xl-2 {
        margin-right: 0.5rem !important;
    }

    .me-xl-3 {
        margin-right: 1rem !important;
    }

    .me-xl-4 {
        margin-right: 1.5rem !important;
    }

    .me-xl-5 {
        margin-right: 3rem !important;
    }

    .me-xl-auto {
        margin-right: auto !important;
    }

    .mb-xl-0 {
        margin-bottom: 0 !important;
    }

    .mb-xl-1 {
        margin-bottom: 0.25rem !important;
    }

    .mb-xl-2 {
        margin-bottom: 0.5rem !important;
    }

    .mb-xl-3 {
        margin-bottom: 1rem !important;
    }

    .mb-xl-4 {
        margin-bottom: 1.5rem !important;
    }

    .mb-xl-5 {
        margin-bottom: 3rem !important;
    }

    .mb-xl-auto {
        margin-bottom: auto !important;
    }

    .ms-xl-0 {
        margin-left: 0 !important;
    }

    .ms-xl-1 {
        margin-left: 0.25rem !important;
    }

    .ms-xl-2 {
        margin-left: 0.5rem !important;
    }

    .ms-xl-3 {
        margin-left: 1rem !important;
    }

    .ms-xl-4 {
        margin-left: 1.5rem !important;
    }

    .ms-xl-5 {
        margin-left: 3rem !important;
    }

    .ms-xl-auto {
        margin-left: auto !important;
    }

    .p-xl-0 {
        padding: 0 !important;
    }

    .p-xl-1 {
        padding: 0.25rem !important;
    }

    .p-xl-2 {
        padding: 0.5rem !important;
    }

    .p-xl-3 {
        padding: 1rem !important;
    }

    .p-xl-4 {
        padding: 1.5rem !important;
    }

    .p-xl-5 {
        padding: 3rem !important;
    }

    .px-xl-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-xl-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

    .px-xl-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }

    .px-xl-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .px-xl-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    .px-xl-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }

    .py-xl-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .py-xl-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

    .py-xl-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

    .py-xl-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-xl-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .py-xl-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }

    .pt-xl-0 {
        padding-top: 0 !important;
    }

    .pt-xl-1 {
        padding-top: 0.25rem !important;
    }

    .pt-xl-2 {
        padding-top: 0.5rem !important;
    }

    .pt-xl-3 {
        padding-top: 1rem !important;
    }

    .pt-xl-4 {
        padding-top: 1.5rem !important;
    }

    .pt-xl-5 {
        padding-top: 3rem !important;
    }

    .pe-xl-0 {
        padding-right: 0 !important;
    }

    .pe-xl-1 {
        padding-right: 0.25rem !important;
    }

    .pe-xl-2 {
        padding-right: 0.5rem !important;
    }

    .pe-xl-3 {
        padding-right: 1rem !important;
    }

    .pe-xl-4 {
        padding-right: 1.5rem !important;
    }

    .pe-xl-5 {
        padding-right: 3rem !important;
    }

    .pb-xl-0 {
        padding-bottom: 0 !important;
    }

    .pb-xl-1 {
        padding-bottom: 0.25rem !important;
    }

    .pb-xl-2 {
        padding-bottom: 0.5rem !important;
    }

    .pb-xl-3 {
        padding-bottom: 1rem !important;
    }

    .pb-xl-4 {
        padding-bottom: 1.5rem !important;
    }

    .pb-xl-5 {
        padding-bottom: 3rem !important;
    }

    .ps-xl-0 {
        padding-left: 0 !important;
    }

    .ps-xl-1 {
        padding-left: 0.25rem !important;
    }

    .ps-xl-2 {
        padding-left: 0.5rem !important;
    }

    .ps-xl-3 {
        padding-left: 1rem !important;
    }

    .ps-xl-4 {
        padding-left: 1.5rem !important;
    }

    .ps-xl-5 {
        padding-left: 3rem !important;
    }

    .gap-xl-0 {
        gap: 0 !important;
    }

    .gap-xl-1 {
        gap: 0.25rem !important;
    }

    .gap-xl-2 {
        gap: 0.5rem !important;
    }

    .gap-xl-3 {
        gap: 1rem !important;
    }

    .gap-xl-4 {
        gap: 1.5rem !important;
    }

    .gap-xl-5 {
        gap: 3rem !important;
    }

    .row-gap-xl-0 {
        row-gap: 0 !important;
    }

    .row-gap-xl-1 {
        row-gap: 0.25rem !important;
    }

    .row-gap-xl-2 {
        row-gap: 0.5rem !important;
    }

    .row-gap-xl-3 {
        row-gap: 1rem !important;
    }

    .row-gap-xl-4 {
        row-gap: 1.5rem !important;
    }

    .row-gap-xl-5 {
        row-gap: 3rem !important;
    }

    .column-gap-xl-0 {
        -moz-column-gap: 0 !important;
        column-gap: 0 !important;
    }

    .column-gap-xl-1 {
        -moz-column-gap: 0.25rem !important;
        column-gap: 0.25rem !important;
    }

    .column-gap-xl-2 {
        -moz-column-gap: 0.5rem !important;
        column-gap: 0.5rem !important;
    }

    .column-gap-xl-3 {
        -moz-column-gap: 1rem !important;
        column-gap: 1rem !important;
    }

    .column-gap-xl-4 {
        -moz-column-gap: 1.5rem !important;
        column-gap: 1.5rem !important;
    }

    .column-gap-xl-5 {
        -moz-column-gap: 3rem !important;
        column-gap: 3rem !important;
    }

    .text-xl-start {
        text-align: left !important;
    }

    .text-xl-end {
        text-align: right !important;
    }

    .text-xl-center {
        text-align: center !important;
    }
}

@media (min-width: 1440px) {
    .float-xxl-start {
        float: left !important;
    }

    .float-xxl-end {
        float: right !important;
    }

    .float-xxl-none {
        float: none !important;
    }

    .object-fit-xxl-contain {
        -o-object-fit: contain !important;
        object-fit: contain !important;
    }

    .object-fit-xxl-cover {
        -o-object-fit: cover !important;
        object-fit: cover !important;
    }

    .object-fit-xxl-fill {
        -o-object-fit: fill !important;
        object-fit: fill !important;
    }

    .object-fit-xxl-scale {
        -o-object-fit: scale-down !important;
        object-fit: scale-down !important;
    }

    .object-fit-xxl-none {
        -o-object-fit: none !important;
        object-fit: none !important;
    }

    .d-xxl-inline {
        display: inline !important;
    }

    .d-xxl-inline-block {
        display: inline-block !important;
    }

    .d-xxl-block {
        display: block !important;
    }

    .d-xxl-grid {
        display: grid !important;
    }

    .d-xxl-inline-grid {
        display: inline-grid !important;
    }

    .d-xxl-table {
        display: table !important;
    }

    .d-xxl-table-row {
        display: table-row !important;
    }

    .d-xxl-table-cell {
        display: table-cell !important;
    }

    .d-xxl-flex {
        display: flex !important;
    }

    .d-xxl-inline-flex {
        display: inline-flex !important;
    }

    .d-xxl-none {
        display: none !important;
    }

    .flex-xxl-fill {
        flex: 1 1 auto !important;
    }

    .flex-xxl-row {
        flex-direction: row !important;
    }

    .flex-xxl-column {
        flex-direction: column !important;
    }

    .flex-xxl-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-xxl-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-xxl-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-xxl-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-xxl-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-xxl-shrink-1 {
        flex-shrink: 1 !important;
    }

    .flex-xxl-wrap {
        flex-wrap: wrap !important;
    }

    .flex-xxl-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-xxl-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .justify-content-xxl-start {
        justify-content: flex-start !important;
    }

    .justify-content-xxl-end {
        justify-content: flex-end !important;
    }

    .justify-content-xxl-center {
        justify-content: center !important;
    }

    .justify-content-xxl-between {
        justify-content: space-between !important;
    }

    .justify-content-xxl-around {
        justify-content: space-around !important;
    }

    .justify-content-xxl-evenly {
        justify-content: space-evenly !important;
    }

    .align-items-xxl-start {
        align-items: flex-start !important;
    }

    .align-items-xxl-end {
        align-items: flex-end !important;
    }

    .align-items-xxl-center {
        align-items: center !important;
    }

    .align-items-xxl-baseline {
        align-items: baseline !important;
    }

    .align-items-xxl-stretch {
        align-items: stretch !important;
    }

    .align-content-xxl-start {
        align-content: flex-start !important;
    }

    .align-content-xxl-end {
        align-content: flex-end !important;
    }

    .align-content-xxl-center {
        align-content: center !important;
    }

    .align-content-xxl-between {
        align-content: space-between !important;
    }

    .align-content-xxl-around {
        align-content: space-around !important;
    }

    .align-content-xxl-stretch {
        align-content: stretch !important;
    }

    .align-self-xxl-auto {
        align-self: auto !important;
    }

    .align-self-xxl-start {
        align-self: flex-start !important;
    }

    .align-self-xxl-end {
        align-self: flex-end !important;
    }

    .align-self-xxl-center {
        align-self: center !important;
    }

    .align-self-xxl-baseline {
        align-self: baseline !important;
    }

    .align-self-xxl-stretch {
        align-self: stretch !important;
    }

    .order-xxl-first {
        order: -1 !important;
    }

    .order-xxl-0 {
        order: 0 !important;
    }

    .order-xxl-1 {
        order: 1 !important;
    }

    .order-xxl-2 {
        order: 2 !important;
    }

    .order-xxl-3 {
        order: 3 !important;
    }

    .order-xxl-4 {
        order: 4 !important;
    }

    .order-xxl-5 {
        order: 5 !important;
    }

    .order-xxl-last {
        order: 6 !important;
    }

    .m-xxl-0 {
        margin: 0 !important;
    }

    .m-xxl-1 {
        margin: 0.25rem !important;
    }

    .m-xxl-2 {
        margin: 0.5rem !important;
    }

    .m-xxl-3 {
        margin: 1rem !important;
    }

    .m-xxl-4 {
        margin: 1.5rem !important;
    }

    .m-xxl-5 {
        margin: 3rem !important;
    }

    .m-xxl-auto {
        margin: auto !important;
    }

    .mx-xxl-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .mx-xxl-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }

    .mx-xxl-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }

    .mx-xxl-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .mx-xxl-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

    .mx-xxl-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }

    .mx-xxl-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-xxl-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .my-xxl-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

    .my-xxl-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .my-xxl-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .my-xxl-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .my-xxl-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }

    .my-xxl-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-xxl-0 {
        margin-top: 0 !important;
    }

    .mt-xxl-1 {
        margin-top: 0.25rem !important;
    }

    .mt-xxl-2 {
        margin-top: 0.5rem !important;
    }

    .mt-xxl-3 {
        margin-top: 1rem !important;
    }

    .mt-xxl-4 {
        margin-top: 1.5rem !important;
    }

    .mt-xxl-5 {
        margin-top: 3rem !important;
    }

    .mt-xxl-auto {
        margin-top: auto !important;
    }

    .me-xxl-0 {
        margin-right: 0 !important;
    }

    .me-xxl-1 {
        margin-right: 0.25rem !important;
    }

    .me-xxl-2 {
        margin-right: 0.5rem !important;
    }

    .me-xxl-3 {
        margin-right: 1rem !important;
    }

    .me-xxl-4 {
        margin-right: 1.5rem !important;
    }

    .me-xxl-5 {
        margin-right: 3rem !important;
    }

    .me-xxl-auto {
        margin-right: auto !important;
    }

    .mb-xxl-0 {
        margin-bottom: 0 !important;
    }

    .mb-xxl-1 {
        margin-bottom: 0.25rem !important;
    }

    .mb-xxl-2 {
        margin-bottom: 0.5rem !important;
    }

    .mb-xxl-3 {
        margin-bottom: 1rem !important;
    }

    .mb-xxl-4 {
        margin-bottom: 1.5rem !important;
    }

    .mb-xxl-5 {
        margin-bottom: 3rem !important;
    }

    .mb-xxl-auto {
        margin-bottom: auto !important;
    }

    .ms-xxl-0 {
        margin-left: 0 !important;
    }

    .ms-xxl-1 {
        margin-left: 0.25rem !important;
    }

    .ms-xxl-2 {
        margin-left: 0.5rem !important;
    }

    .ms-xxl-3 {
        margin-left: 1rem !important;
    }

    .ms-xxl-4 {
        margin-left: 1.5rem !important;
    }

    .ms-xxl-5 {
        margin-left: 3rem !important;
    }

    .ms-xxl-auto {
        margin-left: auto !important;
    }

    .p-xxl-0 {
        padding: 0 !important;
    }

    .p-xxl-1 {
        padding: 0.25rem !important;
    }

    .p-xxl-2 {
        padding: 0.5rem !important;
    }

    .p-xxl-3 {
        padding: 1rem !important;
    }

    .p-xxl-4 {
        padding: 1.5rem !important;
    }

    .p-xxl-5 {
        padding: 3rem !important;
    }

    .px-xxl-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-xxl-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

    .px-xxl-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }

    .px-xxl-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .px-xxl-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    .px-xxl-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }

    .py-xxl-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .py-xxl-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

    .py-xxl-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

    .py-xxl-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-xxl-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .py-xxl-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }

    .pt-xxl-0 {
        padding-top: 0 !important;
    }

    .pt-xxl-1 {
        padding-top: 0.25rem !important;
    }

    .pt-xxl-2 {
        padding-top: 0.5rem !important;
    }

    .pt-xxl-3 {
        padding-top: 1rem !important;
    }

    .pt-xxl-4 {
        padding-top: 1.5rem !important;
    }

    .pt-xxl-5 {
        padding-top: 3rem !important;
    }

    .pe-xxl-0 {
        padding-right: 0 !important;
    }

    .pe-xxl-1 {
        padding-right: 0.25rem !important;
    }

    .pe-xxl-2 {
        padding-right: 0.5rem !important;
    }

    .pe-xxl-3 {
        padding-right: 1rem !important;
    }

    .pe-xxl-4 {
        padding-right: 1.5rem !important;
    }

    .pe-xxl-5 {
        padding-right: 3rem !important;
    }

    .pb-xxl-0 {
        padding-bottom: 0 !important;
    }

    .pb-xxl-1 {
        padding-bottom: 0.25rem !important;
    }

    .pb-xxl-2 {
        padding-bottom: 0.5rem !important;
    }

    .pb-xxl-3 {
        padding-bottom: 1rem !important;
    }

    .pb-xxl-4 {
        padding-bottom: 1.5rem !important;
    }

    .pb-xxl-5 {
        padding-bottom: 3rem !important;
    }

    .ps-xxl-0 {
        padding-left: 0 !important;
    }

    .ps-xxl-1 {
        padding-left: 0.25rem !important;
    }

    .ps-xxl-2 {
        padding-left: 0.5rem !important;
    }

    .ps-xxl-3 {
        padding-left: 1rem !important;
    }

    .ps-xxl-4 {
        padding-left: 1.5rem !important;
    }

    .ps-xxl-5 {
        padding-left: 3rem !important;
    }

    .gap-xxl-0 {
        gap: 0 !important;
    }

    .gap-xxl-1 {
        gap: 0.25rem !important;
    }

    .gap-xxl-2 {
        gap: 0.5rem !important;
    }

    .gap-xxl-3 {
        gap: 1rem !important;
    }

    .gap-xxl-4 {
        gap: 1.5rem !important;
    }

    .gap-xxl-5 {
        gap: 3rem !important;
    }

    .row-gap-xxl-0 {
        row-gap: 0 !important;
    }

    .row-gap-xxl-1 {
        row-gap: 0.25rem !important;
    }

    .row-gap-xxl-2 {
        row-gap: 0.5rem !important;
    }

    .row-gap-xxl-3 {
        row-gap: 1rem !important;
    }

    .row-gap-xxl-4 {
        row-gap: 1.5rem !important;
    }

    .row-gap-xxl-5 {
        row-gap: 3rem !important;
    }

    .column-gap-xxl-0 {
        -moz-column-gap: 0 !important;
        column-gap: 0 !important;
    }

    .column-gap-xxl-1 {
        -moz-column-gap: 0.25rem !important;
        column-gap: 0.25rem !important;
    }

    .column-gap-xxl-2 {
        -moz-column-gap: 0.5rem !important;
        column-gap: 0.5rem !important;
    }

    .column-gap-xxl-3 {
        -moz-column-gap: 1rem !important;
        column-gap: 1rem !important;
    }

    .column-gap-xxl-4 {
        -moz-column-gap: 1.5rem !important;
        column-gap: 1.5rem !important;
    }

    .column-gap-xxl-5 {
        -moz-column-gap: 3rem !important;
        column-gap: 3rem !important;
    }

    .text-xxl-start {
        text-align: left !important;
    }

    .text-xxl-end {
        text-align: right !important;
    }

    .text-xxl-center {
        text-align: center !important;
    }
}

@media (min-width: 1200px) {
    .fs-1 {
        font-size: 2.5rem !important;
    }

    .fs-2 {
        font-size: 2rem !important;
    }

    .fs-3 {
        font-size: 1.75rem !important;
    }

    .fs-4 {
        font-size: 1.5rem !important;
    }
}

@media print {
    .d-print-inline {
        display: inline !important;
    }

    .d-print-inline-block {
        display: inline-block !important;
    }

    .d-print-block {
        display: block !important;
    }

    .d-print-grid {
        display: grid !important;
    }

    .d-print-inline-grid {
        display: inline-grid !important;
    }

    .d-print-table {
        display: table !important;
    }

    .d-print-table-row {
        display: table-row !important;
    }

    .d-print-table-cell {
        display: table-cell !important;
    }

    .d-print-flex {
        display: flex !important;
    }

    .d-print-inline-flex {
        display: inline-flex !important;
    }

    .d-print-none {
        display: none !important;
    }
}

@keyframes a {
    0% {
        opacity: 0;
        transform: scale(1.5)
    }

    to {
        opacity: 1;
        transform: scale(1)
    }
}

@keyframes b {
    0% {
        opacity: 1;
        transform: scale(1)
    }

    15% {
        opacity: 1;
        transform: scale(1.1)
    }

    to {
        opacity: 0;
        transform: scale(.5)
    }
}

@keyframes c {
    0% {
        transform: translate(-50%, -50%) rotate(0)
    }

    50% {
        transform: translate(-50%, -50%) rotate(-180deg)
    }

    to {
        transform: translate(-50%, -50%) rotate(-1turn)
    }
}

@keyframes d {
    0% {
        transform: scale(1)
    }

    10% {
        transform: scale(1.2) translateX(6px)
    }

    25% {
        transform: scale(1.3) translateX(8px)
    }

    40% {
        transform: scale(1.2) translateX(6px)
    }

    50% {
        transform: scale(1)
    }

    60% {
        transform: scale(.8) translateX(6px)
    }

    75% {
        transform: scale(.7) translateX(8px)
    }

    90% {
        transform: scale(.8) translateX(6px)
    }

    to {
        transform: scale(1)
    }
}

@keyframes e {
    0% {
        transform: scale(1)
    }

    10% {
        transform: scale(1.2) translateX(-6px)
    }

    25% {
        transform: scale(1.3) translateX(-8px)
    }

    40% {
        transform: scale(1.2) translateX(-6px)
    }

    50% {
        transform: scale(1)
    }

    60% {
        transform: scale(.8) translateX(-6px)
    }

    75% {
        transform: scale(.7) translateX(-8px)
    }

    90% {
        transform: scale(.8) translateX(-6px)
    }

    to {
        transform: scale(1)
    }
}

.drift-zoom-pane {
    background: rgba(0, 0, 0, .5);
    transform: translateZ(0);
    -webkit-transform: translateZ(0)
}

.drift-zoom-pane.drift-opening {
    animation: a .18s ease-out;
    -webkit-animation: a .18s ease-out
}

.drift-zoom-pane.drift-closing {
    animation: b .21s ease-in;
    -webkit-animation: b .21s ease-in
}

.drift-zoom-pane.drift-inline {
    border-radius: 75px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .3);
    height: 150px;
    position: absolute;
    width: 150px
}

.drift-loading .drift-zoom-pane-loader {
    animation: c 1.8s linear infinite;
    -webkit-animation: c 1.8s linear infinite;
    display: block;
    height: 20px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    width: 66px
}

.drift-zoom-pane-loader:after,
.drift-zoom-pane-loader:before {
    background: hsla(0, 0%, 100%, .9);
    border-radius: 20px;
    content: "";
    display: block;
    height: 20px;
    margin-top: -10px;
    position: absolute;
    top: 50%;
    width: 20px
}

.drift-zoom-pane-loader:before {
    animation: d 1.8s linear infinite;
    -webkit-animation: d 1.8s linear infinite;
    left: 0
}

.drift-zoom-pane-loader:after {
    animation: e 1.8s linear infinite;
    -webkit-animation: e 1.8s linear infinite;
    animation-delay: -.9s;
    -webkit-animation-delay: -.9s;
    right: 0
}

.drift-bounding-box {
    background-color: rgba(0, 0, 0, .4)
}

*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

:root {
    --gold: #C9A84C;
    --gold-light: #E8C97A;
    --gold-pale: #F5E8C0;
    --silver: #B0BEC5;
    --silver-light: #ECEFF1;
    --dark: #0E0E0E;
    --dark2: #1A1A1A;
    --dark3: #252525;
    --cream: #FAF7F0;
    --text-muted: #888;
}

body {
    font-family: 'DM Sans', sans-serif;
    background: var(--cream);
    color: var(--dark);
    overflow-x: hidden;
}

/* ─── SECTION WRAPPER ─── */
.sections-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 520px;
    gap: 0;
}

/* ══════════════════════════════
     SECTION 1 – GMB
  ══════════════════════════════ */
.gmb-section {
    background: var(--dark);
    position: relative;
    overflow: hidden;
    padding: 48px 48px 40px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    cursor: default;
}

/* Decorative orb */
.gmb-section::before {
    content: '';
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(201, 168, 76, 0.18) 0%, transparent 70%);
    top: -80px;
    right: -100px;
    pointer-events: none;
    transition: transform 0.6s ease;
}

.gmb-section:hover::before {
    transform: scale(1.15);
}

/* Fine grid overlay */
.gmb-section::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(201, 168, 76, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(201, 168, 76, 0.04) 1px, transparent 1px);
    background-size: 40px 40px;
    pointer-events: none;
}

.gmb-label {
    font-family: 'DM Sans', sans-serif;
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    color: var(--gold);
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
    z-index: 1;
}

.gmb-label::before {
    content: '';
    width: 28px;
    height: 1px;
    background: var(--gold);
}

.gmb-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2rem, 3.5vw, 3.2rem);
    font-weight: 300;
    color: #fff;
    line-height: 1.15;
    position: relative;
    z-index: 1;
    margin-top: 24px;
}

.gmb-title em {
    font-style: italic;
    color: var(--gold-light);
}

/* Star rating */
.gmb-rating {
    display: flex;
    align-items: center;
    gap: 12px;
    position: relative;
    z-index: 1;
    margin-top: 28px;
}

.stars {
    display: flex;
    gap: 3px;
}

.star {
    width: 16px;
    height: 16px;
    fill: var(--gold);
}

.star.half {
    fill: url(#halfGold);
}

.gmb-score {
    font-family: 'Cormorant Garamond', serif;
    font-size: 2rem;
    font-weight: 600;
    color: var(--gold-light);
    line-height: 1;
}

.gmb-count {
    font-size: 15px;
    color: var(--text-muted);
    margin-top: 3px;
}

/* Reviews carousel */
.gmb-reviews {
    position: relative;
    z-index: 1;
    margin-top: 28px;
    overflow: hidden;
    height: 90px;
}

.review-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    transform: translateY(12px);
    transition: opacity 0.5s, transform 0.5s;
    pointer-events: none;
}

.review-slide.active {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.review-text {
    font-size: 15px;
    color: rgba(255, 255, 255, 0.65);
    font-style: italic;
    line-height: 1.6;
    border-left: 2px solid var(--gold);
    padding-left: 14px;
}

.review-author {
    font-size: 11px;
    color: var(--gold);
    margin-top: 6px;
    font-weight: 500;
    letter-spacing: 0.08em;
}

/* GMB CTA */
.gmb-actions {
    display: flex;
    gap: 14px;
    align-items: center;
    position: relative;
    z-index: 1;
    margin-top: 32px;
}

.btn-gmb {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--gold);
    color: var(--dark);
    font-family: 'DM Sans', sans-serif;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    text-decoration: none;
    padding: 13px 24px;
    border: none;
    cursor: pointer;
    transition: background 0.25s, transform 0.2s;
}

.btn-gmb:hover {
    background: var(--gold-light);
    transform: translateY(-2px);
}

.btn-gmb-outline {
    background: transparent;
    border: 1px solid rgba(201, 168, 76, 0.4);
    color: var(--gold);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    padding: 12px 20px;
    cursor: pointer;
    transition: border-color 0.25s, color 0.25s;
    font-family: 'DM Sans', sans-serif;
}

.btn-gmb-outline:hover {
    border-color: var(--gold);
    color: var(--gold-light);
}

/* Review dots */
.review-dots {
    display: flex;
    gap: 6px;
    margin-top: 12px;
    position: relative;
    z-index: 1;
}

.rdot {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: rgba(201, 168, 76, 0.3);
    transition: background 0.3s, width 0.3s;
    cursor: pointer;
}

.rdot.active {
    background: var(--gold);
    width: 16px;
    border-radius: 3px;
}

/* Info rows */
.gmb-info {
    position: relative;
    z-index: 1;
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.gmb-info-row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 17px;
    color: rgba(255, 255, 255, 0.6);
    line-height: 1.5;
}

.gmb-info-row svg {
    flex-shrink: 0;
    margin-top: 1px;
}

.gmb-info-row a {
    color: rgba(255, 255, 255, 0.6);
    text-decoration: none;
}

.gmb-info-row a:hover {
    color: var(--gold);
}

.open-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: rgba(74, 222, 128, 0.12);
    color: #4ade80;
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.1em;
    padding: 2px 8px;
    border-radius: 2px;
    margin-left: 6px;
}

.open-dot {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #4ade80;
    animation: pulse-green 1.5s ease-in-out infinite;
}

/* Social icons */
.gmb-social {
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
    z-index: 1;
    margin-top: 16px;
}

.gmb-social-label {
    font-size: 11px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.social-icon {
    width: 32px;
    height: 32px;
    border: 1px solid rgba(201, 168, 76, 0.25);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, 0.5);
    text-decoration: none;
    transition: border-color 0.2s, color 0.2s, background 0.2s;
}

.social-icon:hover {
    border-color: var(--gold);
    color: var(--gold);
    background: rgba(201, 168, 76, 0.08);
}

/* ══════════════════════════════
     SECTION 2 – GOLD/SILVER RATES
  ══════════════════════════════ */
.rates-section {
    background: var(--cream);
    padding: 56px 48px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    overflow: hidden;
    border-left: 1px solid rgba(201, 168, 76, 0.2);
}

/* subtle watermark */
.rates-section::before {
    content: '₹';
    position: absolute;
    font-family: 'Cormorant Garamond', serif;
    font-size: 340px;
    font-weight: 300;
    color: rgba(201, 168, 76, 0.06);
    right: -40px;
    bottom: -60px;
    line-height: 1;
    pointer-events: none;
    user-select: none;
}

.rates-label {
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    color: var(--text-muted);
    display: flex;
    align-items: center;
    gap: 10px;
}

.rates-label::before {
    content: '';
    width: 28px;
    height: 1px;
    background: var(--text-muted);
}

/* Live badge */
.live-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #0a0a0a;
    color: #4ade80;
    font-size: 9px;
    font-weight: 500;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    padding: 4px 10px;
    border-radius: 2px;
}

.live-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #4ade80;
    animation: pulse-green 1.5s ease-in-out infinite;
}

@keyframes pulse-green {

    0%,
    100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.5;
        transform: scale(0.8);
    }
}

.rates-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-top: 20px;
}

.rates-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(1.8rem, 3vw, 2.8rem);
    font-weight: 300;
    line-height: 1.1;
    color: var(--dark);
}

.rates-title em {
    font-style: italic;
    color: var(--gold);
}

.rates-date {
    font-size: 11px;
    color: var(--text-muted);
    text-align: right;
    line-height: 1.6;
}

/* Metal cards */
.metals-grid {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 28px;
    position: relative;
    z-index: 1;
}

.metal-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 22px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    background: #fff;
    position: relative;
    overflow: hidden;
    transition: transform 0.2s, box-shadow 0.2s;
    cursor: pointer;
}

.metal-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
}

.metal-card::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
}

.metal-card.gold-card::before {
    background: var(--gold);
}

.metal-card.silver-card::before {
    background: var(--silver);
}


.metal-left {
    display: flex;
    align-items: center;
    gap: 16px;
}

.metal-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}

.gold-card .metal-icon {
    background: rgba(201, 168, 76, 0.12);
}

.silver-card .metal-icon {
    background: rgba(176, 190, 197, 0.18);
}



.metal-name {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--dark);
}

.metal-unit {
    font-size: 10px;
    color: var(--text-muted);
    font-weight: 400;
    margin-top: 1px;
    letter-spacing: 0.05em;
}

.metal-right {
    text-align: right;
}

.metal-price {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--dark);
    line-height: 1;
}

.metal-change {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    font-size: 11px;
    font-weight: 500;
    margin-top: 4px;
    padding: 2px 7px;
    border-radius: 2px;
}

.change-up {
    background: #d1fae5;
    color: #065f46;
}

.change-down {
    background: #fee2e2;
    color: #991b1b;
}

/* Mini sparkline */
.sparkline {
    margin-top: 4px;
}

/* Tabs: 22K / 24K toggle */
.karat-tabs {
    display: flex;
    gap: 0;
    border: 1px solid rgba(201, 168, 76, 0.3);
    width: fit-content;
    margin-top: 6px;
    margin-bottom: -4px;
    position: relative;
    z-index: 1;
}

.karat-tab {
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.1em;
    padding: 6px 14px;
    cursor: pointer;
    border: none;
    background: transparent;
    color: var(--text-muted);
    font-family: 'DM Sans', sans-serif;
    transition: background 0.2s, color 0.2s;
}

.karat-tab.active {
    background: var(--gold);
    color: var(--dark);
}

/* Last updated */
.rates-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 20px;
    position: relative;
    z-index: 1;
}

.last-updated {
    font-size: 11px;
    color: var(--text-muted);
}

.refresh-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 500;
    color: var(--gold);
    cursor: pointer;
    background: none;
    border: none;
    font-family: 'DM Sans', sans-serif;
    transition: color 0.2s;
    letter-spacing: 0.05em;
}

.refresh-btn:hover {
    color: var(--dark);
}

.refresh-icon {
    display: inline-block;
    transition: transform 0.4s;
}

.refresh-icon.spinning {
    animation: spin 0.5s linear;
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

/* ─── RESPONSIVE ─── */
@media (max-width: 860px) {
    .sections-wrap {
        grid-template-columns: 1fr;
    }

    .rates-section {
        border-left: none;
        border-top: 1px solid rgba(201, 168, 76, 0.2);
    }

    .gmb-section,
    .rates-section {
        padding: 44px 28px;
    }
}


:root {
    --white: #ffffff;
    --black: #000000;
    --primary: #C8102E;
    --secondary: #D7EB3A;
    --third: rgba(44, 129, 83, 1);
    --text: #5F615E;
    --text-2: #8A8C8A;
    --text-3: #ACAFAB;
    --text-4: #E4E4E4;
    --text-5: #FFFFFF80;
    --text-6: #00000080;
    --text-7: #B3907A;
    --bg: #E4E4E4;
    --bg-2: #F5F5F5;
    --bg-3: #021A62;
    --bg-4: #534696;
    --bg-5: #C8A07C;
    --bg-6: #B2CBEA;
    --bg-7: #EC6E1A;
    --bg-8: #FAFAFA;
    --bg-9: #F6F4F1;
    --bg-10: #C8102E12;
    --bg-11: #EEDFC6;
    --bg-12: #F7F7F7;
    --bg-13: #F8F8F8;
    --bg-14: #4F684C;
    --bg-15: #42514A;
    --bg-16: #F7EDE4;
    --bg-17: #FAFAFD;
    --line: #EDEDED;
    --line-2: #FFFFFF33;
    --line-3: #FFFFFF1A;
    --line-4: #FFFFFF80;
    --line-5: #FFFFFFB3;
    --line-6: #E7E7E7;
    --line-7: #E2E2E2;
    --line-8: #00000012;
    --line-9: #FFFFFF4D;
    --line-10: #ECECEC;
    --shadow-1: #A3A3A340;
    --linear-1: linear-gradient(180deg, rgba(246, 221, 190, 0) 0%, rgba(246, 221, 190, 0.5) 100%);
    --linear-2: linear-gradient(137.6deg, #C09C71 23.87%, #664B18 99.83%);
    --linear-3: linear-gradient(285.63deg, #4B2C17 5.45%, #905E3D 94.52%);
    --linear-4: linear-gradient(133.57deg, #FFF0D3 25.62%, #EBD1A2 100%);
    --linear-5: linear-gradient(138.03deg, #FFF3E5 23.68%, #FFCDA2 100%);
    --verified: #00BF43;
    --success: #28A745;
    --error: #ff4949;
}

.primary {
    --primary: #C8102E;
}

.primary-2 {
    --primary: #007a41;
}

.primary-3 {
    --primary: rgb(67, 107, 228);
}

.primary-4 {
    --primary: rgb(104, 91, 199);
}

.primary-5 {
    --primary: rgb(232, 83, 49);
}

.primary-6 {
    --primary: rgb(88, 126, 87);
}


html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    font-family: inherit;
    font-size: 100%;
    font-style: inherit;
    font-weight: inherit;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

/* Elements
-------------------------------------------------------------- */
html {
    margin-right: 0 !important;
    scroll-behavior: smooth;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: "Afacad", sans-serif;
    font-size: 16px;
    line-height: 22px;
    font-weight: 400;
    color: var(--text);
    background-color: var(--white);
}

body::-webkit-scrollbar {
    width: 5px;
}

body::-webkit-scrollbar-thumb {
    cursor: grab;
    background-color: var(--primary);
}

@media (max-width: 1199px) {
    body {
        padding-bottom: 81px;
    }
}

img {
    max-width: 100%;
    height: auto;
    transform: scale(1);
    vertical-align: middle;
    -ms-interpolation-mode: bicubic;
}

.row {
    margin-right: -16px;
    margin-left: -16px;
}

.row>* {
    padding-left: 16px;
    padding-right: 16px;
}

@media (min-width: 1200px) {
    .row {
        margin-right: -24px;
        margin-left: -24px;
    }

    .row>* {
        padding-left: 24px;
        padding-right: 24px;
    }
}

ul,
li {
    list-style-type: none;
    margin-bottom: 0;
    padding-left: 0;
    list-style: none;
}

table {
    width: 100%;
    overflow-x: auto;
    table-layout: auto;
    border-collapse: collapse;
}

td,
th {
    padding: 12px 16px;
}

@media (min-width: 1200px) {

    td,
    th {
        padding: 16px 24px;
    }
}

.container {
    max-width: 1472px;
    width: 100%;
    margin: auto;
    padding-left: 16px;
    padding-right: 16px;
}

@media (min-width: 1200px) {
    .container {
        max-width: 1488px;
        padding-left: 24px;
        padding-right: 24px;
    }
}

.container-full {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 0px 16px;
}

@media (min-width: 1200px) {
    .container-full {
        padding-left: 24px;
        padding-right: 24px;
    }
}

@media (min-width: 1600px) {
    .container-full {
        padding-left: 48px;
        padding-right: 48px;
    }
}

.container-full-2 {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 0px 16px;
}

@media (min-width: 1200px) {
    .container-full-2 {
        padding-left: 24px;
        padding-right: 24px;
    }
}

@media (min-width: 1600px) {
    .container-full-2 {
        padding-left: 40px;
        padding-right: 40px;
    }
}

.container-full-3 {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 0px 16px;
}

@media (min-width: 1200px) {
    .container-full-3 {
        padding-left: 24px;
        padding-right: 24px;
    }
}

@media (min-width: 1600px) {
    .container-full-3 {
        padding-left: 54px;
        padding-right: 54px;
    }
}

.container-full-4 {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 0px 16px;
}

@media (min-width: 1200px) {
    .container-full-4 {
        padding-left: 24px;
        padding-right: 24px;
    }
}

.container-layout-right {
    width: calc(100vw - (100vw - 1548px) / 2 - 4px);
    margin-right: unset;
    max-width: 100%;
    margin-left: auto;
    padding-left: 15px;
}

svg path {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

button {
    background: transparent;
    border: 0;
    display: inline-flex;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

/* Since FF19 lowers the opacity of the placeholder by default */
:-ms-input-placeholder {
    color: var(--secondary-2);
}

/* Typography
-------------------------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Afacad", sans-serif;
    text-rendering: optimizeLegibility;
    font-weight: 500;
    margin-bottom: 0;
    letter-spacing: 0;
    color: var(--black);
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: "Afacad", sans-serif;
    text-rendering: optimizeLegibility;
    font-weight: 400;
    margin-bottom: 0;
    letter-spacing: 0;
}

h1,
.h1 {
    font-size: clamp(32px, 5.5vw, 56px);
    line-height: clamp(44px, 6.5vw, 67px);
}

h2,
.h2 {
    font-size: clamp(28px, 3.2vw, 40px);
    line-height: clamp(32px, 3.2vw, 40px);
}

h2.type-semibold,
.h2.type-semibold {
    line-height: 120%;
    font-weight: 600;
}

h3,
.h3 {
    font-size: clamp(20px, 2.2vw, 32px);
    line-height: clamp(28px, 3vw, 43px);
}

h4,
.h4 {
    font-size: clamp(20px, 3vw, 24px);
    line-height: clamp(26px, 4vw, 32px);
}

h5,
.h5 {
    font-size: clamp(18px, 3vw, 20px);
    line-height: clamp(24px, 4vw, 27px);
}

h6,
.h6 {
    font-size: 18px;
    line-height: 24px;
}

.text-display {
    font-size: clamp(40px, 6vw, 70px);
    line-height: 100%;
}

.text-display-2 {
    font-size: clamp(32px, 5vw, 48px);
    line-height: 120%;
}

.text-display-3 {
    font-size: clamp(24px, 4.5vw, 40px);
    line-height: 95%;
}

.text-large {
    font-size: 16px;
    line-height: 22px;
}

.text-small {
    font-size: 14px;
    line-height: 20px;
}

.text-small-2 {
    font-size: 12px;
    line-height: 16px;
}

.text-small-3 {
    font-size: 10px;
    line-height: 14px;
}

.font-main {
    font-family: "Afacad", sans-serif;
}

.font-2 {
    font-family: "Dancing Script", cursive;
}


b,
strong {
    font-weight: bolder;
}

video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.font-sora {
    font-family: "Sora", sans-serif !important;
}

.fw-3 {
    font-weight: 300 !important;
}

.fw-4 {
    font-weight: 400 !important;
}

.fw-5 {
    font-weight: 500 !important;
}

.fw-6 {
    font-weight: 600 !important;
}

.fw-7 {
    font-weight: 700 !important;
}

.fw-8 {
    font-weight: 800 !important;
}

.fs-10 {
    font-size: 10px;
}

.fs-12 {
    font-size: 12px !important;
}

.fs-14 {
    font-size: 14px !important;
}

.fs-20 {
    font-size: 20px;
}

.fs-18 {
    font-size: 18px;
}

.fs-35 {
    font-size: 35px;
}

.lh-19 {
    line-height: 19px !important;
}

.lh-20 {
    line-height: 20px !important;
}

.lh-28 {
    line-height: 28px !important;
}

.lh-32 {
    line-height: 32px !important;
}

.fs-24 {
    font-size: 24px !important;
}

.text-black {
    color: var(--black) !important;
}

.text-instock {
    color: #2C8153 !important;
}

.text-primary {
    color: var(--primary) !important;
}

.text-third {
    color: var(--third) !important;
}

.text-secondary {
    color: var(--secondary) !important;
}

.text-white-2 {
    color: var(--white-2) !important;
}

.text-white_50 {
    color: rgba(255, 255, 255, 0.5019607843) !important;
}

.text-white_70 {
    color: rgba(255, 255, 255, 0.7019607843) !important;
}

.text-star {
    color: #EF9122;
}

.text-main {
    color: var(--text) !important;
}

.text-main-2 {
    color: var(--text-2) !important;
}

.text-main-3 {
    color: var(--text-3) !important;
}

.text-main-5 {
    color: var(--text-5) !important;
}

.text-main-6 {
    color: var(--text-6) !important;
}

.text-main-7 {
    color: var(--text-7) !important;
}

.text-price {
    color: #E85331 !important;
}

.text-star {
    color: #E69600 !important;
}

.outline {
    outline: 1px solid var(--line);
}

.line-black {
    border: 1px solid var(--black) !important;
}

.line {
    border: 1px solid var(--line);
}

.line-2 {
    border: 1px solid var(--line-8);
}

.line-bt-2 {
    border: 1px solid var(--line-2);
}

.line-bt-3 {
    border-bottom: 1px solid var(--line-3);
}

.line-tp {
    border-top: 1px solid var(--line);
}

.line-bt {
    border-bottom: 1px solid var(--line);
}

.line-y {
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}

.bg-primary {
    background-color: var(--primary) !important;
}

.bg-secondary {
    background-color: var(--secondary) !important;
}

.bg-line {
    background-color: var(--line) !important;
}

.bg-dark {
    background-color: var(--black);
}

.bg-line-3 {
    background-color: var(--line-3) !important;
}

.bg-min-white {
    background-color: var(--bg-8) !important;
}

.bg-rose-white {
    background-color: #FAF3F1;
}

.bg-white-smoke {
    background-color: var(--bg-2);
}

.bg-dark-blu {
    background-color: var(--bg-3) !important;
}

.bg-deep-violet {
    background-color: var(--bg-4) !important;
}

.bg-light-brown {
    background-color: var(--bg-5);
}

.bg-baby-blue {
    background-color: var(--bg-6);
}

.bg-baby-blue-2 {
    background-color: #ECF5FF;
}

.bg-baby-blue-3 {
    background-color: #EDF1FD;
}

.bg-blue-1 {
    background-color: rgb(178, 203, 234) !important;
}

.bg-ice-blue {
    background-color: #E5EFF0 !important;
}

.bg-vivid-orange {
    background-color: var(--bg-7);
}

.bg-light-purple {
    background-color: #D5D4FE !important;
}

.bg-dark-charcoal {
    background-color: #201E21 !important;
}

.bg-dark-jade {
    background-color: #114842 !important;
}

.bg-light-beige {
    background-color: #EEDFC6 !important;
}

.bg-sage-green {
    background-color: #71A46E !important;
}

.bg-tomato {
    background-color: #F55B31 !important;
}

.bg-honey-orange {
    background-color: #F3A729 !important;
}

.bg-dark-olive {
    background-color: #444828 !important;
}

.bg-dark-olive-2 {
    background-color: #4F684C !important;
}

.bg-hot-pink {
    background-color: #F56EB7 !important;
}

.bg-muted-violet {
    background-color: #51518D !important;
}

.bg-dusty-olive {
    background-color: #A6AB84 !important;
}

.bg-caramel {
    background-color: #C8A07C;
}

.bg-deep-orange {
    background-color: #EC6E1A;
}

.bg-baby-blue {
    background-color: #B2CBEA;
}

.bg-teal-blue {
    background-color: #277A9F;
}

.bg-medium-gray {
    background-color: #CFD0CA;
}

.bg-off-white {
    background-color: var(--bg-9) !important;
}

.bg-ghost-white {
    background-color: #FAFAFD;
}

.bg-deep-green {
    background-color: #42514A !important;
}

.bg-soft-peach {
    background-color: #F7EDE4 !important;
}

.bg-black-gray {
    background: linear-gradient(to right, #000000 50%, #888888 50%) !important;
}

.bg-black-green {
    background: linear-gradient(to right, #888888 50%, #4CAF50 50%) !important;
}

.bg-dusty-rose {
    background-color: #B3907A !important;
}

.bg-sand-white {
    background-color: #EFE7DA !important;
}

.bg-cosmic-purple {
    background-color: #685BC7 !important;
}

.bg-brown {
    background-color: #8b674d;
}

.text-stroke-white {
    -webkit-text-stroke: 2px var(--white);
    color: transparent;
}

.text-normal {
    text-transform: none !important;
}

.text-purple {
    color: var(--bg-4) !important;
}

a {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    text-decoration: none;
    cursor: pointer;
    display: inline-block;
    font-family: "Afacad", sans-serif;
    color: var(--black);
}

a:focus,
a:hover {
    text-decoration: none;
    outline: 0;
}

.link {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.link:hover {
    color: var(--primary) !important;
}

.link-secondary {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.link-secondary:hover {
    color: var(--secondary) !important;
}

.link-black {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.link-black:hover {
    color: var(--black) !important;
}

.link-purple {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.link-purple:hover {
    color: var(--bg-4) !important;
}

.grid-2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.grid-6 {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
}

.gap-4 {
    gap: 4px !important;
}

.gap-5 {
    gap: 5px !important;
}

.gap-6 {
    gap: 6px !important;
}

.gap-8 {
    gap: 8px;
}

.gap-10 {
    gap: 10px !important;
}

.gap-12 {
    gap: 12px !important;
}

.gap-13 {
    gap: 13px !important;
}

.gap-15 {
    gap: 15px;
}

.gap-16 {
    gap: 16px !important;
}

.gap-20 {
    gap: 20px;
}

.gap-24 {
    gap: 24px !important;
}

.gap-28 {
    gap: 28px !important;
}

.gap-30 {
    gap: 30px !important;
}

.gap-x-10 {
    column-gap: 10px !important;
}

.radius-3 {
    border-radius: 3px !important;
}

.radius-5 {
    border-radius: 5px !important;
}

.radius-10 {
    border-radius: 10px !important;
}

.radius-12 {
    border-radius: 12px !important;
}

.radius-16 {
    border-radius: 16px !important;
}

.radius-20 {
    border-radius: 20px !important;
}

.flat-spacing {
    padding-top: 112px;
    padding-bottom: 112px;
}

@media (max-width: 1024px) {
    .flat-spacing {
        padding-top: 80px;
        padding-bottom: 80px;
    }
}

@media (max-width: 767px) {
    .flat-spacing {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}

.flat-spacing-2 {
    padding-top: 118px;
    padding-bottom: 118px;
}

@media (max-width: 1024px) {
    .flat-spacing-2 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
}

@media (max-width: 767px) {
    .flat-spacing-2 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}

.flat-spacing-3 {
    padding-top: 80px;
    padding-bottom: 80px;
}

@media (max-width: 767px) {
    .flat-spacing-3 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}

[data-grid=grid-1] {
    display: grid;
    gap: 30px;
    grid-template-columns: 1fr;
}

[data-grid=grid-2] {
    display: grid;
    gap: 30px;
    grid-template-columns: 1fr 1fr;
}

[data-grid=grid-3] {
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(3, 1fr);
}

[data-grid=grid-4] {
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(4, 1fr);
}

[data-grid=grid-5] {
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(5, 1fr);
}

[data-grid=grid-6] {
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(6, 1fr);
}

[data-grid=grid-7] {
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(7, 1fr);
}

.grid-template-columns-2 {
    grid-template-columns: 1fr 1fr;
}

.tf-row-flex {
    display: flex;
    flex-direction: row;
    column-gap: 30px;
    row-gap: 30px;
}

.tf-grid-layout {
    display: grid;
    column-gap: 12px;
    row-gap: 32px;
}

.tf-grid-layout.tf-col-2 {
    grid-template-columns: 1fr 1fr;
}

.tf-grid-layout.tf-col-3 {
    grid-template-columns: repeat(3, 1fr);
}

.tf-grid-layout.tf-col-4 {
    grid-template-columns: repeat(4, 1fr);
}

.tf-grid-layout.tf-col-5 {
    grid-template-columns: repeat(5, 1fr);
}

.tf-grid-layout.tf-col-6 {
    grid-template-columns: repeat(6, 1fr);
}

.tf-grid-layout.tf-col-7 {
    grid-template-columns: repeat(7, 1fr);
}

.tf-grid-layout .wd-full {
    grid-column: 1/-1;
}

.tf-grid-layout .wd-2-cols {
    grid-column: span 2;
}

@media (min-width: 576px) {
    .tf-grid-layout.sm-col-2 {
        grid-template-columns: 1fr 1fr;
    }

    .tf-grid-layout.sm-col-3 {
        grid-template-columns: repeat(3, 1fr);
    }

    .tf-grid-layout.sm-col-4 {
        grid-template-columns: repeat(4, 1fr);
    }

    .tf-grid-layout.sm-col-5 {
        grid-template-columns: repeat(5, 1fr);
    }

    .tf-grid-layout.sm-col-6 {
        grid-template-columns: repeat(6, 1fr);
    }

    .tf-grid-layout.sm-col-7 {
        grid-template-columns: repeat(7, 1fr);
    }
}

@media (min-width: 768px) {
    .tf-grid-layout.md-col-2 {
        grid-template-columns: 1fr 1fr;
    }

    .tf-grid-layout.md-col-3 {
        grid-template-columns: repeat(3, 1fr);
    }

    .tf-grid-layout.md-col-4 {
        grid-template-columns: repeat(4, 1fr);
    }

    .tf-grid-layout.md-col-5 {
        grid-template-columns: repeat(5, 1fr);
    }

    .tf-grid-layout.md-col-6 {
        grid-template-columns: repeat(6, 1fr);
    }

    .tf-grid-layout.md-col-7 {
        grid-template-columns: repeat(7, 1fr);
    }
}

@media (min-width: 992px) {
    .tf-grid-layout {
        column-gap: 30px;
    }

    .tf-grid-layout.lg-col-2 {
        grid-template-columns: 1fr 1fr;
    }

    .tf-grid-layout.lg-col-3 {
        grid-template-columns: repeat(3, 1fr);
    }

    .tf-grid-layout.lg-col-4 {
        grid-template-columns: repeat(4, 1fr);
    }

    .tf-grid-layout.lg-col-5 {
        grid-template-columns: repeat(5, 1fr);
    }

    .tf-grid-layout.lg-col-6 {
        grid-template-columns: repeat(6, 1fr);
    }

    .tf-grid-layout.lg-col-7 {
        grid-template-columns: repeat(7, 1fr);
    }
}

@media (min-width: 1200px) {
    .tf-grid-layout {
        row-gap: 48px;
        column-gap: 48px;
    }

    .tf-grid-layout.row-xl-gap-40 {
        row-gap: 40px;
    }

    .tf-grid-layout.row-xl-gap-56 {
        row-gap: 56px;
    }

    .tf-grid-layout.xl-col-2 {
        grid-template-columns: 1fr 1fr;
    }

    .tf-grid-layout.xl-col-3 {
        grid-template-columns: repeat(3, 1fr);
    }

    .tf-grid-layout.xl-col-4 {
        grid-template-columns: repeat(4, 1fr);
    }

    .tf-grid-layout.xl-col-5 {
        grid-template-columns: repeat(5, 1fr);
    }

    .tf-grid-layout.xl-col-6 {
        grid-template-columns: repeat(6, 1fr);
    }

    .tf-grid-layout.xl-col-7 {
        grid-template-columns: repeat(7, 1fr);
    }
}

@media (min-width: 1440px) {
    .tf-grid-layout.xxl-col-2 {
        grid-template-columns: 1fr 1fr;
    }

    .tf-grid-layout.xxl-col-3 {
        grid-template-columns: repeat(3, 1fr);
    }

    .tf-grid-layout.xxl-col-4 {
        grid-template-columns: repeat(4, 1fr);
    }

    .tf-grid-layout.xxl-col-5 {
        grid-template-columns: repeat(5, 1fr);
    }

    .tf-grid-layout.xxl-col-6 {
        grid-template-columns: repeat(6, 1fr);
    }

    .tf-grid-layout.xxl-col-7 {
        grid-template-columns: repeat(7, 1fr);
    }
}

.overflow-unset {
    overflow: unset !important;
}

.sticky-top {
    position: sticky !important;
    z-index: 50;
    top: 15px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.wmax {
    width: max-content !important;
}

.cursor-not-allowed {
    cursor: not-allowed;
}

.cursor-auto {
    cursor: auto;
}

.z-1 {
    z-index: 1;
}

.z-5 {
    z-index: 5;
}

.text-line-clamp-1 {
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    display: -webkit-box !important;
    overflow: hidden;
}

.text-line-clamp-2 {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}

.text-line-clamp-3 {
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}

.aspect-ratio-0 {
    aspect-ratio: 0 !important;
}

.aspect-ratio-1 {
    aspect-ratio: 1/1 !important;
}

#scroll-top {
    position: fixed;
    display: block;
    width: 48px;
    height: 48px;
    line-height: 50px;
    border-radius: 4px;
    z-index: 1;
    border-radius: 50%;
    opacity: 0;
    visibility: hidden;
    cursor: pointer;
    overflow: hidden;
    z-index: 100;
    background-color: var(--main);
    border: 0;
    bottom: 92px;
    right: 20px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#scroll-top.show {
    opacity: 1;
    visibility: visible;
}

#scroll-top.type-1 {
    bottom: 140px;
}

#scroll-top:hover {
    transform: translateY(-5px);
    background-color: var(--primary);
}

/* Preload 
------------------------------------------- */
.preload-container {
    display: flex;
    position: relative;
    width: 100%;
    height: 100%;
    background: #ffffff;
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 99999999999;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.spinner {
    width: 60px;
    height: 60px;
    border: 3px solid transparent;
    border-top: 3px solid var(--primary);
    border-radius: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    animation: spin 1s infinite linear;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.br-line {
    width: 100%;
    height: 1px;
    display: inline-flex;
    background-color: var(--line);
}

.br-line.type-vertical {
    width: 1px;
    height: 16px;
}

.br-line.h-24 {
    height: 24px;
}

.opacity-10 {
    opacity: 0.1 !important;
}

.simpleParallax {
    height: 100%;
    width: 100%;
}

.simpleParallax img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.backdrop-ft-unset {
    backdrop-filter: unset !important;
}

.mb-2 {
    margin-bottom: 2px !important;
}

.mb-4 {
    margin-bottom: 4px !important;
}

.mb-7 {
    margin-bottom: 7px !important;
}

.mb-8 {
    margin-bottom: 8px !important;
}

.mb-20 {
    margin-bottom: 20px;
}

.mb-24 {
    margin-bottom: 24px !important;
}

.mb-32 {
    margin-bottom: 32px !important;
}

.mb-12 {
    margin-bottom: 12px !important;
}

.mb-14 {
    margin-bottom: 14px !important;
}

.mb-15 {
    margin-bottom: 15px !important;
}

.mb-16 {
    margin-bottom: 16px !important;
}

.mb-40 {
    margin-bottom: 40px !important;
}

.mt-30 {
    margin-top: 30px;
}

.lt-sp-nor {
    letter-spacing: -0.32px;
}

.letter-space-0 {
    letter-spacing: 0px !important;
}

.tf-swiper .swiper-slide {
    height: auto;
}

.tf-swiper .swiper-slide>* {
    height: 100%;
}

.mb_48 {
    margin-bottom: 48px !important;
}

.mb_32 {
    margin-bottom: 32px !important;
}

.mb_30 {
    margin-bottom: 30px;
}

.mb_16 {
    margin-bottom: 16px !important;
}

.mb_15 {
    margin-bottom: 15px !important;
}

.text-vertical {
    writing-mode: vertical-lr;
    transform: rotate(180deg);
}

.py-20 {
    padding-top: 20px;
    padding-bottom: 20px;
}

.cs-pointer {
    cursor: pointer;
}

.pt-30 {
    padding-top: 30px;
}

.max-width_1 {
    max-width: 1424px;
    width: 100%;
}

#goTop {
    position: fixed;
    padding: 0;
    bottom: 90px;
    right: 20px;
    width: 38px;
    height: 38px;
    background: var(--white);
    color: black;
    font-size: 20px;
    text-align: center;
    line-height: 50px;
    cursor: pointer;
    border: none;
    border-radius: 50%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
    box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.1019607843);
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#goTop .border-progress {
    position: absolute;
    top: -1px;
    left: -1px;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    border-radius: 50%;
    border: 1px solid #000;
    mask-image: conic-gradient(#000 var(--progress-angle, 0deg), transparent 0);
    -webkit-mask-image: conic-gradient(#000 var(--progress-angle, 0deg), transparent 0);
    content: "";
    z-index: 1;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#goTop.show {
    opacity: 1;
    visibility: visible;
}

#goTop .icon {
    font-size: 20px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    color: #000;
    animation: iconBounce 2s linear 0s infinite;
}

#goTop .icon-arrow-right-2 {
    transform: rotate(-90deg);
}

#goTop:hover {
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.5);
}

@media (min-width: 992px) {
    #goTop {
        right: 40px;
    }
}

@media (max-width: 1199px) {
    #goTop.pos1 {
        bottom: 200px;
    }
}

@media (max-width: 767px) {
    #goTop.pos1 {
        bottom: 230px;
    }
}

.initial-child-container {
    flex: 0 0 auto;
    display: flex;
    min-width: auto;
    flex-direction: row;
    align-items: center;
}

.marquee-wrapper {
    display: flex;
    animation: infiniteScroll 7s linear infinite;
    align-items: center;
    transition: animation-duration 300ms;
}

.min-w-unset {
    min-width: unset !important;
}

.opacity-100 {
    opacity: 1 !important;
}

.flex-1 {
    flex: 1;
}

@media (min-width: 1200px) {
    .flex-xl-1 {
        flex: 1 !important;
    }
}

@media (min-width: 576px) {
    .flex-sm-1 {
        flex: 1 !important;
    }
}

.h-unset {
    height: unset !important;
}

@media (min-width: 576px) {
    .h-sm-100 {
        height: 100% !important;
    }
}

@media (min-width: 1200px) {
    .gap-xl-64 {
        gap: 64px !important;
    }

    .gap-xl-40 {
        gap: 40px !important;
    }

    .h-xl-unset {
        height: unset !important;
    }
}

@media (min-width: 1440px) {
    .text-xxl-nowrap {
        white-space: nowrap !important;
    }
}

@media (min-width: 1600px) {
    .d-xxxl-flex {
        display: flex !important;
    }
}

.w-maxcontent {
    width: max-content !important;
}

@media (prefers-reduced-motion: reduce) {
    * {
        animation: none !important;
        transition: none !important;
    }
}

/*------------ Components ---------------- */
/*------------ header ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
header {
    position: sticky;
    z-index: 100;
    transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

header.header-sticky {
    background-color: var(--white);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.header-abs-1 {
    margin-bottom: -94px;
}

@media (max-width: 1199px) {
    .header-abs-1 {
        margin-bottom: -77px;
    }
}

.header-abs-2 {
    margin-bottom: -113px;
}

.header-abs-2 .item-link {
    padding-top: 45px;
    padding-bottom: 44px;
}

@media (max-width: 1199px) {
    .header-abs-2 {
        margin-bottom: -77px;
    }
}

.header-abs-3 {
    margin-bottom: -164px;
}

.header-abs-3 .logo-site {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: unset;
}

.header-abs-3 .logo-site img {
    height: 65px;
    width: 94px;
}

.header-abs-3 .logo-bottom {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: -2px;
}

.header-abs-3 .item-link {
    padding-top: 11px;
    padding-bottom: 11px;
    font-weight: normal;
}

.header-abs-3 .header-inner {
    border-top: 1px solid var(--line-3);
    border-bottom: 1px solid var(--line-3);
}

.header-abs-3.header-sticky {
    background-color: var(--black);
}

@media (min-width: 1200px) {
    .header-abs-3 .header-top {
        padding-top: 16px;
        padding-bottom: 24px;
    }

    .header-abs-3 .logo-bottom {
        gap: 18px;
    }
}

@media (max-width: 1199px) {
    .header-abs-3 {
        margin-bottom: -100px;
    }
}

.logo-site {
    display: flex;
}

.logo-site img {
    aspect-ratio: 2.5094339623;
}

.tf-topbar {
    padding-top: 8px;
    padding-bottom: 8px;
}

@media (min-width: 1200px) {
    .tf-topbar.type-space-2 {
        padding-top: 12px;
        padding-bottom: 12px;
    }

    .tf-topbar.type-space-3 {
        padding-top: 16px;
        padding-bottom: 16px;
    }

    .tf-topbar.type-space-3.sp-has_line_bt {
        padding-bottom: 15px;
    }
}

.topbar-top {
    padding-top: 8px;
    padding-bottom: 8px;
}

.topbar-center {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

.topbar-left {
    display: flex;
    align-items: center;
    gap: 24px;
}

.topbar-left .group-btn {
    gap: 12px;
}

.topbar-right {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 24px;
}

.topbar-option-list {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 24px;
}

.topbar-option-list .br-line {
    background-color: var(--white);
    opacity: 0.2;
    height: 16px;
    width: 1px;
}

.topbar-option-list .track {
    display: flex;
    align-items: center;
    gap: 6px;
}

.topbar-option-list .track .icon {
    font-size: 20px;
}

.text-logo {
    font-size: clamp(40px, 6vw, 56px);
    line-height: clamp(53px, 8vw, 75px);
    font-weight: 700;
}

.text-logo-mb {
    font-weight: 700;
    font-size: 40px;
    line-height: 53px;
}

.btn-mobile-menu {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 24px;
    width: 24px;
    position: relative;
}

.btn-mobile-menu span {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    display: block;
    width: 18px;
    height: 2px;
    background-color: var(--black);
    border-radius: 5px;
}

.btn-mobile-menu::after,
.btn-mobile-menu::before {
    content: "";
    position: absolute;
    width: 18px;
    height: 2px;
    background-color: var(--black);
    border-radius: 1px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.btn-mobile-menu::before {
    top: 5px;
}

.btn-mobile-menu::after {
    bottom: 5px;
}

.btn-mobile-menu.type-small {
    width: 20px;
    height: 20px;
}

.btn-mobile-menu.type-small>span {
    width: 16px;
}

.btn-mobile-menu.type-small::after,
.btn-mobile-menu.type-small::before {
    width: 16px;
}

.btn-mobile-menu.style-white span,
.btn-mobile-menu.style-white::after,
.btn-mobile-menu.style-white::before {
    background-color: var(--white);
}

.box-navigation.style-white .item-link {
    color: var(--white);
}

.box-navigation.style-white .item-link .icon {
    color: var(--white);
}

.box-navigation.style-white .menu-item:hover .item-link {
    color: var(--primary);
}

.box-navigation.style-white .menu-item:hover .item-link .icon {
    color: var(--primary);
}

.box-nav-menu {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 32px;
}

.menu-item:hover .item-link {
    color: var(--primary);
}

.menu-item:hover .item-link::after {
    display: block;
}

.menu-item:hover .item-link .icon {
    color: var(--primary);
    transform: rotate(180deg);
}

.menu-item:hover .sub-menu {
    transform: scale(1);
    pointer-events: all;
    opacity: 1;
    visibility: visible;
}

.item-link {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    padding-top: 35px;
    padding-bottom: 35px;
    position: relative;
}

.item-link .icon {
    font-size: 14px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    color: var(--black);
}

.item-link::after {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: calc(100% + 67px);
    height: 100%;
    display: none;
}

.sub-menu {
    position: absolute;
    top: 100%;
    background-color: var(--white);
    box-shadow: 0px 12px 46px 0px rgba(0, 0, 0, 0.1019607843);
    min-width: 200px;
    left: -31px;
    transform: scale(0.9);
    transform-origin: top;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.mega-menu {
    width: 100%;
    left: 0;
    padding: 56px 0px;
    max-height: calc(100vh + 70px);
    overflow: auto;
}

.mega-menu-item .menu-heading {
    margin-bottom: 24px;
}

.mega-menu-item .sub-menu_list,
.mega-menu-item .sub-menu_link {
    padding: 0;
}

.mega-menu-item .sub-menu_list {
    gap: 16px;
    display: grid;
}

.mega-menu-item .list-ver {
    gap: 24px;
}

.sub-menu_list {
    padding: 24px 0px;
}

.sub-menu_link {
    color: var(--text);
    padding: 8px 32px;
    display: flex;
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
}

.sub-menu_link:hover {
    color: var(--black);
}

.nav-icon-list {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 12px;
}

.nav-icon-list li {
    display: flex;
}

.nav-icon-list .shop-cart {
    position: relative;
    margin-right: 12px;
}

.nav-icon-list .count {
    width: 24px;
    height: 24px;
    display: block;
    border-radius: 50%;
    background: var(--primary);
    position: absolute;
    top: -12px;
    right: -12px;
    font-weight: 700;
    font-size: 12px;
    line-height: 16px;
    color: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
}

@media (min-width: 768px) {
    .nav-icon-list .shop-cart {
        margin-right: 12px;
    }
}

@media (min-width: 1200px) {
    .nav-icon-list {
        gap: 24px;
    }
}

@media (max-width: 1199px) {
    .nav-icon-list .count {
        width: 20px;
        height: 20px;
        font-size: 12px;
        line-height: 16px;
        font-weight: normal;
    }
}

.nav-icon-item {
    display: flex;
}

.nav-icon-item .count {
    top: -8px;
    right: -8px;
}

.nav-icon-item .icon {
    font-size: 24px;
}

.nav-icon-item-2 {
    display: flex;
    align-items: center;
    gap: 12px;
    position: relative;
}

.nav-icon-item-2 .icon {
    font-size: 24px;
}

.nav-icon-item-2 .nav-icon-item_sub {
    display: grid;
}

.nav-icon-item-2 .text-sub {
    color: var(--line-4);
}

.nav-icon-item-2 .count {
    top: -8px;
    right: -8px;
}

@media (min-width: 768px) {
    .nav-icon-item-2 .icon {
        font-size: 40px;
    }
}

@media (max-width: 1199px) {
    .tf-header {
        padding-top: 12px;
        padding-bottom: 12px;
    }
}

.row-demo {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 24px;
    overflow: visible;
    margin-bottom: 40px;
}

@media (min-width: 1440px) {
    .row-demo {
        margin-bottom: 48px;
    }
}

.demo-item {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 12px;
    padding: 8px 8px 12px;
    backdrop-filter: blur(4px);
    border: 1px solid var(--line);
    background-color: var(--bg-8);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.demo-item .demo-img {
    position: relative;
}

.demo-item .demo-img img {
    aspect-ratio: 0.8679245283;
}

.demo-item .demo-name {
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.demo-item:hover {
    border-color: var(--primary);
}

.demo-item:hover .demo-name {
    color: var(--primary);
}

.demo-coming {
    backdrop-filter: blur(4px);
    border: 1px solid var(--line);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.demo-coming .text {
    position: absolute;
    z-index: 3;
    bottom: 10px;
}

.demo-coming::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 20.58%, rgba(0, 0, 0, 0.8) 102.91%);
    z-index: 2;
}

.header-right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.tf-header .form_search {
    max-width: 440px;
    width: 100%;
    margin-right: 20px;
}

@media (min-width: 1200px) {
    .tf-header .form_search {
        margin-right: 40px;
        margin-left: 40px;
    }
}

@media (min-width: 1440px) {
    .tf-header .form_search {
        margin-left: 80px;
    }
}

.tf-header.style-3 .item-link {
    padding-top: 24px;
    padding-bottom: 40px;
}

.tf-header.style-3.header-fixed .item-link {
    padding-top: 24px;
    padding-bottom: 24px;
}

.tf-header.style-3.style-3_2 .item-link {
    padding-top: 24px;
    padding-bottom: 24px;
}

.tf-header.style-3.style-3_2.header-sticky .header-inner .br-line {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-header.style-3.style-3_2.header-sticky .header-inner .br-line.last {
    background-color: transparent;
}

.tf-header.style-4 .item-link {
    padding-top: 11px;
    padding-bottom: 12px;
}

.tf-header.style-5 {
    background-color: var(--bg-3);
}

.tf-header.style-5 .header-right {
    gap: 30px;
}

.tf-header.style-5 .item-link {
    padding-top: 11px;
    padding-bottom: 12px;
}

.tf-header.style-6 {
    background-color: var(--bg-4);
}

.tf-header.style-6 .item-link {
    padding-top: 32px;
    padding-bottom: 32px;
}

.tf-header.style-6 .form_search {
    max-width: 368px;
}

.tf-header.style-6 .form_search input {
    padding-top: 13px;
    padding-bottom: 13px;
}

.tf-header.style-7 .item-link {
    padding-top: 23px;
    padding-bottom: 23px;
}

@media (min-width: 1200px) {
    .tf-header.style-2 {
        padding: 27px 0px;
    }

    .tf-header.style-3 .header-top {
        padding: 32px 0px 31px 0px;
    }

    .tf-header.style-4 .header-top {
        padding: 31px 0px 26px 0px;
    }

    .tf-header.style-5 .header-top {
        padding: 27px 0px;
    }
}

@media (min-width: 1440px) {
    .tf-header.style-5 .nav-icon-list {
        gap: 33px;
    }
}

@media (min-width: 1600px) {
    .tf-header.style-5 .header-right {
        gap: 74px;
        margin-left: -48px;
    }

    .tf-header.style-6 .form_search {
        margin-right: 44px;
        margin-left: 103px;
    }
}

.header-inner_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.header-inner_wrap .col-left {
    display: flex;
    align-items: center;
    gap: 40px;
}

.header-inner_wrap .col-right {
    display: flex;
    align-items: center;
    gap: 12px;
}

.header-inner_wrap .col-right .icon {
    font-size: 20px;
    color: var(--primary);
}

.header-inner_wrap>.br-line {
    height: 24px;
}

.header-inner_wrap.wrap-2 .col-left {
    gap: 32px;
}

.nav-category-wrap {
    position: relative;
}

.box-nav-category {
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.0784313725);
    padding-top: 18px;
    padding-bottom: 18px;
    position: absolute;
    left: 0;
    top: calc(100% + 12px);
    min-width: 272px;
    background-color: var(--white);
    transform: translateY(10px);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.box-nav-category.active {
    transform: translateY(0px);
    opacity: 1;
    visibility: visible;
}

@media (min-width: 1440px) {
    .box-nav-category {
        left: -25px;
    }
}

.box-nav-category.type-2 {
    left: 0;
    top: 100%;
}

.nav-category_link {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 24px;
    color: var(--text);
}

.nav-category_link .icon {
    font-size: 20px;
}

.nav-category_link:hover {
    color: var(--primary);
}

.btn-nav-drop {
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
}

.btn-nav-drop .name-category {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.btn-nav-drop:hover,
.btn-nav-drop.active {
    color: var(--primary);
}

.btn-nav-drop:hover .btn-mobile-menu::after,
.btn-nav-drop:hover .btn-mobile-menu::before,
.btn-nav-drop:hover .btn-mobile-menu>span,
.btn-nav-drop.active .btn-mobile-menu::after,
.btn-nav-drop.active .btn-mobile-menu::before,
.btn-nav-drop.active .btn-mobile-menu>span {
    background-color: var(--primary);
}

.btn-nav-drop:hover .name-category,
.btn-nav-drop.active .name-category {
    color: var(--primary);
}

.btn-nav-drop.style-2 {
    min-width: 272px;
    color: var(--white);
    background-color: var(--primary);
    padding-top: 11px;
    padding-bottom: 12px;
    padding-left: 24px;
    padding-right: 24px;
    border-radius: 16px 16px 0px 0px;
}

.btn-nav-drop.style-2 .icon {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.btn-nav-drop.style-2 .name-category {
    color: var(--white);
    flex: 1;
}

.btn-nav-drop.style-2:hover,
.btn-nav-drop.style-2.active {
    color: var(--white);
}

.btn-nav-drop.style-2:hover .btn-mobile-menu::after,
.btn-nav-drop.style-2:hover .btn-mobile-menu::before,
.btn-nav-drop.style-2:hover .btn-mobile-menu>span,
.btn-nav-drop.style-2.active .btn-mobile-menu::after,
.btn-nav-drop.style-2.active .btn-mobile-menu::before,
.btn-nav-drop.style-2.active .btn-mobile-menu>span {
    background-color: var(--white);
}

.btn-nav-drop.style-2:hover .name-category,
.btn-nav-drop.style-2.active .name-category {
    color: var(--white);
}

/* Menu Mobile */
.canvas-mb {
    width: 325px !important;
}

.canvas-mb .icon-close-popup {
    position: absolute;
    right: 0;
    top: 0;
    padding: 10px;
}

.canvas-mb .canvas-header {
    padding-bottom: 32px;
    position: relative;
}

.canvas-mb .canvas-header .br-line {
    position: absolute;
    height: 1px;
    background-color: var(--line);
    left: 24px;
    right: 24px;
    bottom: 0px;
    width: auto;
}

.canvas-mb .canvas-header .icon {
    font-weight: 600;
}

.canvas-mb .canvas-body {
    padding-top: 32px;
    padding-bottom: 16px;
    display: flex;
    flex-direction: column;
}

.canvas-mb .canvas-body>*:not(:last-child) {
    margin-bottom: 32px;
}

.canvas-mb .mb-content-top {
    flex: 1;
}

.canvas-mb .canvas-footer {
    display: flex;
    gap: 16px;
    box-shadow: unset;
}

.canvas-mb .canvas-footer .br-line {
    width: 1px;
    height: 24px;
    background-color: var(--line);
}

.canvas-mb .group-btn {
    gap: 12px;
}

.canvas-mb .group-btn .icon {
    font-weight: 600;
}

.canvas-mb .group-btn>* {
    width: 100%;
}

.flow-us-wrap .title {
    margin-bottom: 16px;
}

.payment-wrap .title {
    margin-bottom: 8px;
}

.mb-menu-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.mb-menu-link .icon {
    font-size: 14px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    transform: rotate(0deg);
}

.mb-menu-link:not(.collapsed) {
    padding-bottom: 24px;
}

.mb-menu-link:not(.collapsed) .icon {
    transform: rotate(180deg);
}

.sub-nav-link .icon {
    font-size: 14px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    transform: rotate(0deg);
}

.sub-nav-link:not(.collapsed) {
    padding-bottom: 24px;
}

.sub-nav-link:not(.collapsed) .icon {
    transform: rotate(180deg);
}

.nav-ul-mb li:not(:last-child) .mb-menu-link {
    padding-bottom: 24px;
}

.nav-ul-mb li:not(:last-child) .sub-nav-menu:not(.sub-menu-level-2) {
    margin-bottom: 24px;
}

.sub-nav-menu {
    padding-left: 16px;
    padding-top: 4px;
    padding-bottom: 4px;
    margin-left: 16px;
    border-left: 1px solid var(--line);
}

.sub-nav-menu .sub-nav-link {
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    color: var(--text);
    display: flex;
    padding-top: 8px;
    padding-bottom: 8px;
    align-items: center;
    justify-content: space-between;
}

.sub-nav-menu .sub-nav-link .icon {
    font-size: 14px;
}

.sub-nav-menu .sub-nav-link.active {
    font-weight: 700;
    color: var(--black);
}

.payment-method-list {
    display: flex;
    align-items: center;
    gap: 8px;
}

.payment-method-list li {
    max-width: 50px;
}

.box-support-online {
    display: flex;
    align-items: center;
    gap: 16px;
}

.box-support-online .icon {
    font-size: 24px;
}

.box-support-online .br-line {
    height: 52px;
}

.box-support-online .sp-wrap {
    display: grid;
}

.tf-header.header-fixed {
    top: 0;
    left: 0;
    right: 0;
    position: fixed;
    opacity: 0;
    z-index: 100;
    -webkit-transform: translateY(-120%);
    -khtml-transform: translateY(-120%);
    -moz-transform: translateY(-120%);
    -ms-transform: translateY(-120%);
    -o-transform: translateY(-120%);
    transform: translateY(-120%);
    -webkit-transition: 0.6s cubic-bezier(0.24, 0.74, 0.58, 1);
    -khtml-transition: 0.6s cubic-bezier(0.24, 0.74, 0.58, 1);
    -moz-transition: 0.6s cubic-bezier(0.24, 0.74, 0.58, 1);
    -ms-transition: 0.6s cubic-bezier(0.24, 0.74, 0.58, 1);
    -o-transition: 0.6s cubic-bezier(0.24, 0.74, 0.58, 1);
    transition: 0.6s cubic-bezier(0.24, 0.74, 0.58, 1);
    visibility: hidden;
    box-shadow: 0px 4px 18px rgba(0, 0, 0, 0.08);
    pointer-events: none;
    background-color: var(--white);
}

.tf-header.header-fixed.is-fixed {
    -webkit-transform: translateY(0);
    -khtml-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
    visibility: visible;
    opacity: 1;
    pointer-events: all;
}

.demo-label {
    position: absolute;
    top: 10px;
    right: 10px;
    display: flex;
    gap: 5px;
}

.demo-label span {
    font-size: 14px;
    line-height: 20px;
    padding: 0px 8px;
    border-radius: 4px;
    background-color: var(--primary);
    color: var(--white);
}

.demo-label .demo-hot {
    background-color: #62d15e;
}

/*------------ footer ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.tf-footer.style-color-white .footer-heading {
    color: var(--white);
}

.tf-footer.style-color-white .footer-heading-mobile::before,
.tf-footer.style-color-white .footer-heading-mobile::after {
    background-color: var(--white);
}

.tf-footer.style-color-white .footer-menu-list a {
    color: var(--text-5);
}

.tf-footer.style-color-white .footer-contact .br-line {
    background-color: #FFFFFF;
    opacity: 0.1;
}

.tf-footer.style-color-white .footer-contact .icon,
.tf-footer.style-color-white .footer-contact a {
    color: var(--text-5);
}

.tf-footer.style-color-white .inner-bottom {
    border-color: var(--line-3);
}

.tf-footer.style-color-white .list-hor .br-line {
    background-color: var(--text);
}

.tf-footer.style-3 {
    background-color: var(--bg-4);
    position: relative;
    margin-top: 18px;
}

.tf-footer.style-3 .inner-bottom {
    border-color: var(--line-3);
}

.tf-footer.style-3 .ft-item-img {
    position: absolute;
    top: -18px;
    left: 0;
    right: 0;
}

.tf-footer.style-3 .ft-item-img img {
    min-height: 50px;
}

.tf-footer.style-3 .footer-heading {
    color: var(--white);
}

.tf-footer.style-3 .footer-heading-mobile::before,
.tf-footer.style-3 .footer-heading-mobile::after {
    background-color: var(--white);
}

.tf-footer.style-3 .footer-menu-list a {
    color: var(--white);
}

.tf-footer.style-3 .footer-contact .br-line {
    background-color: #FFFFFF;
    opacity: 0.1;
}

.tf-footer.style-3 .footer-contact .icon,
.tf-footer.style-3 .footer-contact a {
    color: var(--white);
}

.ft_logo {
    display: grid;
    gap: 8px;
}

.footer-infor {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

@media (min-width: 1200px) {
    .footer-infor {
        gap: 24px;
    }
}

@media (min-width: 1440px) {
    .footer-infor {
        max-width: 324px;
        width: 100%;
    }
}

.footer-heading {
    font-weight: normal;
    margin-bottom: 12px;
    font-size: 24px;
    line-height: 32px;
    color: var(--black);
}

@media (min-width: 1200px) {
    .footer-heading {
        margin-bottom: 24px;
    }
}

.footer-menu-list {
    display: grid;
    gap: 12px;
}

.footer-menu-list a {
    color: var(--text);
}

.footer-contact {
    display: grid;
    gap: 16px;
}

.footer-contact li {
    display: flex;
    align-items: center;
    gap: 8px;
}

.footer-contact .br-line {
    width: 1px;
    height: 16px;
    background-color: var(--line);
}

.footer-body {
    padding-top: 90px;
    padding-bottom: 56px;
    position: relative;
    z-index: 4;
}

.footer-body .footer-contact {
    margin-bottom: 24px;
}

@media (max-width: 1024px) {
    .footer-body {
        padding-top: 80px;
    }
}

@media (max-width: 767px) {
    .footer-body {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}

.footer-newsletter .caption {
    margin-bottom: 16px;
}

@media (max-width: 575px) {
    .footer-heading-mobile {
        display: block;
        position: relative;
        padding-right: 20px;
        line-height: 24px;
    }

    .footer-heading-mobile::after {
        position: absolute;
        content: "";
        right: 0px;
        top: 50%;
        transform: translateY(-50%);
        width: 14px;
        height: 2px;
        background-color: var(--black);
        transition: 0.25s ease-in-out;
    }

    .footer-heading-mobile::before {
        position: absolute;
        content: "";
        right: 5px;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 2px;
        height: 14px;
        background-color: var(--black);
        transition: 0.25s ease-in-out;
    }

    .footer-heading-mobile.text-white::after,
    .footer-heading-mobile.text-white::before {
        background-color: var(--white);
    }

    .footer-col-block:not(:last-child) .tf-collapse-content {
        margin-bottom: 30px;
    }

    .footer-col-block:last-child .tf-collapse-content {
        margin-top: 20px;
    }

    .footer-col-block:last-child .footer-heading {
        margin-bottom: 0px;
    }

    .footer-col-block.open .footer-heading-mobile::before {
        opacity: 0;
    }

    .footer-col-block.open .footer-heading-mobile::after {
        transform: translate(0%, -50%) rotate(180deg);
    }

    .footer-col-block .tf-collapse-content {
        display: none;
    }
}

.footer-bottom {
    position: relative;
    z-index: 5;
}

.footer-bottom .inner-bottom {
    padding: 32px 0px;
    border-top: 1px solid var(--line);
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 15px;
}

@media (max-width: 767px) {
    .footer-bottom .inner-bottom {
        justify-content: center;
    }

    .footer-bottom .inner-bottom>* {
        width: 100%;
        justify-content: center;
    }
}

.footer-bottom .tf-currencies .dropdown>.dropdown-menu {
    transform: translate3d(0px, -26px, 0px) !important;
    inset: auto auto 0px 0px !important;
}

.footer-bottom .tf-currencies .dropdown>.dropdown-menu::after {
    top: unset;
    transform: translate(-50%, 50%) rotate(45deg);
    bottom: 0;
}

@media (min-width: 992px) {

    .footer-bottom .inner-bottom>*:first-child,
    .footer-bottom .inner-bottom>*:last-child {
        flex: 1;
    }

    .footer-bottom .inner-bottom>*:last-child {
        justify-content: end;
    }
}

@media (min-width: 1200px) {

    .footer-wrap-1,
    .footer-wrap-2 {
        width: max-content;
    }
}

.footer-2 {
    background-color: var(--bg-8);
}

.footer-2 .footer-top {
    padding-bottom: 32px;
}

.footer-2 .footer-body {
    padding-top: 48px;
    padding-bottom: 48px;
}

.footer-2 .footer-bottom {
    padding-top: 32px;
}

@media (max-width: 1199px) {
    .footer-2 .footer-body {
        padding-top: 32px;
        padding-bottom: 32px;
    }
}

.footer-body_inner {
    display: flex;
    gap: 40px;
}

.footer-body_inner>*:not(.br-lin) {
    flex: 1;
}

.footer-body_inner .br-lin {
    border-right: 1px solid var(--line);
}

.footer-title {
    padding-bottom: 30px;
}

/*------------ slider banner ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.sw-dot-default {
    margin-top: 24px;
}

.sw-dot-default .swiper-pagination-bullet {
    width: 14px;
    height: 14px;
    background-color: transparent;
    position: relative;
    border: 1px solid transparent;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    opacity: 1;
}

.sw-dot-default .swiper-pagination-bullet::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--text-2);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.sw-dot-default .swiper-pagination-bullet.swiper-pagination-bullet-active {
    border: 1px solid var(--black);
}

.sw-dot-default .swiper-pagination-bullet.swiper-pagination-bullet-active::before {
    background-color: var(--black);
}

@media (max-width: 767px) {
    .sw-dot-default .swiper-pagination-bullet {
        width: 16px;
        height: 16px;
    }

    .sw-dot-default .swiper-pagination-bullet::before {
        width: 6px;
        height: 6px;
    }
}

.sw-dot-default.style-white .swiper-pagination-bullet.swiper-pagination-bullet-active {
    border: 1px solid var(--white);
}

.sw-dot-default.style-white .swiper-pagination-bullet.swiper-pagination-bullet-active::before {
    background-color: var(--white);
}

.sw-dot-default.style-white .swiper-pagination-bullet::before {
    background-color: rgba(255, 255, 255, 0.6);
}

.sw-dot-default.style-primary .swiper-pagination-bullet.swiper-pagination-bullet-active {
    border: 1px solid var(--primary);
}

.sw-dot-default.style-primary .swiper-pagination-bullet.swiper-pagination-bullet-active::before {
    background-color: var(--primary);
}

.sw-dot-default.style-primary .swiper-pagination-bullet::before {
    background-color: var(--text-2);
}

.sw-dot-default.type-small {
    gap: 5px;
}

.sw-dot-default.type-small .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
}

.sw-dot-default.type-small .swiper-pagination-bullet::before {
    width: 4px;
    height: 4px;
    background-color: #AFAFAF;
}

.sw-dot-default.type-small .swiper-pagination-bullet.swiper-pagination-bullet-active {
    border: 1px solid var(--black);
}

.sw-dot-default.type-small .swiper-pagination-bullet.swiper-pagination-bullet-active::before {
    background-color: var(--black);
}

@media (min-width: 1200px) {
    .sw-dot-default {
        margin-top: 35px;
    }

    .sw-dot-default.type-space-2 {
        margin-top: 40px;
    }
}

@media (min-width: 1440px) {
    .sw-dot-default {
        margin-top: 56px;
    }
}

.sw-dot-default-2 {
    display: flex;
    gap: 8px;
    justify-content: center;
    margin-top: 24px;
}

.sw-dot-default-2 .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background-color: var(--black);
    position: relative;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    opacity: 0.16;
}

.sw-dot-default-2 .swiper-pagination-bullet.swiper-pagination-bullet-active {
    opacity: 1;
}

.sw-dot-default-2.style-white .swiper-pagination-bullet {
    background-color: var(--white);
}

.sw-dot-default-2.style-primary .swiper-pagination-bullet {
    background-color: var(--primary);
}

@media (min-width: 1200px) {
    .sw-dot-default-2 {
        margin-top: 32px;
    }
}

.tf-sw-nav {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: var(--white);
    color: var(--black);
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-sw-nav .icon {
    font-size: 20px;
}

.tf-sw-nav:hover {
    background-color: var(--black);
    color: var(--white);
}

.tf-sw-nav.style-2 {
    border: 1px solid var(--line);
}

.tf-sw-nav.style-2:hover {
    background-color: var(--black);
    border-color: var(--black);
    color: var(--white);
}

.tf-sw-nav.style-2.hv-primary:hover {
    background-color: var(--primary);
    border-color: var(--primary);
    color: var(--white);
}

.tf-sw-nav.hover-primary:hover {
    background-color: var(--primary);
    color: var(--white);
}

.tf-sw-nav.swiper-button-disabled {
    pointer-events: none;
    opacity: 0.5;
}

@media (min-width: 1600px) {
    .tf-sw-nav {
        width: 70px;
        height: 70px;
    }
}

@media (min-width: 1200px) {
    .tf-sw-nav.type-small {
        width: 48px;
        height: 48px;
    }

    .tf-sw-nav.type-small-2 {
        width: 64px;
        height: 64px;
    }

    .tf-sw-nav.type-small-2 .icon {
        font-size: 24px;
    }

    .tf-sw-nav.type-small-3 {
        width: 56px;
        height: 56px;
    }

    .tf-sw-nav.type-small-3 .icon {
        font-size: 24px;
    }

    .tf-sw-nav .icon {
        font-size: 24px;
    }
}

@media (max-width: 1199px) {
    .tf-sw-nav.type-small {
        width: 38px;
        height: 38px;
    }
}

.tf-btn-swiper-main {
    position: relative;
}

.tf-btn-swiper-main .tf-sw-pagination {
    position: absolute;
    bottom: 15px;
    z-index: 2;
}

.tf-btn-swiper-main .tf-sw-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

.tf-btn-swiper-main .tf-sw-nav.nav-next-swiper {
    right: 25px;
}

.tf-btn-swiper-main .tf-sw-nav.nav-prev-swiper {
    left: 25px;
}

.tf-btn-swiper-main.pst-2 .sw-dot-default {
    position: unset;
}

.tf-btn-swiper-main.pst-2 .tf-sw-nav {
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

.tf-btn-swiper-main.pst-2 .tf-sw-nav.nav-next-swiper {
    right: unset;
    left: calc(100% + 32px);
}

.tf-btn-swiper-main.pst-2 .tf-sw-nav.nav-prev-swiper {
    left: unset;
    right: calc(100% + 32px);
}

.tf-btn-swiper-main.pst-3 .sw-dot-default {
    position: unset;
}

.tf-btn-swiper-main.pst-3 .tf-sw-nav {
    top: 50%;
    transform: translateY(calc(-50% - 42px));
    z-index: 2;
}

.tf-btn-swiper-main.pst-3 .tf-sw-nav.nav-next-swiper {
    right: 15px;
}

.tf-btn-swiper-main.pst-3 .tf-sw-nav.nav-prev-swiper {
    left: 15px;
}

.tf-btn-swiper-main.pst-5 .tf-sw-nav {
    position: unset;
    transform: unset;
}

.tf-btn-swiper-main.pst-5 .band-swiper {
    position: absolute;
    bottom: 24px;
    right: 24px;
    gap: 12px;
}

@media (min-width: 576px) {
    .tf-btn-swiper-main.pst-5 .tf-sw-nav {
        display: flex !important;
    }
}

@media (min-width: 1440px) {
    .tf-btn-swiper-main.pst-2 .tf-sw-nav {
        transform: translateY(calc(50% - 70px));
    }

    .tf-btn-swiper-main.pst-2 .tf-sw-nav.nav-next-swiper {
        left: calc(100% + 32px);
    }

    .tf-btn-swiper-main.pst-2 .tf-sw-nav.nav-prev-swiper {
        right: calc(100% + 32px);
    }
}

@media (min-width: 1200px) {
    .tf-btn-swiper-main .tf-sw-pagination {
        bottom: 40px;
    }

    .tf-btn-swiper-main .tf-sw-nav.nav-next-swiper {
        right: 48px;
    }

    .tf-btn-swiper-main .tf-sw-nav.nav-prev-swiper {
        left: 48px;
    }
}

@media (min-width: 1800px) {
    .tf-btn-swiper-main.pst-3 .tf-sw-nav.nav-next-swiper {
        right: unset;
        left: calc(100% + 32px);
    }

    .tf-btn-swiper-main.pst-3 .tf-sw-nav.nav-prev-swiper {
        left: unset;
        right: calc(100% + 32px);
    }

    .tf-btn-swiper-main.pst-4 .tf-sw-nav.nav-next-swiper {
        right: unset;
        left: calc(100% + 40px);
    }

    .tf-btn-swiper-main.pst-4 .tf-sw-nav.nav-prev-swiper {
        left: unset;
        right: calc(100% + 40px);
    }
}

@media (max-width: 1799px) {
    .tf-btn-swiper-main .tf-sw-nav {
        display: none !important;
    }
}

.sw-dot-default {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}

.sw-dot-default.swiper-pagination-lock {
    margin: 0;
}

@media (min-width: 768px) {
    .sw-dot-default {
        gap: 9px;
    }
}

.slider_effect_fade .swiper-slide.swiper-slide-active .fade-item {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
}

.slider_effect_fade .swiper-slide.swiper-slide-active .scale-item {
    transform: scale(1);
}

.slider_effect_fade .swiper-slide.swiper-slide-active .width-item {
    width: 100%;
}

.slider_effect_fade .fade-item {
    transform: translateY(100px);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.slider_effect_fade .fade-item.fade-box {
    transition-delay: 0.4s;
    transform: translateY(0px);
}

.slider_effect_fade .fade-item.fade-item-1 {
    transition-delay: 0.5s;
}

.slider_effect_fade .fade-item.fade-item-2 {
    transition-delay: 0.6s;
}

.slider_effect_fade .fade-item.fade-item-3 {
    transition-delay: 0.7s;
}

.slider_effect_fade .fade-item.fade-item-4 {
    transition-delay: 0.8s;
}

.slider_effect_fade .scale-item {
    transform: scale(1.2);
    transition: all 0.5s linear;
}

.slider_effect_fade .scale-item.scale-item-1 {
    transition-delay: 0.3s;
}

.slider_effect_fade .width-item {
    width: 1%;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.slider_effect_fade .width-item.width-item-3 {
    transition-delay: 0.7s;
}

@media (max-width: 767px) {
    .slider_effect_scale-md .swiper-slide {
        overflow: hidden;
    }

    .slider_effect_scale-md .swiper-slide.swiper-slide-active .scale-item {
        transform: scale(1);
    }

    .slider_effect_scale-md .scale-item {
        transform: scale(1.2);
        transition: all 1s linear;
    }
}

@media (max-width: 767px) {
    .slider_effect_fade-md .swiper-slide.swiper-slide-active .fade-item {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
    }

    .slider_effect_fade-md .fade-item {
        transform: translateY(100px);
        opacity: 0;
        visibility: hidden;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    .slider_effect_fade-md .fade-item.fade-box {
        transition-delay: 0.4s;
        transform: translateY(0px);
    }

    .slider_effect_fade-md .fade-item.fade-item-1 {
        transition-delay: 0.5s;
    }

    .slider_effect_fade-md .fade-item.fade-item-2 {
        transition-delay: 0.6s;
    }

    .slider_effect_fade-md .fade-item.fade-item-3 {
        transition-delay: 0.7s;
    }

    .slider_effect_fade-md .fade-item.fade-item-4 {
        transition-delay: 0.8s;
    }
}

@media (max-width: 1439px) {
    .tf-slideshow .slider-wrap {
        height: 650px;
    }
}

@media (max-width: 767px) {
    .tf-slideshow .slider-wrap {
        height: 600px;
    }
}

@media (max-width: 575px) {
    .tf-slideshow .slider-wrap {
        height: 450px;
    }
}

@media (max-width: 767px) {
    .tf-slideshow.type-abs .sld_content {
        transform: translateY(calc(-50% + 15px));
    }
}

@media (max-width: 1199px) {
    .tf-slideshow .wg-cls-2 .image {
        width: 100%;
    }

    .tf-slideshow .wg-cls-2 .image img {
        height: 500px;
        width: 100%;
        object-fit: cover;
        object-position: top;
    }
}

@media (max-width: 767px) {
    .tf-slideshow-2 .slider-wrap {
        height: 400px;
    }
}

@media (max-width: 575px) {
    .tf-slideshow-2 .slider-wrap {
        height: 350px;
    }
}

.hover-sw-nav .tf-sw-nav {
    visibility: hidden;
}

.hover-sw-nav .tf-sw-nav.nav-next-swiper {
    margin-right: 20px;
}

.hover-sw-nav .tf-sw-nav.nav-prev-swiper {
    margin-left: 20px;
}

.hover-sw-nav:hover .tf-sw-nav {
    margin: 0;
    visibility: visible;
}

.slider-wrap {
    position: relative;
}

.slider-wrap.has-overlay::after {
    content: "";
    inset: 0;
    position: absolute;
    z-index: 0;
    background: linear-gradient(-90deg, rgba(41, 27, 27, 0) 32.95%, #291B1B 80.78%);
}

.slider-wrap.style-2 .sub-title_sld,
.slider-wrap.style-2 .title_sld {
    margin-bottom: 15px;
}

.slider-wrap .type-radius {
    border-radius: 16px;
    overflow: hidden;
}

.slider-wrap.style-5 .sub-title_sld {
    margin-bottom: 12px;
}

.slider-wrap.style-5 .title_sld {
    margin-bottom: 24px;
}

.slider-wrap.style-7 .title_sld {
    margin-bottom: 32px;
}

.slider-wrap.style-7 .sub-text_sld {
    margin-bottom: 40px;
}

@media (min-width: 1200px) {

    .slider-wrap.style-2 .sub-title_sld,
    .slider-wrap.style-2 .title_sld {
        margin-bottom: 24px;
    }

    .slider-wrap.style-4 .title_sld {
        margin-bottom: 24px;
    }
}

@media (min-width: 1440px) {
    .slider-wrap.style-2 .sub-text_sld {
        margin-bottom: 56px;
    }

    .slider-wrap.style-3 .sub-title_sld-2 {
        margin-bottom: -16px;
    }

    .slider-wrap.style-3 .sub-text_sld {
        margin-bottom: 40px;
    }

    .slider-wrap.style-6 .title_sld {
        margin-bottom: 32px;
    }

    .slider-wrap.style-6 .sub-text_sld {
        margin-bottom: 40px;
    }

    .slider-wrap.has-nav {
        min-height: 639px;
    }
}

@media (max-width: 575px) {
    .slider-wrap.style-2 .title_sld {
        margin-bottom: 24px;
    }
}

.slider-wrap_2 {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.slider-wrap_2>* {
    width: 100%;
    min-height: 400px;
}

.slider-wrap_2 .type-radius {
    border-radius: 24px;
    overflow: hidden;
}

.slider-wrap_2 .sld_content {
    padding-top: 30px;
    padding-bottom: 30px;
}

@media (min-width: 768px) {
    .slider-wrap_2 {
        flex-wrap: nowrap;
    }

    .slider-wrap_2>* {
        width: 50%;
    }
}

@media (max-width: 767px) {
    .slider-wrap_2 {
        height: auto !important;
        display: grid;
    }
}

@media (max-width: 575px) {
    .slider-wrap_2>* {
        min-height: 350px;
    }
}

.sld_content {
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    position: absolute;
    z-index: 2;
}

.sld_content .title_sld {
    margin-bottom: 12px;
}

.sld_content .sub-title_sld,
.sld_content .sub-text_sld {
    margin-bottom: 30px;
}

.sld_content.only-title .title_sld {
    margin-bottom: 30px;
}

.sld_content.type-2 {
    top: unset;
    left: 24px;
    bottom: 44px;
    right: 24px;
    transform: unset;
}

.sld_content.type-2 .title_sld {
    margin-bottom: 4px;
}

.sld_content.type-2 .br-line {
    margin-top: 16px;
    margin-bottom: 16px;
}

.sld_content.type-2 .content-sld_wrap {
    background-color: var(--white);
    padding: 24px 32px;
    max-width: 480px;
    width: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.sld_content.type-3,
.sld_content.type-4 {
    top: unset;
    transform: unset;
    left: 16px;
    bottom: 32px;
    right: 16px;
}

.sld_content.pst-center {
    text-align: center;
}

.sld_content.pst-center .content-sld_wrap {
    padding: 30px 15px;
    background-color: var(--white);
    margin: auto;
    max-width: 624px;
    width: 100%;
    overflow: hidden;
}

.sld_content.type-space-x {
    left: 16px;
    right: 16px;
}

.sld_content.type-normal {
    position: unset;
    left: unset;
    right: unset;
    top: unset;
    transform: unset;
    display: flex;
    justify-self: start;
}

.sld_content.type-normal .sub-title_sld,
.sld_content.type-normal .title_sld {
    margin-bottom: 24px;
}

.sld_content.type-normal .sub-text_sld {
    margin-bottom: 40px;
}

@media (min-width: 1200px) {
    .sld_content.only-title .title_sld {
        margin-bottom: 56px;
    }

    .sld_content .sub-title_sld {
        margin-bottom: 40px;
    }

    .sld_content .sub-text_sld {
        margin-bottom: 40px;
    }

    .sld_content.type-2 {
        bottom: 24px;
    }

    .sld_content.type-3 {
        left: 32px;
        right: 32px;
    }

    .sld_content.type-4 {
        left: 40px;
        bottom: 40px;
        right: 40px;
    }

    .sld_content.type-center .content-sld_wrap {
        max-width: 607px;
        width: 100%;
    }

    .sld_content.style-2 {
        bottom: 24px;
    }

    .sld_content.pst-center .content-sld_wrap {
        padding: 48px 32px;
    }

    .sld_content.type-space-x {
        left: 32px;
        right: 32px;
    }

    .sld_content.type-normal .sub-text_sld {
        margin-bottom: 56px;
    }
}

@media (max-width: 575px) {
    .sld_content .title_sld {
        margin-bottom: 24px;
    }

    .sld_content .sub-text_sld {
        display: none;
    }

    .sld_content.type-normal .sub-text_sld {
        display: block;
    }
}

.slideshow-wrap {
    position: absolute;
    top: 60px;
    left: 0;
    right: 0;
    bottom: 60px;
    z-index: 3;
    pointer-events: none;
}

.slideshow-wrap .nav-shop-by {
    pointer-events: all;
}

.title_sld {
    font-weight: 600;
    color: var(--black);
}

.sub-title_sld.has-icon {
    display: flex;
    align-items: center;
    gap: 12px;
}

.sub-title_sld-2 {
    font-size: clamp(48px, 5vw, 100px);
    line-height: 1;
}

.price_sld {
    margin-bottom: 30px;
}

@media (min-width: 1200px) {
    .price_sld {
        margin-bottom: 40px;
        align-items: end !important;
    }

    .price_sld .price-old {
        padding-bottom: 7px;
    }
}

.sld_image {
    height: 100%;
    overflow: hidden;
}

.sld_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sld_image.image__right img {
    object-position: 60% center;
}

.group-btn-slider {
    display: flex;
    gap: 8px;
}

.swiper-grid.grid-colum-3 .swiper-wrapper {
    gap: 12px;
}

.swiper-grid.grid-colum-3 .swiper-slide {
    margin: 0 !important;
}

@media (min-width: 1200px) {
    .swiper-grid.grid-colum-3 .swiper-wrapper {
        gap: 48px;
    }
}

@media (min-width: 1440px) {
    .swiper-grid .swiper-wrapper {
        gap: 40px 48px;
    }

    .swiper-grid .swiper-wrapper.type-normal {
        gap: 48px;
    }

    .swiper-grid .swiper-slide {
        margin: 0 !important;
    }
}

@media (max-width: 767px) {
    .swiper-grid .swiper-wrapper {
        gap: 32px 12px;
    }

    .swiper-grid .swiper-slide {
        margin: 0 !important;
    }
}

.grid-colum-3 .card-product .wishlist,
.grid-colum-3 .card-product .compare {
    display: block;
}

@media (min-width: 576px) and (max-width: 767px) {

    .grid-colum-3 .card-product .wishlist,
    .grid-colum-3 .card-product .compare {
        display: none;
    }
}

.tes_thumb .group-btn-slider {
    margin-top: 30px;
}

@media (min-width: 576px) {
    .tes_thumb .group-btn-slider {
        padding-left: 55px;
    }
}

@media (min-width: 1200px) {
    .tes_thumb .group-btn-slider {
        margin-top: 48px;
        padding-left: 86px;
    }
}

@media (min-width: 1440px) {
    .tes_thumb .group-btn-slider {
        padding-left: 104px;
    }
}

.wrap-sw-over {
    margin-left: -10px;
    padding-left: 10px;
    margin-bottom: -10px;
    padding-bottom: 10px;
}

@media (min-width: 1200px) {
    .wrap-sw-over {
        margin-left: -40px;
        padding-left: 40px;
        margin-bottom: -40px;
        padding-bottom: 40px;
    }
}

@media (max-width: 1199px) {

    .tf-swiper .article-blog.style-row .blog-content,
    .tf-swiper .article-blog.style-row .entry_ima {
        flex: unset;
    }
}

@media (min-width: 768px) and (max-width: 1199px) {
    .tf-swiper .article-blog.style-row {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    .tf-swiper .article-blog.style-row .entry_image {
        aspect-ratio: 0;
    }
}

.swiper-medical {
    margin-bottom: -76px;
    padding-bottom: 76px;
}

.swiper-medical .swiper-slide:not(:last-child) .card-product {
    border-right: 1px solid var(--line);
}

.slideshow-container {
    display: flex;
    gap: 12px;
}

.slideshow-container .sw-slide-show {
    width: 100%;
}

.slideshow-container .col-right {
    gap: 12px;
}

@media (min-width: 1600px) {
    .slideshow-container .sw-slide-show {
        width: 70.22%;
    }

    .slideshow-container .col-right {
        width: calc(29.78% - 12px);
    }

    .slideshow-container.width-2 {
        max-width: 1152px;
        margin-left: auto;
    }

    .slideshow-container.width-3 {
        max-width: 1168px;
        margin-left: auto;
    }

    .slideshow-container.width-3 .sw-slide-show {
        width: 100%;
    }
}

@media (min-width: 768px) {
    .slideshow-container.width-2 .sw-slide-show {
        width: 65.97%;
    }

    .slideshow-container.width-2 .col-right {
        width: calc(34.03% - 12px);
    }
}

@media (max-width: 767px) {
    .slideshow-container {
        display: unset;
    }

    .slideshow-container:not(.width-3) .sw-slide-show {
        margin-bottom: 12px;
    }

    .slideshow-container .col-right {
        display: grid;
    }

    .slideshow-container .box-image_image img {
        height: 242px;
    }
}

.slider-book .swiper-slide {
    opacity: 0 !important;
}

.slider-book .swiper-slide.swiper-slide-active {
    opacity: 1 !important;
}

/*------------ button ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.tf-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font-size: 18px;
    line-height: 24px;
    padding: 16px 40px;
    position: relative;
    background-color: var(--black);
    color: var(--white);
    border-radius: 999px;
    font-weight: 600;
}

.tf-btn .icon {
    font-size: 18px;
}

.tf-btn.bg-green {
    background-color: #499F30 !important;
}

.tf-btn.type-very-small {
    padding-top: 9px;
    padding-bottom: 9px;
    padding-left: 9px;
    padding-right: 9px;
}

.tf-btn.style-2 {
    color: var(--black);
    background-color: var(--bg);
}

.tf-btn.style-2:hover {
    color: var(--white);
    background-color: var(--primary);
}

.tf-btn.btn-white {
    background-color: var(--white);
    color: var(--black);
}

.tf-btn.btn-fill-sec {
    background-color: var(--secondary);
    color: var(--bg-4);
}

.tf-btn.style-line {
    border: 1px solid var(--line);
    background-color: var(--white);
    color: var(--black);
}

.tf-btn.style-line:hover {
    background-color: var(--line);
}

.tf-btn.btn-primary {
    background-color: var(--primary);
}

.tf-btn.btn-primary:hover {
    background-color: var(--black);
}

.tf-btn.btn-secondary {
    border: 1px solid var(--secondary);
    background-color: var(--secondary);
    color: var(--black);
}

.tf-btn.btn-secondary:hover {
    background-color: var(--primary);
    color: var(--white);
    border-color: var(--primary);
}

.tf-btn.btn-purple {
    background-color: var(--bg-4);
    color: var(--white);
}

.tf-btn.btn-yellow {
    background-color: #FFC520;
    color: var(--black);
    font-weight: 600;
}

.tf-btn.btn-blue {
    background-color: rgba(67, 107, 228, 0.1019607843);
    color: var(--black);
}

.tf-btn.btn-blue:hover {
    background-color: #436BE4;
    color: var(--white);
}

.tf-btn.w-100 {
    padding-left: 12px;
    padding-right: 12px;
}

.tf-btn.style-transparent {
    background-color: transparent;
    color: var(--black);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    cursor: pointer;
}

.tf-btn.style-transparent:hover {
    background-color: var(--black);
    color: var(--white);
}

.tf-btn.type-small-5 {
    padding: 8px 20px;
}

@media (min-width: 992px) {
    .tf-btn.type-small {
        padding: 12px 24px;
    }

    .tf-btn.type-small-2 {
        padding-left: 30.5px;
        padding-right: 30.5px;
    }

    .tf-btn.type-small-3 {
        padding: 16px 25px;
    }

    .tf-btn.type-small-4 {
        padding-top: 14px;
        padding-bottom: 14px;
    }

    .tf-btn.style-line {
        padding-top: 15px;
        padding-bottom: 15px;
    }
}

@media (min-width: 1200px) {
    .tf-btn.type-large {
        padding: 19px 74px;
    }

    .tf-btn.px-xxl-32 {
        padding-left: 32px;
        padding-right: 32px;
    }
}

@media (max-width: 991px) {
    .tf-btn {
        padding: 13px 24px;
    }

    .tf-btn.style-line {
        padding-top: 12px;
        padding-bottom: 12px;
    }

    .tf-btn.w-100 {
        padding: 13px;
    }
}

.animate-btn {
    position: relative;
    overflow: hidden;
}

.animate-btn:hover::after {
    animation: shine-reverse 1s forwards;
}

.animate-btn:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(120deg, rgba(255, 255, 255, 0) 30%, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0) 70%);
    top: 0;
    left: -100%;
    opacity: 0.6;
}

button.animate-btn::after,
.animate-btn.tf-btn::after {
    background-image: linear-gradient(120deg, rgba(0, 0, 0, 0) 20%, rgba(255, 255, 255, 0.4), rgba(0, 0, 0, 0) 70%);
}

.animate-btn.animate-dark::after {
    background-image: linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.25), transparent);
}

.tf-btn-link {
    display: flex;
    align-items: center;
    gap: 12px;
}

.tf-btn-link .icon {
    font-size: 18px;
}

.tf-btn-line {
    font-weight: 700;
    font-size: 16px;
    line-height: 21px;
    letter-spacing: 1.92px;
    text-transform: uppercase;
    color: var(--black);
    position: relative;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: linear-gradient(to right, var(--primary) 50%, var(--black) 50%);
    background-size: 200% 100%;
    background-position: right;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: background-position 0.3s linear;
    cursor: pointer;
}

.tf-btn-line::after {
    position: absolute;
    content: "";
    left: 0;
    right: 0;
    bottom: 3px;
    height: 1px;
    background-color: var(--black);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-btn-line::before {
    position: absolute;
    content: "";
    left: 0;
    width: 0;
    bottom: 3px;
    height: 1px;
    background-color: var(--primary);
    transition: width 0.3s linear;
    z-index: 1;
}

.tf-btn-line.style-white {
    color: var(--white);
    background: linear-gradient(to right, var(--primary) 50%, var(--white) 50%);
    background-size: 200% 100%;
    background-position: right;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: background-position 0.3s linear;
}

.tf-btn-line.style-white::after {
    background-color: var(--white);
}

.tf-btn-line.style-gray {
    color: var(--text-2);
    background: linear-gradient(to right, var(--black) 50%, var(--text-2) 50%);
    background-size: 200% 100%;
    background-position: right;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: background-position 0.3s linear;
}

.tf-btn-line.style-gray::after {
    background-color: var(--text-2);
}

.tf-btn-line.style-gray::before {
    background-color: var(--black);
}

.tf-btn-line.has-icon {
    gap: 8px;
}

.tf-btn-line.has-icon .icon {
    font-size: 20px;
}

.tf-btn-line.none-line::before,
.tf-btn-line.none-line::after {
    display: none;
}

.tf-btn-line:hover {
    background-position: left;
}

.tf-btn-line:hover::before {
    width: 100%;
}

.tf-btn-line.active {
    background-position: left;
}

.tf-btn-line.active::before {
    width: 100%;
}

@media (min-width: 1200px) {

    .tf-btn-line.style-large::after,
    .tf-btn-line.style-large::before {
        height: 3px;
        bottom: 0;
    }

    .tf-btn-line.line-bot-0::after,
    .tf-btn-line.line-bot-0::before {
        bottom: 0;
    }
}

@media (max-width: 575px) {
    .tf-btn-line.sm-letter-1 {
        letter-spacing: 1px;
    }
}

.tf-loading {
    font-size: 14px;
    line-height: 20px;
    width: auto;
    height: 42px;
    min-width: 118px;
    padding: 10px;
}

.tf-loading.loadmore .spinner-circle {
    display: none;
}

.tf-loading.loadmore.loading .spinner-circle {
    display: block;
}

.tf-loading.loadmore.loading .text {
    display: none;
}

.tf-loading.loadmore:hover .spinner-child::before {
    background-color: var(--white);
}

.tf-loading.loadmore .spinner-child::before {
    background-color: var(--main);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.spinner-circle {
    width: 24px;
    height: 24px;
    position: relative;
}

.spinner-circle .spinner-child {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.spinner-circle .spinner-child::before {
    content: "";
    display: block;
    margin: 0 auto;
    width: 20%;
    height: 20%;
    background-color: var(--white);
    border-radius: 100%;
    -webkit-animation: spinner-circleBounceDelay 1s infinite ease-in-out both;
    animation: spinner-circleBounceDelay 1s infinite ease-in-out both;
}

.spinner-circle .spinner-circle2 {
    -webkit-transform: rotate(40deg);
    -ms-transform: rotate(40deg);
    transform: rotate(40deg);
}

.spinner-circle .spinner-circle2::before {
    -webkit-animation-delay: -0.9s;
    animation-delay: -0.9s;
}

.spinner-circle .spinner-circle3 {
    -webkit-transform: rotate(80deg);
    -ms-transform: rotate(80deg);
    transform: rotate(80deg);
}

.spinner-circle .spinner-circle3::before {
    -webkit-animation-delay: -0.8s;
    animation-delay: -0.8s;
}

.spinner-circle .spinner-circle4 {
    -webkit-transform: rotate(120deg);
    -ms-transform: rotate(120deg);
    transform: rotate(120deg);
}

.spinner-circle .spinner-circle4::before {
    -webkit-animation-delay: -0.7s;
    animation-delay: -0.7s;
}

.spinner-circle .spinner-circle5 {
    -webkit-transform: rotate(160deg);
    -ms-transform: rotate(160deg);
    transform: rotate(160deg);
}

.spinner-circle .spinner-circle5::before {
    -webkit-animation-delay: -0.6s;
    animation-delay: -0.6s;
}

.spinner-circle .spinner-circle6 {
    -webkit-transform: rotate(200deg);
    -ms-transform: rotate(200deg);
    transform: rotate(200deg);
}

.spinner-circle .spinner-circle6::before {
    -webkit-animation-delay: -0.5s;
    animation-delay: -0.5s;
}

.spinner-circle .spinner-circle7 {
    -webkit-transform: rotate(240deg);
    -ms-transform: rotate(240deg);
    transform: rotate(240deg);
}

.spinner-circle .spinner-circle7::before {
    -webkit-animation-delay: -0.4s;
    animation-delay: -0.4s;
}

.spinner-circle .spinner-circle8 {
    -webkit-transform: rotate(280deg);
    -ms-transform: rotate(280deg);
    transform: rotate(280deg);
}

.spinner-circle .spinner-circle8::before {
    -webkit-animation-delay: -0.3s;
    animation-delay: -0.3s;
}

.spinner-circle .spinner-circle9 {
    -webkit-transform: rotate(320deg);
    -ms-transform: rotate(320deg);
    transform: rotate(320deg);
}

.spinner-circle .spinner-circle9::before {
    -webkit-animation-delay: -0.2s;
    animation-delay: -0.2s;
}

.tf-pin-btn {
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    position: relative;
}

.tf-pin-btn span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background-color: rgba(0, 0, 0, 0.2);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-pin-btn span::before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border: solid 1px rgba(0, 0, 0, 0.2);
    border-radius: 50%;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-pin-btn span::before {
    animation: ripple-line 2s linear infinite;
}

.tf-pin-btn span::after {
    position: absolute;
    content: "";
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: var(--white);
}

.tf-btn-icon {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--black);
}

.tf-btn-icon i {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    color: var(--black);
    font-size: 20px;
}

.tf-btn-icon.style-white {
    color: var(--white);
}

.tf-btn-icon.style-white i {
    color: var(--white);
}

.tf-btn-icon:hover {
    color: var(--primary);
}

.tf-btn-icon:hover i {
    animation: link-icon 0.3s linear;
    color: var(--primary);
}

/*------------ form ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
form {
    position: relative;
    z-index: 30;
}

form textarea,
form input[type=text],
form input[type=password],
form input[type=datetime],
form input[type=datetime-local],
form input[type=date],
form input[type=month],
form input[type=time],
form input[type=week],
form input[type=number],
form input[type=email],
form input[type=url],
form input[type=search],
form input[type=tel],
form input[type=color] {
    outline: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    width: 100%;
    padding: 15px 24px;
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    border: 1px solid var(--bg-2);
    border-radius: 999px;
    color: var(--black);
    background-color: var(--bg-2);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

form textarea::placeholder,
form input[type=text]::placeholder,
form input[type=password]::placeholder,
form input[type=datetime]::placeholder,
form input[type=datetime-local]::placeholder,
form input[type=date]::placeholder,
form input[type=month]::placeholder,
form input[type=time]::placeholder,
form input[type=week]::placeholder,
form input[type=number]::placeholder,
form input[type=email]::placeholder,
form input[type=url]::placeholder,
form input[type=search]::placeholder,
form input[type=tel]::placeholder,
form input[type=color]::placeholder {
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    color: var(--text-2);
}

form textarea.style-def,
form input[type=text].style-def,
form input[type=password].style-def,
form input[type=datetime].style-def,
form input[type=datetime-local].style-def,
form input[type=date].style-def,
form input[type=month].style-def,
form input[type=time].style-def,
form input[type=week].style-def,
form input[type=number].style-def,
form input[type=email].style-def,
form input[type=url].style-def,
form input[type=search].style-def,
form input[type=tel].style-def,
form input[type=color].style-def {
    background-color: transparent;
    padding: 0;
    border: 0;
    border-radius: unset;
}

form textarea.style-stroke,
form input[type=text].style-stroke,
form input[type=password].style-stroke,
form input[type=datetime].style-stroke,
form input[type=datetime-local].style-stroke,
form input[type=date].style-stroke,
form input[type=month].style-stroke,
form input[type=time].style-stroke,
form input[type=week].style-stroke,
form input[type=number].style-stroke,
form input[type=email].style-stroke,
form input[type=url].style-stroke,
form input[type=search].style-stroke,
form input[type=tel].style-stroke,
form input[type=color].style-stroke {
    border-color: var(--line);
    background-color: transparent;
}

form textarea.style-stroke-2,
form input[type=text].style-stroke-2,
form input[type=password].style-stroke-2,
form input[type=datetime].style-stroke-2,
form input[type=datetime-local].style-stroke-2,
form input[type=date].style-stroke-2,
form input[type=month].style-stroke-2,
form input[type=time].style-stroke-2,
form input[type=week].style-stroke-2,
form input[type=number].style-stroke-2,
form input[type=email].style-stroke-2,
form input[type=url].style-stroke-2,
form input[type=search].style-stroke-2,
form input[type=tel].style-stroke-2,
form input[type=color].style-stroke-2 {
    border-color: var(--line-2);
    background-color: transparent;
    color: var(--white);
}

form textarea.style-stroke-2:focus,
form input[type=text].style-stroke-2:focus,
form input[type=password].style-stroke-2:focus,
form input[type=datetime].style-stroke-2:focus,
form input[type=datetime-local].style-stroke-2:focus,
form input[type=date].style-stroke-2:focus,
form input[type=month].style-stroke-2:focus,
form input[type=time].style-stroke-2:focus,
form input[type=week].style-stroke-2:focus,
form input[type=number].style-stroke-2:focus,
form input[type=email].style-stroke-2:focus,
form input[type=url].style-stroke-2:focus,
form input[type=search].style-stroke-2:focus,
form input[type=tel].style-stroke-2:focus,
form input[type=color].style-stroke-2:focus {
    border-color: var(--white);
}

form textarea.style-stroke-3,
form input[type=text].style-stroke-3,
form input[type=password].style-stroke-3,
form input[type=datetime].style-stroke-3,
form input[type=datetime-local].style-stroke-3,
form input[type=date].style-stroke-3,
form input[type=month].style-stroke-3,
form input[type=time].style-stroke-3,
form input[type=week].style-stroke-3,
form input[type=number].style-stroke-3,
form input[type=email].style-stroke-3,
form input[type=url].style-stroke-3,
form input[type=search].style-stroke-3,
form input[type=tel].style-stroke-3,
form input[type=color].style-stroke-3 {
    border-color: var(--line-3);
    background-color: var(--line-3);
    color: var(--white);
}

form textarea.style-stroke-3::placeholder,
form input[type=text].style-stroke-3::placeholder,
form input[type=password].style-stroke-3::placeholder,
form input[type=datetime].style-stroke-3::placeholder,
form input[type=datetime-local].style-stroke-3::placeholder,
form input[type=date].style-stroke-3::placeholder,
form input[type=month].style-stroke-3::placeholder,
form input[type=time].style-stroke-3::placeholder,
form input[type=week].style-stroke-3::placeholder,
form input[type=number].style-stroke-3::placeholder,
form input[type=email].style-stroke-3::placeholder,
form input[type=url].style-stroke-3::placeholder,
form input[type=search].style-stroke-3::placeholder,
form input[type=tel].style-stroke-3::placeholder,
form input[type=color].style-stroke-3::placeholder {
    color: var(--white);
}

form textarea.style-stroke-3:focus,
form input[type=text].style-stroke-3:focus,
form input[type=password].style-stroke-3:focus,
form input[type=datetime].style-stroke-3:focus,
form input[type=datetime-local].style-stroke-3:focus,
form input[type=date].style-stroke-3:focus,
form input[type=month].style-stroke-3:focus,
form input[type=time].style-stroke-3:focus,
form input[type=week].style-stroke-3:focus,
form input[type=number].style-stroke-3:focus,
form input[type=email].style-stroke-3:focus,
form input[type=url].style-stroke-3:focus,
form input[type=search].style-stroke-3:focus,
form input[type=tel].style-stroke-3:focus,
form input[type=color].style-stroke-3:focus {
    border-color: var(--white);
}

form textarea:focus,
form input[type=text]:focus,
form input[type=password]:focus,
form input[type=datetime]:focus,
form input[type=datetime-local]:focus,
form input[type=date]:focus,
form input[type=month]:focus,
form input[type=time]:focus,
form input[type=week]:focus,
form input[type=number]:focus,
form input[type=email]:focus,
form input[type=url]:focus,
form input[type=search]:focus,
form input[type=tel]:focus,
form input[type=color]:focus {
    border-color: var(--black);
}

@media (max-width: 991px) {

    form textarea,
    form input[type=text],
    form input[type=password],
    form input[type=datetime],
    form input[type=datetime-local],
    form input[type=date],
    form input[type=month],
    form input[type=time],
    form input[type=week],
    form input[type=number],
    form input[type=email],
    form input[type=url],
    form input[type=search],
    form input[type=tel],
    form input[type=color] {
        padding: 12px 24px;
    }
}

form button,
form input[type=button],
form input[type=reset],
form input[type=submit] {
    background-color: transparent;
    overflow: hidden;
    padding: 0;
}

form textarea {
    height: 150px;
    border-radius: 32px;
    resize: none;
}

form .cols {
    gap: 16px;
}

@media (min-width: 1200px) {
    form .cols {
        gap: 24px;
    }
}

form .form_content {
    gap: 16px;
    display: grid;
}

@media (min-width: 1200px) {
    form .form_content {
        gap: 24px;
    }
}

form.style-btn-abs {
    position: relative;
}

form.style-btn-abs .btn-submit {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
}

form.style-btn-abs .btn-submit .icon {
    font-size: 24px;
}

form.style-btn-abs input {
    padding-left: 48px;
}

form.style-btn-abs-end {
    position: relative;
}

form.style-btn-abs-end .btn-submit {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 24px;
}

form.style-btn-abs-end .btn-submit .icon {
    font-size: 20px;
}

form.style-btn-abs-end input {
    padding-right: 48px;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.password-wrapper {
    position: relative;
}

.password-wrapper .toggle-pass {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
}

.tf-check {
    position: relative;
    background: transparent;
    cursor: pointer;
    outline: 0;
    -webkit-appearance: none;
    width: 24px;
    height: 24px;
    min-width: 24px;
    border: 1px solid var(--line);
    padding: 0;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background-color: var(--white);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-check:checked {
    border-color: var(--black);
    background-color: var(--black);
}

.tf-check:checked::before {
    opacity: 1;
    transform: scale(1);
}

.tf-check::before {
    font-weight: 500;
    font-family: "icomoon";
    content: "\e930";
    position: absolute;
    color: var(--white);
    opacity: 0;
    font-size: 16px;
    transform: scale(0);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-check.style-2 {
    width: 22px;
    height: 22px;
    min-width: 22px;
}

.tf-check.style-2::before {
    font-size: 14px;
}

.tf-check.style-3 {
    width: 18px;
    height: 18px;
    min-width: 18px;
    border-radius: 2px;
}

.tf-check.style-3::before {
    font-size: 12px;
}

.tf-check.style-white {
    background-color: var(--black);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.checkbox-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
}

.checkbox-wrap input {
    padding: 0;
}

.checkbox-wrap label {
    cursor: pointer;
}

.checkbox-wrap .type-2 {
    gap: 8px;
}

.tf-field {
    position: relative;
}

.tf-field .tf-input {
    padding: 22px 0px 3px !important;
}

.tf-field .tf-input:not(:placeholder-shown)~.tf-lable,
.tf-field .tf-input:focus~.tf-lable {
    top: 0;
    transform: translateY(0%);
    font-size: 12px;
    line-height: 20px;
    letter-spacing: 0;
}

.tf-field .tf-input::placeholder {
    color: transparent;
}

.tf-field .tf-lable {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    cursor: text;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: -0.32px;
    pointer-events: none;
}

.tf-field .tf-lable.type-2 {
    top: 22px;
    transform: 0;
}

.tf-check-rounded {
    padding: 0 !important;
    position: relative;
    border: 1px solid #9a9a9a;
    border-radius: 50%;
    background: none;
    cursor: pointer;
    outline: 0;
    height: 16px;
    width: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--white);
    -webkit-appearance: none;
}

.tf-check-rounded::before {
    content: "";
    position: absolute;
    border-radius: 50%;
    width: 8px;
    height: 8px;
    background-color: var(--black);
    opacity: 0;
}

.tf-check-rounded:checked {
    border-color: var(--black);
}

.tf-check-rounded:checked::before {
    opacity: 1;
}

.tf-check-rounded.style-2 {
    background-color: var(--bg-2);
    border-color: var(--bg-2);
    width: 18px;
    height: 18px;
}

.tf-check-rounded.style-2:checked {
    border-color: var(--black);
    background-color: var(--white);
}

.tf-check-rounded.style-2::before {
    width: 10px;
    height: 10px;
}

@media (min-width: 1200px) {
    .tf-check-rounded {
        height: 18px;
        width: 18px;
    }

    .tf-check-rounded::before {
        width: 10px;
        height: 10px;
    }

    .tf-check-rounded.style-2 {
        width: 22px;
        height: 22px;
    }

    .tf-check-rounded.style-2::before {
        width: 16px;
        height: 16px;
    }
}

.form_sub .f-content {
    display: flex;
    align-items: center;
    gap: 12px;
}

.form_sub .f-content input::placeholder {
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
}

.form_sub.has_check .f-content {
    margin-bottom: 16px;
}

@media (max-width: 991px) {
    .form_sub .f-content {
        flex-direction: column;
    }

    .form_sub .f-content>* {
        width: 100%;
    }
}

.form_search input:focus {
    border-color: var(--white) !important;
}

.form_search-product {
    display: flex;
    align-items: center;
    gap: 16px;
    max-width: 442px;
    width: 100%;
    padding: 15px 24px;
    border: 1px solid var(--line);
    border-radius: 999px;
}

.form_search-product .tf-select-category {
    white-space: nowrap;
}

.form_search-product.style-search-2 {
    background-color: var(--white);
    max-width: 1099px;
}

.form_search-product.style-search-3 {
    border: 1px solid var(--primary);
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.0784313725);
}

.form_search-product .btn-submit {
    position: absolute;
    top: -1px;
    right: -1px;
    bottom: -1px;
    background-color: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 16px 24px;
    border-radius: 0px 999px 999px 0px;
    color: var(--white);
}

.form_search-product .btn-submit .icon {
    font-size: 24px;
}

.form_search-product .btn-submit-2 {
    position: absolute;
    top: 4px;
    right: 4px;
    bottom: 4px;
    background-color: var(--primary);
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--white);
    padding: 12px 39px;
}

.form-search.style-2 input {
    padding: 13px 23px;
}

.form-search.style-2 button {
    position: absolute;
    right: 24px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 24px;
}

.tf-select {
    position: relative;
}

.tf-select select {
    width: 100%;
    padding: 16px 24px;
    border-radius: 999px;
    -webkit-appearance: none;
    appearance: none;
    outline: 0 !important;
    border: 0;
    background-color: var(--bg-2);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    font-size: 18px;
    line-height: 24px;
    color: var(--black);
}

.tf-select::after {
    font-family: "icomoon";
    position: absolute;
    content: "\e916";
    right: 24px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 14px;
    z-index: 1;
    font-weight: 400;
    color: var(--black);
}

.tf-select:hover select {
    border-color: var(--rgba-dark-2);
}

.tf-select.select-square select {
    padding-top: 14px;
    padding-bottom: 14px;
    border-radius: 6px;
    font-size: 14px;
    line-height: 20px;
    color: var(--text-3);
    opacity: 0.8;
    height: 50px;
}

.tf-select.style-1 select {
    width: 102px;
    border: 1px solid var(--line);
    border-radius: 99px;
    padding: 17px 0;
    background-color: transparent;
    text-align: center;
    font-weight: 600;
    font-size: 14px;
    line-height: 20px;
}

.tf-select.style-1::after {
    display: none;
}

.tf-select.style-2 select {
    border: 1px solid var(--line);
    border-radius: 99px;
    padding: 12px 21px;
    background-color: transparent;
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
}

.tf-select.style-border select {
    border-radius: 0;
    background-color: transparent;
    border: 1px solid var(--line);
    padding: 12px 22px;
}

@media (max-width: 991px) {
    .tf-select select {
        padding: 13px 24px;
    }
}

@media (max-width: 991px) and (max-width: 991px) {
    .tf-select select {
        padding: 12px 24px;
    }
}

.tab-reviews .tab-reviews-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px 50px;
    flex-wrap: wrap;
    padding-bottom: 56px;
    margin-bottom: 56px;
    border-bottom: 1px solid var(--line);
}

.tab-reviews .tab-reviews-heading .top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-grow: 1;
    width: 100%;
    max-width: 750px;
    gap: 30px;
}

.tab-reviews .tab-reviews-heading .top .number {
    display: flex;
    align-items: end;
    gap: 24px;
    font-weight: 700;
    font-size: 70px;
    line-height: 70px;
    margin-bottom: 9px;
    color: var(--black);
}

.tab-reviews .tab-reviews-heading .top .number span {
    font-weight: 400;
    font-size: 40px;
    line-height: 100%;
    color: var(--text-2);
}

.tab-reviews .tab-reviews-heading .list-star {
    margin-bottom: 4px;
}

.tab-reviews .rating-score {
    width: 100%;
    max-width: 365px;
}

.tab-reviews .rating-score .item {
    width: 100%;
    gap: 5px;
    display: flex;
    align-items: center;
}

.tab-reviews .rating-score .item:not(:last-child) {
    margin-bottom: 4px;
}

.tab-reviews .rating-score .number-1 {
    width: 12px;
    text-align: end;
    flex-shrink: 0;
    color: var(--black);
}

.tab-reviews .rating-score svg {
    flex-shrink: 0;
}

.tab-reviews .rating-score .icon {
    font-size: 15px;
    margin-left: 4px;
    color: var(--yellow);
}

.tab-reviews .rating-score .number-2 {
    width: 25px;
    color: var(--black);
    text-align: start;
}

.tab-reviews .rating-score .line-bg {
    margin: 0 5px;
    width: 100%;
    height: 8px;
    background-color: var(--line);
}

.tab-reviews .rating-score .line-bg div {
    height: 100%;
    background-color: var(--black);
}

@media (max-width: 1199px) {
    .tab-reviews .tab-reviews-heading .top .number {
        gap: 5px;
    }
}

@media (max-width: 767px) {
    .tab-reviews .tab-reviews-heading {
        padding-bottom: 32px;
        margin-bottom: 32px;
    }
}

.write-cancel-review-wrap .btn-comment-review {
    cursor: pointer;
}

.write-cancel-review-wrap .write-review-wrap,
.write-cancel-review-wrap .btn-cancel-review {
    display: none;
}

.write-cancel-review-wrap.write-review .cancel-review-wrap,
.write-cancel-review-wrap.write-review .btn-write-review {
    display: none;
}

.write-cancel-review-wrap.write-review .write-review-wrap,
.write-cancel-review-wrap.write-review .btn-cancel-review {
    display: block;
}

.reply-comment .reply-comment-filter {
    padding-bottom: 56px;
    margin-bottom: 56px;
    border-bottom: 1px solid var(--line);
}

.reply-comment .tf-dropdown-sort {
    min-width: unset;
}

.reply-comment .reply-comment-item {
    display: flex;
    gap: 14px;
}

.reply-comment .reply-comment-item:not(:last-child) {
    padding-bottom: 56px;
    margin-bottom: 56px;
    border-bottom: 1px solid var(--line);
}

.reply-comment .reply-comment-item .image {
    flex-shrink: 0;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    overflow: hidden;
}

.reply-comment .reply-comment-item .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.reply-comment .reply-comment-item .user {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 18px;
}

.reply-comment .reply-comment-item .user .user-infor {
    display: flex;
    gap: 10px;
    align-items: center;
}

.reply-comment .reply-comment-item .user .user-infor .line {
    height: 14px;
}

.reply-comment .reply-comment-item .user .name {
    margin-bottom: 4px;
}

.reply-comment .reply-comment-item .user .verified-purchase {
    display: flex;
    align-items: center;
    gap: 4px;
}

.reply-comment .reply-comment-item .user .verified-purchase .text {
    font-weight: 400;
    font-size: 16px;
    line-height: 140%;
    color: var(--black);
}

.reply-comment .reply-comment-item .desc {
    margin-bottom: 18px;
}

@media (max-width: 767px) {
    .reply-comment .reply-comment-filter {
        padding-bottom: 32px;
        margin-bottom: 32px;
    }

    .reply-comment .reply-comment-item:not(:last-child) {
        padding-bottom: 32px;
        margin-bottom: 32px;
    }
}

.filter-start-wrap {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}

.filter-start-wrap .filter-item {
    padding: 15px 31px;
    border: 1px solid var(--line);
    border-radius: 99px;
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.filter-start-wrap .filter-item.active,
.filter-start-wrap .filter-item:hover {
    background-color: var(--black);
    color: var(--white);
}

@media (max-width: 575px) {
    .filter-start-wrap .filter-item {
        padding: 8px 24px;
    }
}

.form-write-review {
    max-width: 872px;
}

.form-write-review .heading {
    margin-bottom: 40px;
}

.form-write-review .text {
    margin-bottom: 24px;
}

.form-write-review .your-rating {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
}

.form-write-review textarea {
    height: 180px;
}

.form-write-review .form-content {
    margin-bottom: 12px;
}

.form-write-review .form-content .box-field {
    display: flex;
}

.form-write-review .form-content .box-field:not(:last-child) {
    margin-bottom: 24px;
}

.form-write-review .form-content .box-field .label {
    margin-bottom: 8px;
}

.form-write-review .form-content .box-field input,
.form-write-review .form-content .box-field textarea {
    padding: 16px 24px;
    border-radius: 32px;
}

.form-write-review .form-content .group-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

@media (max-width: 767px) {
    .form-write-review .form-content .box-field:not(:last-child) {
        margin-bottom: 12px;
    }

    .form-write-review .form-content .group-2 {
        gap: 12px;
    }
}

/* custom rating */
.list-rating-check {
    display: flex;
    flex-direction: row-reverse;
    justify-content: left;
    gap: 4px;
}

.list-rating-check:not(:checked)>input {
    position: absolute;
    opacity: 0;
}

.list-rating-check:not(:checked)>label {
    font-size: 24px;
    cursor: pointer;
    white-space: nowrap;
    width: 30px;
    display: flex;
    width: 24px;
    height: 24px;
}

.list-rating-check:not(:checked)>label:before {
    display: flex;
    width: 24px;
    height: 24px;
    content: "";
    -webkit-mask: url("../icon/start.svg") no-repeat center;
    -webkit-mask-size: contain;
    mask: url("../icon/start.svg") no-repeat center;
    background: #EF9122;
    mask-size: contain;
}

.list-rating-check>input:checked~label {
    -webkit-mask: url("../icon/start-1.svg") no-repeat center;
    -webkit-mask-size: contain;
    mask: url("../icon/start-1.svg") no-repeat center;
    background: #EF9122;
    mask-size: contain;
}

.list-rating-check:not(:checked)>label:hover,
.list-rating-check:not(:checked)>label:hover~label {
    -webkit-mask: url("../icon/start-1.svg") no-repeat center;
    -webkit-mask-size: contain;
    mask: url("../icon/start-1.svg") no-repeat center;
    background: #EF9122;
    mask-size: contain;
}

.list-rating-check>input:checked+label:hover::before,
.list-rating-check>input:checked+label:hover~label:before,
.list-rating-check>input:checked~label:hover::before,
.list-rating-check>input:checked~label:hover~label:before,
.list-rating-check>label:hover~input:checked~label:before {
    -webkit-mask: url("../icon/start-1.svg") no-repeat center;
    -webkit-mask-size: contain;
    mask: url("../icon/start-1.svg") no-repeat center;
    background: #EF9122;
    mask-size: contain;
}

.form-login {
    display: grid;
    gap: 24px;
}

.form-login .text-social {
    display: flex;
    align-items: center;
    gap: 14px;
}

.form-login .check-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
}

@media (min-width: 1200px) {
    .form-login {
        gap: 40px;
    }
}

.form-ask .form_content {
    margin-bottom: 12px;
}

.form-change_pass .form_content {
    gap: 16px;
}

.form-change_pass .cols {
    gap: 16px;
}

@media (max-width: 1199px) {

    .btn-comment-review,
    .reply-comment-filter .tf-dropdown-sort,
    .reply-comment-filter .filter-item {
        padding: 11px 31px;
        font-size: 16px;
        line-height: 24px;
    }
}

@media (max-width: 575px) {

    .btn-comment-review,
    .reply-comment-filter .tf-dropdown-sort,
    .reply-comment-filter .filter-item {
        padding: 8px 22px;
    }
}

.sib-form {
    padding: 0;
    font-family: "Afacad", sans-serif;
}

#sib-container {
    background-color: unset;
    padding: 0;
}

.sib-form .entry__field {
    background-color: unset;
    border: 0;
    box-shadow: none !important;
    margin: 0;
}

.sib-form .sib-form-container .input {
    outline: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    width: 100%;
    padding: 15px 24px;
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    border: 1px solid var(--line);
    border-radius: 999px;
    color: var(--black);
    background-color: transparent;
    height: unset !important;
}

.sib-form .sib-form-container .input.style-stroke-2 {
    border-color: var(--line-2);
    background-color: transparent;
    color: var(--white);
}

.sib-form .sib-form-container .input.style-stroke-2:focus {
    border-color: var(--white);
}

.sib-form .sib-form-container .input::placeholder {
    color: #8A8C8A !important;
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.sib-form .entry__specification,
.sib-form .entry__error,
.entry__specification,
.entry__label {
    margin: 0 !important;
}

.sib-form-container a {
    text-decoration: none;
}

.sib-form .input_replaced {
    position: relative;
    opacity: 1;
    z-index: 1;
}

.sib-form-block {
    padding: 0;
}

#sib-form {
    position: relative;
}

.sib-form .clickable__icon {
    margin: 0 5px 0 0;
    fill: #fff;
}

.sib-form-message-panel {
    margin-bottom: 8px;
    padding: 0;
    border: 0;
}

.sib-form-message-panel#error-message .sib-form-message-panel__text {
    color: var(--error);
}

.sib-form-message-panel#success-message .sib-form-message-panel__text {
    color: var(--success);
}

.sib-form-message-panel__text .sib-notification__icon {
    height: 18px;
    width: 18px;
    margin-right: 8px;
}

.sib-form-message-panel__text {
    padding: 0;
}

.sib-form_newletter {
    margin-bottom: 24px;
}

.sib-form_newletter .sib-input,
.sib-form_newletter .form__label-row {
    margin-bottom: 12px;
}

.sib-form_footer .form-get_email {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
}

.sib-form_footer .fieldset-input_email {
    width: 100%;
}

.sib-form_footer .sib-form-container .input {
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
}

.sib-form_footer .sib-form-container .input:focus {
    border-color: var(--black);
}

.sib-form_footer .sib-form-container .input::placeholder {
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
}

.sib-form_footer .entry__choice {
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    text-indent: unset;
}

.sib-form_footer .form__entry.entry_errored .entry__error {
    margin-top: 10px !important;
}

@media (max-width: 1199px) {
    .sib-form_footer .form-get_email {
        display: flex;
        flex-direction: column;
    }

    /* .sib-form_footer .fiedset-button_submit,
  .sib-form_footer .sib-form-block__button {
    width: 100%;
  } */
}

.form-contact .cols {
    gap: 20px;
}

.form-contact .form-content {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.form-contact .form-content {
    margin-bottom: 30px;
}

.form-contact textarea {
    height: 150px;
}

@media (min-width: 992px) {
    .form-contact textarea {
        height: 299px;
    }

    .form-contact .form-content {
        margin-bottom: 40px;
    }
}

.form-contact-2 .form-content {
    display: grid;
    gap: 12px;
    margin-bottom: 12px;
}

.form-contact-2 .tf-grid-layout {
    gap: 12px;
}

.form-contact-2 .form-action {
    max-width: 464px;
    width: 100%;
    margin: 0 auto;
}

.form-contact-2 .form-action button {
    width: 100%;
}

@media (min-width: 1200px) {
    .form-contact-2 .form-content {
        gap: 24px;
    }

    .form-contact-2 .tf-grid-layout {
        gap: 24px;
    }
}

.form-add_review .form-content {
    display: grid;
    gap: 12px;
    margin-bottom: 12px;
}

.form-add_review .tf-grid-layout {
    gap: 12px;
}

.form-add_review .form-action button {
    max-width: 258px;
    width: 100%;
}

@media (min-width: 1200px) {
    .form-add_review .form-content {
        gap: 24px;
    }

    .form-add_review .tf-grid-layout {
        gap: 24px;
    }
}

/*------------ nice select ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.nice-select {
    -webkit-tap-highlight-color: transparent;
    background-color: #fff;
    border: 0;
    padding: 0;
    padding-right: 16px;
    box-sizing: border-box;
    clear: both;
    cursor: pointer;
    display: flex;
    font-size: 14px;
    line-height: 22px;
    font-weight: 500;
    outline: none;
    position: relative;
    transition: all linear 0.2s;
    user-select: none;
    white-space: nowrap;
    width: max-content;
    border-radius: 0;
    color: var(--main);
}

.nice-select:active,
.nice-select.open,
.nice-select:focus {
    border-color: var(--line);
}

.nice-select:after {
    border-bottom: 1.7px solid var(--main);
    border-right: 1.7px solid var(--main);
    content: "";
    height: 8px;
    width: 8px;
    margin-top: -6px;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform-origin: 66% 66%;
    -ms-transform-origin: 66% 66%;
    transform-origin: 66% 66%;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}

.nice-select.open:after {
    -webkit-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
}

.nice-select.open .list {
    opacity: 1;
    z-index: 10;
    pointer-events: auto;
    -webkit-transform: scale(1) translateY(0);
    -ms-transform: scale(1) translateY(0);
    transform: scale(1) translateY(0);
    width: 100%;
    -moz-transform: scale(1) translateY(0);
    -o-transform: scale(1) translateY(0);
}

.nice-select.disabled {
    border-color: #ededed;
    color: #999;
    pointer-events: none;
}

.nice-select.disabled:after {
    border-color: #cccccc;
}

.nice-select.wide {
    width: 100%;
}

.nice-select.wide .list {
    left: 0 !important;
    right: 0 !important;
}

.nice-select.right {
    float: right;
}

.nice-select.right .list {
    left: auto;
    right: 0;
}

.nice-select.small {
    font-size: 12px;
    height: 36px;
    line-height: 34px;
}

.nice-select.small:after {
    height: 4px;
    width: 4px;
}

.nice-select.small .option {
    line-height: 34px;
    min-height: 34px;
}

.nice-select .list {
    background-color: var(--white);
    border-radius: 5px;
    box-shadow: 0 0 0 1px rgba(68, 68, 68, 0.11);
    box-sizing: border-box;
    margin-top: 4px;
    opacity: 0;
    overflow: hidden;
    padding: 0;
    pointer-events: none;
    position: absolute;
    top: 100%;
    left: 0;
    -webkit-transform-origin: 50% 0;
    -ms-transform-origin: 50% 0;
    transform-origin: 50% 0;
    -webkit-transform: scale(0.75) translateY(-21px);
    -ms-transform: scale(0.75) translateY(-21px);
    transform: scale(0.75) translateY(-21px);
    -webkit-transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
    transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
    z-index: 9;
    width: 100%;
    font-size: 14px;
    max-height: 155px;
    overflow: auto;
}

.nice-select .list.style {
    max-height: unset;
}

.nice-select .list::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    background-color: #f5f5f5;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
}

.nice-select .list::-webkit-scrollbar-thumb {
    background-color: #a7a7a7;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
}

.nice-select .list::-webkit-scrollbar {
    width: 6px;
    height: 4px;
    background-color: #f5f5f5;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
}

.nice-select .option {
    cursor: pointer;
    font-weight: 500;
    line-height: 40px;
    list-style: none;
    min-height: 40px;
    outline: none;
    padding-left: 18px;
    padding-right: 29px;
    font-size: 16px;
    text-align: left;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    color: var(--main);
}

.nice-select .option:hover,
.nice-select .option.focus,
.nice-select .option.selected.focus {
    background-color: var(--white);
    color: var(--primary);
}

.nice-select .option.selected {
    font-weight: 600;
}

.nice-select .option.disabled {
    color: var(--main);
    cursor: default;
}

.no-csspointerevents .nice-select .list {
    display: none;
}

.no-csspointerevents .nice-select.open .list {
    display: block;
}

.tf-dropdown-select.style-default {
    width: unset !important;
    display: flex;
}

.tf-dropdown-select.style-default>select {
    display: none !important;
}

.tf-dropdown-select.style-default>.dropdown-toggle {
    padding: 0px;
    padding-right: 22px;
    background-color: transparent !important;
    border: 0;
    outline: none !important;
    color: var(--black);
}

.tf-dropdown-select.style-default>.dropdown-toggle::after {
    border: 0;
    position: absolute;
    right: 0;
    content: "\e916";
    font-family: "icomoon";
    font-size: 14px;
    color: var(--black);
    margin-left: 0px;
    top: 50%;
    transform: translateY(-50%);
}

.tf-dropdown-select.style-default .filter-option-inner-inner {
    display: flex;
    align-items: center;
    justify-content: start;
    font-weight: 400;
    font-size: clamp(16px, 2vw, 18px);
    line-height: clamp(22px, 3vw, 24px);
    gap: 8px;
}

.tf-dropdown-select.style-default .filter-option-inner-inner img {
    height: 24px;
    width: 24px;
}

.tf-dropdown-select.style-default>.dropdown-menu {
    overflow: unset !important;
    margin-top: 17px !important;
    margin-bottom: 17px !important;
    padding: 15px 20px;
    border-radius: 0;
    border: 0;
    background-color: var(--white);
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 18px 0px;
}

.tf-dropdown-select.style-default>.dropdown-menu a {
    padding: 5px 0;
}

.tf-dropdown-select.style-default>.dropdown-menu a .text {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 5px;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
}

.tf-dropdown-select.style-default>.dropdown-menu a .text img {
    width: 20px;
    height: 20px;
}

.tf-dropdown-select.style-default>.dropdown-menu a:hover,
.tf-dropdown-select.style-default>.dropdown-menu a:active,
.tf-dropdown-select.style-default>.dropdown-menu a.active {
    color: var(--primary) !important;
    background-color: unset !important;
}

.tf-dropdown-select.style-default>.dropdown-menu::after {
    position: absolute;
    content: "";
    width: 16px;
    height: 16px;
    transform: translate(-50%, -50%) rotate(45deg);
    background-color: var(--white);
    top: 0;
    left: 50%;
    z-index: 2;
}

.tf-dropdown-select.style-default>.dropdown-menu[data-popper-placement=top-start]::after {
    display: none;
}

.tf-dropdown-select.style-default>.dropdown-menu[data-popper-placement=top-start]::before {
    position: absolute;
    content: "";
    width: 16px;
    height: 16px;
    transform: translate(-50%, 50%) rotate(45deg);
    background-color: var(--white);
    bottom: 0%;
    left: 50%;
    z-index: 2;
}

.tf-dropdown-select.style-default .dropdown-menu>.inner {
    overflow-y: hidden !important;
}

.tf-dropdown-select.type-currencies>.dropdown-menu {
    width: 100px !important;
}

.tf-dropdown-select.type-languages>.dropdown-menu {
    width: 110px !important;
}

.tf-dropdown-select.color-white>.dropdown-toggle {
    color: var(--white);
}

.tf-dropdown-select.color-white>.dropdown-toggle::after {
    color: var(--white);
}

.tf-dropdown-select.color-white-2>.dropdown-toggle {
    color: var(--text);
}

.tf-dropdown-select.color-white-2>.dropdown-toggle::after {
    color: var(--text);
}

.tf-dropdown-select.color-white-3>.dropdown-toggle {
    color: var(--line-4);
}

.tf-dropdown-select.color-white-3>.dropdown-toggle::after {
    color: var(--line-4);
}

.tf-dropdown-wrap {
    display: flex;
    gap: 20px;
}

.tf-dropdown-sort {
    padding: 8px 16px;
    min-width: 180px;
    border: 1px solid var(--line);
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border-radius: 999px;
}

.tf-dropdown-sort .icon {
    font-size: 14px;
    display: inline-block;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    margin-bottom: 2px;
}

.tf-dropdown-sort .btn-select {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-wrap: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-transform: capitalize;
    font-size: 16px;
    line-height: 20px;
    gap: 12px;
}

.tf-dropdown-sort .btn-select .icon {
    font-size: 14px;
}

.tf-dropdown-sort.show .btn-select .icon {
    transform: rotate(180deg);
}

.tf-dropdown-sort .text-sort-value {
    text-wrap: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
    color: var(--black);
}

.tf-dropdown-sort .dropdown-menu {
    min-width: 240px;
    border: 1px solid var(--line);
    padding: 10px 5px;
    border-radius: 0px;
    max-height: 68vh;
    isolation: isolate;
    overscroll-behavior-y: contain;
    overflow-y: auto;
    z-index: 99;
}

.tf-dropdown-sort .dropdown-menu::-webkit-scrollbar {
    width: 3px;
}

.tf-dropdown-sort .dropdown-menu::-webkit-scrollbar-thumb {
    border-radius: 4px;
}

.tf-dropdown-sort .select-item {
    position: relative;
    font-size: 16px;
    font-weight: 400;
    text-transform: capitalize;
    color: var(--black);
    padding: 0 15px;
    line-height: 30px;
    width: 100%;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-dropdown-sort .select-item:hover,
.tf-dropdown-sort .select-item.active {
    background-color: #ebebeb;
}

.tf-dropdown-sort:hover {
    border-color: var(--black);
}

@media (min-width: 1200px) {
    .tf-dropdown-sort {
        padding: 15px 32px;
        min-width: 225px;
    }

    .tf-dropdown-sort .text-sort-value {
        font-size: 18px;
    }
}

.tf-select-category {
    display: flex;
    align-items: center;
    gap: 5px;
    color: var(--black);
}

.dropdown-filter .dropdown-toggle {
    min-width: 91px;
    border-radius: 999px;
    padding: 8px 16px;
    border: 1px solid var(--line);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.dropdown-filter .dropdown-toggle::after {
    display: none;
}

.dropdown-filter .dropdown-toggle.show .icon {
    transform: rotate(180deg);
}

.dropdown-filter .dropdown-toggle:hover {
    border-color: var(--dark);
}

.dropdown-filter .icon {
    font-size: 12px;
    display: inline-block;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    margin-top: 2px;
}

.dropdown-filter .text-value {
    text-wrap: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-transform: capitalize;
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
    color: var(--black);
}

.dropdown-filter .dropdown-menu {
    margin-top: -2px !important;
    min-width: 238px;
    box-shadow: var(--shadow-1);
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 15px 10px;
    max-height: 68vh;
    isolation: isolate;
    overscroll-behavior-y: contain;
    overflow-y: auto;
    z-index: 99;
    box-shadow: 0 0 25px 3px rgba(0, 0, 0, 0.1);
}

.dropdown-filter .dropdown-menu::-webkit-scrollbar {
    width: 5px;
}

.dropdown-filter .dropdown-menu::-webkit-scrollbar-track {
    background-color: var(--line);
}

.dropdown-filter .dropdown-menu::-webkit-scrollbar-thumb {
    background: var(--primary);
    border-radius: 4px;
}

.dropdown-filter .dropdown-menu.drop-menu-brand {
    max-height: 180px;
}

.dropdown-filter .filter-color-box,
.dropdown-filter .filter-size-box {
    gap: 8px;
}

@media (min-width: 1200px) {
    .dropdown-filter .dropdown-toggle {
        padding: 15px 31px;
    }

    .dropdown-filter .dropdown-menu {
        min-width: 300px;
        padding: 25px 15px;
    }
}

.select-category .dropdown_product_cat {
    display: none;
}

.select-category .close-option {
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.select-category .close-option:hover {
    color: var(--primary);
}

.select-category .select-options {
    overflow-y: auto;
    display: none;
    position: absolute;
    top: -3px;
    right: -3px;
    left: -3px;
    z-index: 999;
    margin: 0;
    padding: 20px;
    list-style: none;
    border-radius: 8px;
    background: #FFF;
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.05);
    min-width: 200px;
}

.select-category .select-options li {
    display: inline-block;
    width: 32.88%;
    color: var(--gray);
    margin: 0;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    padding: 8px 10px;
    position: relative;
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.select-category .select-options li:hover {
    color: var(--primary);
}

.select-category .header-select-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid #ededed;
    margin-bottom: 8px;
    color: var(--black);
}

.tf-select-custom {
    display: block;
    cursor: pointer;
    max-width: 120px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: 20px;
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
    color: var(--black);
    position: relative;
}

.tf-select-custom::after {
    content: "\e916";
    position: absolute;
    font-family: "icomoon";
    font-size: 16px;
    font-weight: normal;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

/*------------ carousel ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0px;
}

.sw-auto .swiper-wrapper {
    align-items: center;
}

.sw-auto .swiper-slide {
    width: auto;
    transition-timing-function: linear;
}

.slider-auto-vertical .swiper-slide {
    height: max-content !important;
}

.layout-sw-center {
    overflow: hidden;
}

/*------------ pop up ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.offcanvas {
    border: none !important;
    color: var(--black);
    z-index: 3000;
}

.offcanvas .icon-close-popup {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    cursor: pointer;
    background: transparent;
    font-size: 16px;
    padding: 10px;
    border: none;
    color: var(--black);
    z-index: 10;
}

.offcanvas .icon-close-popup:hover {
    color: var(--primary);
}

.offcanvas .icon-close-popup.type-right {
    top: 16px;
    right: 16px;
}

.offcanvas .offcanvas-content {
    height: 100%;
}

.offcanvas.offcanvas-center {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) !important;
    opacity: 0;
    visibility: hidden;
    max-width: calc(100vw - 30px);
}

.offcanvas.offcanvas-center.show {
    visibility: visible;
    opacity: 1;
}

/*.offcanvas-backdrop {*/
/*    z-index: 2999;*/
/*    cursor: url(../images/cursor-close.svg), auto;*/
/*}*/

.overflow-x-auto::-webkit-scrollbar,
.overflow-y-auto::-webkit-scrollbar {
    width: 0px;
}

/*.modal {*/
/*    cursor: url(../images/cursor-close.svg), auto;*/
/*}*/

.modal .icon-close-popup {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    cursor: pointer;
    background: transparent;
    font-size: 16px;
    padding: 16px;
    border: none;
    color: var(--black);
    z-index: 10;
    position: absolute;
    top: 0px;
    right: 0px;
}

.modal .icon-close-popup:hover {
    color: var(--primary);
}

@media (min-width: 576px) {
    .modal .icon-close-popup {
        top: 10px;
        right: 10px;
    }
}

.modal .modal-content {
    border: 0;
}

.modal .modal-body {
    padding: 0;
}

.modal.fullRight .modal-dialog {
    transform: translate(100%, 0);
    min-width: 100%;
    height: 100%;
    margin: 0;
    transition: transform 1s ease-out;
}

.modal.fullRight .modal-dialog .modal-content {
    border-radius: 0;
    border: 0;
    margin: auto;
    overflow: hidden;
    position: absolute;
    right: 0;
    bottom: 0;
    top: 0;
    padding: 0;
}

.modal.fullRight .modal-dialog .modal-content .modal-body {
    overflow: auto;
    padding: 0;
    padding-bottom: 30px;
}

.modal.fullRight.show .modal-dialog {
    transform: none;
    transition: transform 0.4s ease-out;
}

.modal.fullLeft .modal-dialog {
    transform: translate(-100%, 0) !important;
    min-width: 100%;
    height: 100%;
    margin: 0;
    transition: all 0.3s !important;
}

.modal.fullLeft .modal-content {
    border-radius: 0;
    border: 0;
    margin: auto;
    overflow: hidden;
    position: absolute;
    left: 0;
    bottom: 0;
    top: 0;
    padding: 0;
}

.modal.fullLeft .modal-body {
    overflow: auto;
    padding: 0;
    padding-bottom: 30px;
}

.modal.fullLeft.show .modal-dialog {
    transform: translate(0, 0) !important;
}

.modal.fullBottom .modal-dialog {
    transform: translate(0, 100%);
    min-width: 100%;
    height: 100%;
    max-height: unset;
    margin: 0;
    transition: transform 0.3s linear !important;
}

.modal.fullBottom .modal-content {
    border-radius: 0;
    border: 0;
    margin: auto;
    overflow: hidden;
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 0;
    max-height: max-content;
}

.modal.fullBottom .modal-body {
    overflow: auto;
    padding: 0;
    padding-bottom: 30px;
}

.modal.fullBottom.show .modal-dialog {
    transform: translate(0, 0);
}

.modal.modalCentered .modal-dialog {
    margin: 15px auto;
    padding-left: 15px;
    padding-right: 15px;
    transform: translate(0, 0) !important;
}

.modal.fade:not(.show) {
    opacity: 0;
}

.modal .modal-content {
    cursor: default !important;
    border-radius: 0px;
}

.modal-heading {
    position: relative;
    margin-bottom: 30px;
}

.modal-heading .icon-close-popup {
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    left: unset;
    font-size: 24px;
}

@media (min-width: 992px) {
    .modal-heading {
        margin-bottom: 40px;
    }
}

.canvas-sidebar {
    max-width: 320px;
    width: 100%;
}

.canvas-sidebar .blog-sidebar {
    max-width: unset;
}

@media (min-width: 992px) {
    .canvas-sidebar {
        max-width: 535px;
        width: 100% !important;
    }
}

.canvas-wrapper {
    padding: 0;
    isolation: isolate;
    height: 100%;
    width: 100%;
    max-height: none;
    display: grid;
    grid-auto-rows: auto minmax(0, 1fr) auto;
    align-content: start;
}

.canvas-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 24px;
    position: relative;
    text-transform: capitalize;
}

.canvas-header .icon-close-popup {
    height: 32px;
    width: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

@media (min-width: 1200px) {
    .canvas-header {
        padding: 32px;
    }
}

.canvas-body {
    background-color: var(--white);
    padding: 10px 24px;
    overscroll-behavior-y: contain;
    overflow-y: auto;
    flex: 1;
}

.canvas-body::-webkit-scrollbar {
    width: 5px;
}

.canvas-body::-webkit-scrollbar-track {
    background-color: var(--white);
}

.canvas-body::-webkit-scrollbar-thumb {
    background: var(--primary);
    border-radius: 4px;
}

@media (min-width: 1200px) {
    .canvas-body {
        padding: 12px 32px 15px;
    }
}

.canvas-footer,
.canvas-bottom {
    padding: 16px 24px 24px;
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.1);
}

.modal-log .modal-top .title {
    margin-bottom: 30px;
}

.modal-log .modal-content {
    padding: 32px;
}

.modal-log .modal-bottom {
    width: 100%;
    max-width: 440px;
    margin: 0 auto;
}

.modal-log .other-login {
    display: grid;
    gap: 15px;
    margin-bottom: 40px;
}

@media (min-width: 768px) {
    .modal-log .modal-top .title {
        margin-bottom: 52px;
    }
}

@media (min-width: 1200px) {
    .modal-log .modal-content {
        padding-bottom: 100px;
    }

    .modal-log .modal-dialog {
        max-width: 934px;
    }
}

@media (max-width: 575px) {
    .modal-log .modal-content {
        padding: 20px 15px;
    }
}

.canvas-sidebar .icon-close-popup {
    font-size: 24px;
}

.canvas-sidebar .sub-title {
    margin-bottom: 20px;
}

@media (min-width: 1200px) {
    .canvas-sidebar .sub-title {
        margin-bottom: 32px;
    }
}

.popup-body {
    overscroll-behavior-y: contain;
    overflow-y: auto;
    padding: 20px;
}

@media (min-width: 1200px) {
    .popup-body {
        padding: 20px 32px;
    }
}

.tf-minicart-recommendations {
    width: 264px;
    flex-shrink: 0;
    padding: 32px;
    border-right: 1px solid var(--line);
    display: flex;
    flex-direction: column;
}

.tf-minicart-recommendations .title {
    margin-bottom: 24px;
}

.tf-minicart-recommendations>.wrap-recommendations {
    flex-grow: 1;
    overflow-y: auto;
}

.tf-minicart-recommendations>.wrap-recommendations::-webkit-scrollbar {
    width: 0px;
}

.tf-minicart-recommendations .list-cart-item:not(:last-child) {
    margin-bottom: 30px;
}

.tf-minicart-recommendations .list-cart-item .image {
    width: 100%;
    height: 100%;
    max-height: 267px;
    margin-bottom: 24px;
    overflow: hidden;
}

.tf-minicart-recommendations .list-cart-item .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tf-minicart-recommendations .list-cart-item .name {
    margin-bottom: 4px;
}

.tf-minicart-recommendations .list-cart-item .cart-item-bot {
    position: relative;
    overflow: hidden;
}

.tf-minicart-recommendations .list-cart-item .cart-item-bot a {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    transform: translateY(30px);
}

.tf-minicart-recommendations .list-cart-item .price {
    transform: translateY(0px);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

@media (max-width: 767px) {
    .tf-minicart-recommendations {
        display: none;
    }
}

.popup-shopping-cart {
    flex-direction: row;
}

.popup-shopping-cart .popup-header {
    padding: 32px 32px 24px;
    display: flex;
    justify-content: space-between;
}

.popup-shopping-cart .popup-header .icon-close-popup {
    padding: 0;
    font-size: 24px !important;
}

.popup-shopping-cart .tf-mini-cart-threshold {
    padding: 0px 32px;
}

.popup-shopping-cart .tf-mini-cart-threshold .text {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}

.popup-shopping-cart .tf-mini-cart-threshold .desc {
    font-size: 16px;
    line-height: 140%;
}

.popup-shopping-cart .tf-mini-cart-threshold .tf-progress-ship {
    border-radius: 0;
    height: 9px;
    margin-bottom: 16px;
    background-color: var(--line);
}

.popup-shopping-cart .tf-mini-cart-threshold .tf-progress-ship .value {
    background-color: var(--black);
    height: 9px;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.popup-shopping-cart .tf-number-count {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--line);
}

.popup-shopping-cart .wrap {
    display: flex;
    flex-direction: column;
}

.popup-shopping-cart .tf-mini-cart-wrap {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    position: relative;
}

.popup-shopping-cart .tf-cart-totals-discounts {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
}

@media (min-width: 1200px) {
    .popup-shopping-cart .tf-cart-totals-discounts {
        margin-bottom: 32px;
    }
}

.popup-shopping-cart .tf-mini-cart-bottom-wrap {
    padding: 16px 32px 32px;
}

.popup-shopping-cart .tf-mini-cart-bottom-wrap .tf-mini-cart-view-checkout {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
}

.popup-shopping-cart .tf-mini-cart-bottom-wrap .tf-mini-cart-view-checkout a {
    width: 100%;
}

.popup-shopping-cart .tf-mini-cart-bottom-wrap .free-shipping {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--text-2);
}

.popup-shopping-cart .tf-mini-cart-bottom-wrap .free-shipping .icon {
    font-size: 20px;
}

.popup-shopping-cart .tf-mini-cart-view-checkout {
    display: grid;
    gap: 12px;
}

@media (min-width: 576px) {
    .popup-shopping-cart {
        max-width: 794px;
        width: 100% !important;
    }
}

@media (max-width: 767px) {
    .popup-shopping-cart {
        flex-direction: column;
        max-width: min(500px, 100vw);
        max-width: 340px;
    }

    .popup-shopping-cart .tf-minicart-recommendations {
        padding: 16px 16px 0;
        width: unset;
    }

    .popup-shopping-cart .tf-minicart-recommendations .title {
        margin-bottom: 16px;
    }

    .popup-shopping-cart .list-cart {
        display: flex;
        gap: 15px;
        overflow-x: auto;
    }

    .popup-shopping-cart .list-cart .list-cart-item {
        padding-bottom: 0 !important;
        border-bottom: 0 !important;
        margin-bottom: 0 !important;
        min-width: 120px;
    }

    .popup-shopping-cart .list-cart .list-cart-item .image {
        max-height: 150px;
        margin-bottom: 12px;
    }

    .popup-shopping-cart .tf-mini-cart-threshold,
    .popup-shopping-cart .tf-mini-cart-sroll {
        padding: 0 16px;
    }

    .popup-shopping-cart .tf-mini-cart-item {
        padding-bottom: 16px;
        margin-bottom: 16px;
    }

    .popup-shopping-cart .tf-mini-cart-item .tf-mini-cart-image {
        width: 100px;
        height: 100px;
    }

    .popup-shopping-cart .tf-mini-cart-item .tf-mini-cart-info {
        gap: 2px;
    }

    .popup-shopping-cart .popup-header {
        padding: 16px;
    }

    .popup-shopping-cart .tf-mini-cart-tool {
        padding: 10px 16px;
    }

    .popup-shopping-cart .tf-mini-cart-tool-btn {
        padding: 6px 8px;
    }

    .popup-shopping-cart .tf-mini-cart-bottom-wrap {
        padding: 16px 16px 24px;
    }

    .popup-shopping-cart .tf-mini-cart-tool-openable .tf-mini-cart-tool-content {
        padding: 24px 16px;
    }
}

.tf-mini-cart-main {
    flex: 1 1 auto;
    position: relative;
}

.tf-mini-cart-sroll {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    overflow: auto;
    padding: 0px 32px;
}

.tf-mini-cart-sroll::-webkit-scrollbar {
    width: 5px;
}

.tf-mini-cart-sroll::-webkit-scrollbar-thumb {
    background-color: var(--primary);
    border-radius: 5px;
}

.tf-mini-cart-items {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.tf-mini-cart-items .tf-mini-cart-item:not(:last-child) {
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 1px solid var(--line);
}

.tf-mini-cart-items .tf-mini-cart-item:last-child {
    padding-bottom: 30px;
}

.tf-mini-cart-tool {
    padding: 30px 32px 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

@media (max-width: 767px) {
    .tf-mini-cart-tool {
        gap: 6px;
    }
}

.tf-mini-cart-tool-btn {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 10px;
    border-radius: 99px;
    border: 1px solid var(--line);
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-mini-cart-tool-btn .icon {
    font-size: 20px;
}

.tf-mini-cart-tool-btn:hover {
    background-color: var(--black);
    color: var(--white);
}

@media (max-width: 767px) {
    .tf-mini-cart-tool-btn {
        gap: 6px;
    }
}

.tf-mini-cart-tool-openable {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    transform: translateY(100%);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    z-index: 70;
    opacity: 0;
    visibility: hidden;
}

.tf-mini-cart-tool-openable.open {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
}

.tf-mini-cart-tool-openable.open>.overlay {
    opacity: 0;
    visibility: visible;
}

.tf-mini-cart-tool-openable.open .tf-mini-cart-tool-content {
    box-shadow: 0px -10px 20px 0px rgba(0, 0, 0, 0.1019607843);
}

.tf-mini-cart-tool-openable>.overlay {
    position: absolute;
    left: 0;
    bottom: 0;
    height: 200vh;
    right: 0;
    background-color: transparent;
    opacity: 0;
    background-color: var(--black);
    visibility: hidden;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-mini-cart-tool-openable .tf-mini-cart-tool-close {
    cursor: pointer;
}

.tf-mini-cart-tool-openable .tf-mini-cart-tool-content {
    position: relative;
    z-index: 80;
    padding: 32px;
    background-color: var(--white);
}

.tf-mini-cart-tool-openable .tf-mini-cart-tool-content .tf-mini-cart-tool-text {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px;
    color: var(--black);
}

.tf-mini-cart-tool-openable .tf-mini-cart-tool-content .tf-mini-cart-tool-text .icon {
    font-size: 20px;
}

.tf-mini-cart-tool-openable .tf-mini-cart-tool-content .tf-cart-tool-btns {
    display: flex;
    gap: 12px;
    flex-direction: column;
}

.tf-mini-cart-tool-openable.add-note textarea {
    height: 148px;
    margin-bottom: 24px;
    border-radius: 32px;
}

.tf-mini-cart-tool-openable.coupon .tf-mini-cart-tool-text1 {
    margin-bottom: 7px;
    color: #475467;
}

.tf-mini-cart-tool-openable.coupon input {
    margin-bottom: 90px;
}

.tf-mini-cart-tool-openable.add-gift .wrap {
    padding: 44.5px 15px;
    border-radius: 32px;
    border: 1px solid var(--line);
    text-align: center;
    margin-bottom: 24px;
}

.tf-mini-cart-tool-openable.add-gift .wrap .icon {
    margin-bottom: 8px;
    font-size: 40px;
}

.tf-mini-cart-tool-openable.estimate-shipping .field {
    margin-bottom: 24px;
}

.tf-mini-cart-tool-openable.estimate-shipping .tf-cart-tool-btns {
    margin-top: 30px;
}

.tf-mini-cart-tool-openable.estimate-shipping .error {
    margin-top: 20px;
    color: #FF6F61;
}

.tf-mini-cart-tool-openable.estimate-shipping .success {
    margin-top: 20px;
}

.tf-mini-cart-tool-openable.estimate-shipping .success .standard {
    color: #1CAA23;
    margin-top: 4px;
}

.canvas-size .canvas-body {
    display: grid;
    gap: 40px;
}

.canvas-size .title {
    margin-bottom: 12px;
}

.canvas-size .resize-info-list {
    display: grid;
    gap: 12px;
    color: var(--main-4);
    margin-bottom: 12px;
}

.canvas-size .tf-table-res-df .sub {
    margin-bottom: 24px;
}

.canvas-size .tf-sizeguide-table {
    white-space: nowrap;
    overflow: auto;
    width: 100%;
    height: max-content;
}

.canvas-delivery .delivery-list {
    display: grid;
    gap: 20px;
}

.canvas-delivery .delivery-list li {
    display: grid;
    gap: 4px;
}

@media (min-width: 992px) {
    .canvas-delivery .delivery-list {
        gap: 40px;
    }
}

.canvas-pickup .store-list {
    display: grid;
    gap: 35px;
}

@media (min-width: 992px) {
    .canvas-pickup .store-list {
        gap: 48px;
    }
}

.canvas-pickup .store-ready-item {
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 10px;
}

@media (min-width: 768px) {
    .canvas-pickup .store-ready-item {
        gap: 20px;
    }
}

.canvas-pickup .store-status {
    display: flex;
    align-items: center;
    gap: 10px;
}

.canvas-pickup .store-status .icon {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #148710;
    border: 1px solid #148710;
    flex-shrink: 0;
}

.canvas-pickup .store-status .icon i {
    font-size: 8px;
}

@media (max-width: 991px) {
    .canvas-pickup .store-status .text {
        font-size: 14px;
    }
}

.canvas-description .des-list {
    display: grid;
    gap: 30px;
}

.canvas-description .des-list li {
    display: grid;
    gap: 4px;
}

@media (min-width: 992px) {
    .canvas-description .des-list {
        gap: 40px;
    }
}

.canvas-engrave .engrave-list {
    display: grid;
    gap: 20px;
}

.canvas-engrave .engrave-list li {
    display: grid;
    gap: 15px;
}

.canvas-engrave .engrave-more-infor {
    display: grid;
    gap: 9px;
}

.canvas-engrave .engrave-more-infor li {
    position: relative;
    padding-left: 10px;
    color: var(--main-4);
}

.canvas-engrave .engrave-more-infor li::after {
    content: "";
    top: 50%;
    transform: translateY(-50%);
    position: absolute;
    width: 2px;
    height: 2px;
    background-color: var(--main-4);
}

@media (min-width: 992px) {
    .canvas-engrave .engrave-list {
        gap: 40px;
    }
}

.tf-mini-cart-item {
    display: flex;
    align-items: center;
    gap: 24px;
}

.tf-mini-cart-item .tf-mini-cart-image {
    width: 122px;
    height: 122px;
}

.tf-mini-cart-item .tf-mini-cart-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tf-mini-cart-item .tf-mini-cart-info {
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 8px;
    flex: 1;
    align-items: stretch;
}

.tf-mini-cart-item .tf-mini-cart-info .icon-close {
    font-size: 16px;
    color: var(--text-3);
    cursor: pointer;
}

.size {
    display: flex;
    gap: 8px;
    align-items: center;
}

.size .dot-color {
    position: relative;
    display: flex;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    margin: 4px;
}

.size .dot-color::after {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 1px solid var(--line);
}

.canvas-filter .canvas-header {
    box-shadow: 0px 4px 10px 0px rgba(212, 212, 212, 0.2509803922);
}

.canvas-filter .canvas-bottom {
    display: flex;
    align-items: center;
    gap: 10px;
    box-shadow: 0px -4px 10px 0px rgba(212, 212, 212, 0.2509803922);
}

.canvas-filter .canvas-bottom>* {
    width: 100%;
}

@media (min-width: 1200px) {

    .canvas-filter .canvas-header,
    .canvas-filter .canvas-body,
    .canvas-filter .canvas-bottom {
        padding: 32px 40px;
    }
}

@media (max-width: 767px) {
    .canvas-filter {
        max-width: 325px;
    }
}

.modal-quick-view .icon-close-popup {
    font-size: 24px;
    top: 30px;
    right: 16px;
}

.modal-quick-view .modal-dialog {
    max-width: 1470px;
}

.modal-quick-view .modal-content {
    display: flex;
    padding: 30px 16px;
    gap: 32px;
    justify-content: space-between;
}

.modal-quick-view .tf-single-slide {
    height: 100%;
}

.modal-quick-view .tf-single-slide .item {
    height: 100%;
}

.modal-quick-view .tf-single-slide .item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 0.8405797101;
}

.modal-quick-view .tf-product-info-wrap {
    position: relative;
    margin: 0;
}

.modal-quick-view .tf-product-info-inner {
    display: flex !important;
    flex-direction: column;
    align-items: start;
}

.modal-quick-view .product-info-name {
    margin-bottom: 24px;
}

.modal-quick-view .product-info-meta {
    margin-bottom: 32px;
}

.modal-quick-view .product-info-meta .rating {
    display: flex;
    gap: 9px;
    align-items: center;
}

.modal-quick-view .product-info-price {
    margin-bottom: 24px;
}

.modal-quick-view .price-wrap {
    align-items: start;
    gap: 0;
}

.modal-quick-view .price-new {
    margin-right: 15px;
}

.modal-quick-view .price-old {
    margin-right: 8px;
}

.modal-quick-view .badges-on-sale {
    border-radius: 4px;
    padding: 0 7px;
    line-height: 22px;
    background-color: var(--primary);
    color: var(--white);
}

.modal-quick-view .product-infor-sub {
    margin-bottom: 32px;
}

@media (min-width: 768px) {
    .modal-quick-view .icon-close-popup {
        font-size: 24px;
        top: 0px;
        right: 0px;
    }

    .modal-quick-view .tf-product-media-wrap {
        width: 45%;
    }

    .modal-quick-view .tf-product-info-wrap {
        width: 55%;
    }

    .modal-quick-view .modal-content {
        flex-direction: row;
    }
}

@media (min-width: 1200px) {
    .modal-quick-view .product-info-price {
        margin-bottom: 32px;
    }

    .modal-quick-view .modal-content {
        padding: 48px;
    }

    .modal-quick-view .icon-close-popup {
        font-size: 24px;
        top: 10px;
        right: 10px;
    }
}

@media (min-width: 1440px) {
    .modal-quick-view .tf-product-media-wrap {
        max-width: 696px;
        width: 100%;
    }

    .modal-quick-view .tf-product-info-wrap {
        max-width: 600px;
        width: 100%;
        position: relative;
        margin: 0;
    }
}

.product-info-meta {
    display: flex;
    gap: 32px;
    align-items: center;
    flex-wrap: wrap;
}

.product-info-meta .rating {
    display: flex;
    gap: 9px;
    align-items: center;
}

@media (max-width: 991px) {
    .product-info-meta {
        gap: 18px;
    }
}

.product-info-price .price-wrap {
    align-items: start;
    gap: 0;
}

.product-info-price .price-new {
    margin-right: 15px;
}

.product-info-price .price-old {
    margin-right: 8px;
}

.product-info-price .badges-on-sale {
    border-radius: 4px;
    padding: 0 7px;
    line-height: 22px;
    background-color: var(--primary);
    color: var(--white);
}

.modal-quick-add .modal-content {
    padding: 30px 20px;
}

.modal-quick-add .tf-product-mini-view {
    margin-bottom: 24px;
    position: relative;
    padding-right: 20px;
}

.modal-quick-add .tf-product-mini-view .icon-close-popup {
    top: 0;
    right: 0;
    padding: 0;
}

@media (min-width: 768px) {
    .modal-quick-add .modal-dialog {
        max-width: 537px;
    }

    .modal-quick-add .modal-content {
        padding: 40px;
    }
}

.modal-auto-product .modal-dialog {
    max-width: 1413px;
}

.modal-auto-product .modal-content {
    padding: 40px 15px 20px;
}

.modal-auto-product .title,
.modal-auto-product .countdown-V03 {
    margin-bottom: 24px;
}

@media (min-width: 768px) {
    .modal-auto-product .modal-content {
        padding: 40px;
    }
}

@media (min-width: 1200px) {
    .modal-auto-product .modal-content {
        padding: 83px 80px;
    }

    .modal-auto-product .countdown-V03 {
        margin-bottom: 48px;
    }
}

.modal-auto-newletter .modal-dialog {
    max-width: 985px;
}

.modal-auto-newletter .modal-body {
    display: flex;
    align-items: center;
}

.modal-auto-newletter .content {
    padding: 40px 20px 20px 20px;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.modal-auto-newletter .heading {
    display: grid;
    gap: 24px;
}

@media (min-width: 768px) {
    .modal-auto-newletter .image {
        max-width: 438px;
        width: 100%;
    }

    .modal-auto-newletter .image img {
        aspect-ratio: 0.7821428571;
    }

    .modal-auto-newletter .content {
        padding: 40px;
    }
}

@media (min-width: 1200px) {
    .modal-auto-newletter .content {
        padding: 82px 54px;
    }

    .modal-auto-newletter .heading {
        margin-bottom: 12px;
    }

    .modal-auto-newletter .form-newleter {
        margin-bottom: 20px;
    }
}

@media (max-width: 767px) {
    .modal-auto-newletter .modal-body {
        flex-direction: column;
    }
}

.canvas-compare {
    height: max-content !important;
    z-index: 5000;
}

.canvas-compare .close-popup {
    position: absolute;
    top: 30px;
    right: 30px;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    cursor: pointer;
}

.canvas-compare .canvas-body {
    padding: 32px 0;
}

.canvas-compare .canvas-wrapper {
    height: unset;
}

.offcanvas-backdrop {
    z-index: 2000;
}

.tf-compare-list {
    display: flex;
    align-items: center;
    gap: 10px;
}

.tf-compare-list .tf-compare-head {
    flex: 0 0 18.96%;
    display: flex;
    align-items: center;
    white-space: nowrap;
}

.tf-compare-list .tf-compare-head .title {
    font-size: 28px;
    line-height: 34px;
}

.tf-compare-list .tf-compare-offcanvas {
    display: flex;
    align-items: center;
    flex: 1 1 100%;
    overflow-x: auto;
}

.tf-compare-list .tf-compare-offcanvas .tf-compare-item {
    flex: 0 0 25%;
    max-width: 150px;
    height: 200px;
    padding: 0 12px;
    display: flex;
}

.tf-compare-list .tf-compare-offcanvas .tf-compare-item a {
    display: flex;
    position: relative;
}

.tf-compare-list .tf-compare-offcanvas .tf-compare-item .icon {
    position: absolute;
    z-index: 5;
    top: 8px;
    right: 8px;
    width: 32px;
    height: 32px;
    background-color: var(--white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.2);
}

.tf-compare-list .tf-compare-offcanvas .tf-compare-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tf-compare-list .tf-compare-buttons {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 0 0 17%;
}

.tf-compare-list .tf-compare-buttons .tf-compare-button-clear-all {
    cursor: pointer;
}

@media (max-width: 1024px) {
    .tf-compare-list {
        flex-direction: column;
        max-height: 100%;
        overflow-y: auto;
        gap: 20px;
    }

    .tf-compare-list>div {
        flex: 0 0 100% !important;
    }

    .tf-compare-list .tf-compare-offcanvas .tf-compare-item {
        max-width: unset;
        height: unset;
    }

    .tf-compare-list .tf-compare-buttons {
        width: 100%;
        justify-content: space-between;
        flex-direction: row;
    }
}

@media (max-width: 767px) {
    .tf-compare-list .tf-compare-offcanvas .tf-compare-item {
        flex: 0 0 33.333%;
    }
}

@media (max-width: 575px) {
    .tf-compare-list .tf-compare-offcanvas .tf-compare-item {
        flex: 0 0 50%;
    }
}

.modal-order-detail .modal-dialog {
    max-width: 1094px;
}

.modal-order-detail .modal-top {
    margin-bottom: 24px;
}

.modal-order-detail .modal-content {
    padding: 30px 15px;
}

.modal-order-detail .list-infor {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 24px;
}

.modal-order-detail .list-infor .br-line {
    height: 16px;
    width: 1px;
    background-color: var(--line-8);
}

@media (min-width: 1200px) {
    .modal-order-detail .list-infor {
        gap: 15px;
    }
}

.modal-order-detail .order-total-wrap {
    margin-top: 20px;
    margin-bottom: 40px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.modal-order-detail .order-total-wrap .text,
.modal-order-detail .order-total-wrap .order-total {
    padding-left: 24px;
}

.modal-order-detail .order-total-wrap .text {
    max-width: 183px;
    width: 100%;
}

.modal-order-detail .order-total-wrap .order-total {
    max-width: 220px;
    width: 100%;
}

@media (min-width: 992px) {
    .modal-order-detail .modal-content {
        padding: 32px;
    }
}

@media (min-width: 1200px) {
    .modal-order-detail .list-infor {
        gap: 24px;
        margin-bottom: 48px;
    }

    .modal-order-detail .modal-top {
        margin-bottom: 48px;
    }

    .modal-order-detail .order-total-wrap {
        margin-top: 32px;
        margin-bottom: 64px;
    }
}

.modal-search .icon-close-popup {
    top: 0;
    right: 0;
}

.modal-search .modal-dialog {
    max-width: 974px;
}

.modal-search .modal-content {
    padding: 48px;
    display: grid;
    gap: 40px;
}

@media (max-width: 991px) {
    .modal-search .modal-content {
        padding: 48px 15px 30px;
    }
}

.modal-search .form-search {
    margin-bottom: 16px;
}

.modal-search .quick-link-list {
    display: flex;
    gap: 16px;
    align-items: center;
    flex-wrap: wrap;
}

.modal-search .view-history-wrap .title {
    margin-bottom: 24px;
}

.modal-search .view-history-wrap .view-history-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.modal-search .view-history-wrap .view-history-list .item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.modal-search .view-history-wrap .view-history-list .item .icon {
    font-size: 24px;
}

.modal-search .trend-product-wrap .heading {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
    padding-bottom: 23px;
    border-bottom: 1px solid var(--line);
    margin-bottom: 24px;
}

.modal-search .trend-product-wrap .trend-product-inner {
    display: flex;
    gap: 30px;
}

@media (min-width: 768px) {
    .modal-search .trend-product-wrap .trend-product-inner>* {
        width: 50%;
    }
}

@media (max-width: 767px) {
    .modal-search .trend-product-wrap .trend-product-inner {
        flex-direction: column;
    }
}

.modal-search .trend-product-item {
    display: flex;
    gap: 24px;
}

.modal-search .trend-product-item .image {
    width: 122px;
    height: 122px;
    flex-shrink: 0;
}

.modal-search .trend-product-item .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.modal-search .trend-product-item .sub {
    margin-bottom: 4px;
}

.modal-search .trend-product-item .title {
    margin-bottom: 8px;
}

.modal-search .trend-product-item .title a {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}

.modal-search .trend-product-item:not(:last-child) {
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 1px solid var(--line);
}

.tf-toolbar-bottom {
    display: none;
    padding: 21px 0px 12px;
    position: fixed;
    z-index: 200;
    bottom: 0;
    right: 0;
    left: 0;
    border-top: 1px solid #eeeeee;
    background-color: var(--white);
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.0784313725);
}

.tf-toolbar-bottom .toolbar-item {
    flex: 1 0 20%;
    position: relative;
}

.tf-toolbar-bottom a {
    width: 100%;
    gap: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.tf-toolbar-bottom .toolbar-icon {
    font-size: 24px;
    position: relative;
    display: flex;
}

.tf-toolbar-bottom .toolbar-count {
    position: absolute;
    top: -11px;
    right: -10px;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--primary);
    border-radius: 50%;
    font-size: 12px;
    line-height: 16px;
    color: var(--white);
}

.tf-toolbar-bottom .toolbar-label {
    font-weight: 500;
    font-size: 16px;
    line-height: 21px;
}

@media (max-width: 1199px) {
    .tf-toolbar-bottom {
        display: flex;
    }
}

.modal-unavailable .tf-product-notify {
    border: 0;
}

.modal-unavailable .modal-dialog {
    max-width: 678px;
}

.canvas-nav {
    width: 320px !important;
}

.canvas-nav .icon-close-popup {
    position: absolute;
    top: 0px;
    right: 0px;
    font-size: 24px;
}

.canvas-nav .canvas-header {
    padding-bottom: 32px;
    position: relative;
}

.canvas-nav .canvas-header .br-line {
    position: absolute;
    height: 1px;
    background-color: var(--line);
    left: 24px;
    right: 24px;
    bottom: 0px;
    width: auto;
}

.canvas-nav .canvas-body {
    display: flex;
}

.canvas-nav .col-left {
    width: 68.96%;
    position: relative;
    overflow: auto;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.canvas-nav .col-left::-webkit-scrollbar {
    width: 5px;
}

.canvas-nav .col-left::-webkit-scrollbar-thumb {
    background-color: var(--black);
}

.canvas-nav .col-right {
    width: 31.04%;
    overflow: auto;
    gap: 12px;
}

.canvas-nav .col-right::-webkit-scrollbar {
    width: 5px;
}

.canvas-nav .col-right::-webkit-scrollbar-thumb {
    background-color: var(--black);
}

.canvas-nav .col-left {
    padding: 16px 24px 24px;
}

.canvas-nav .col-left>.group-btn {
    gap: 8px;
}

.canvas-nav .canvas-footer {
    display: flex;
    gap: 16px;
}

.canvas-nav .canvas-footer .br-line {
    width: 1px;
    height: 24px;
}

@media (min-width: 576px) {
    .canvas-nav {
        width: 767px !important;
    }

    .canvas-nav .icon-close-popup {
        top: 16px;
        right: 16px;
        border-radius: 50%;
        border: 1px solid var(--line);
        display: flex;
        align-items: center;
        justify-content: center;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
        position: absolute;
        background-color: var(--white);
    }

    .canvas-nav .icon-close-popup .icon {
        color: var(--black);
        font-size: 24px;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    .canvas-nav .icon-close-popup:hover {
        border-color: var(--primary);
    }

    .canvas-nav .icon-close-popup:hover .icon {
        color: var(--primary);
    }
}

@media (min-width: 1200px) {
    .canvas-nav {
        width: 100% !important;
    }

    .canvas-nav .icon-close-popup {
        width: 60px;
        height: 60px;
    }
}

@media (min-width: 1440px) {
    .canvas-nav .col-left {
        padding: 48px;
    }
}

@media (min-width: 1600px) {
    .canvas-nav .icon-close-popup {
        width: 80px;
        height: 80px;
        top: 48px;
        right: 48px;
    }
}

@media (max-width: 1439px) {
    .canvas-nav .col-left {
        width: 60%;
    }

    .canvas-nav .col-right {
        width: 40%;
    }

    .canvas-nav .box-image_content {
        bottom: 16px;
        left: 16px;
    }
}

@media (max-width: 1199px) {
    .canvas-nav .col-left {
        width: 100%;
    }

    .canvas-nav .col-right {
        display: none;
    }
}

@media (max-width: 575px) {
    .canvas-nav .mmenu-item_link {
        font-weight: 700;
        font-size: 18px;
        line-height: 24px;
    }

    .canvas-nav .mmenu-item_link .icon {
        font-size: 18px;
    }
}

.mmenu-list {
    display: flex;
    flex-direction: column;
    max-width: 1040px;
    width: 100%;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    opacity: 1;
    visibility: visible;
}

.mmenu-list li:not(:first-child) .mmenu-item_link {
    padding-top: 16px;
}

.mmenu-list li:not(:last-child) .mmenu-item_link {
    padding-bottom: 16px;
    border-bottom: 1px solid var(--line);
}

@media (min-width: 1200px) {
    .mmenu-list {
        justify-content: center;
        flex: 1;
    }
}

@media (min-width: 1440px) {
    .mmenu-list li:not(:first-child) .mmenu-item_link {
        padding-top: 32px;
    }

    .mmenu-list li:not(:last-child) .mmenu-item_link {
        padding-bottom: 32px;
    }
}

@media (max-width: 575px) {
    .mmenu-list li:not(:first-child) .mmenu-item_link {
        padding-top: 8px;
    }

    .mmenu-list li:not(:last-child) .mmenu-item_link {
        padding-bottom: 8px;
    }
}

.mmenu-item_link {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.mmenu-item_link .icon {
    font-size: 32px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.mmenu-item_link:hover .icon {
    transform: rotate(45deg);
}

.sub-mmnenu-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--white);
    padding: 16px 24px 24px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    opacity: 0;
    visibility: hidden;
    transform: translateX(100%);
    overflow: auto;
}

.sub-mmnenu-content::-webkit-scrollbar {
    width: 3px;
}

.sub-mmnenu-content::-webkit-scrollbar-thumb {
    background-color: var(--primary);
}

.sub-mmnenu-content .sub-mmenu_head {
    margin-bottom: 30px;
}

.sub-mmnenu-content.active {
    transform: translateX(0);
    opacity: 1;
    visibility: visible;
}

@media (min-width: 1200px) {
    .sub-mmnenu-content {
        padding: 54px 48px;
    }

    .sub-mmnenu-content .sub-mmenu_head {
        margin-bottom: 48px;
    }
}

@media (max-width: 575px) {
    .sub-mmnenu-content .grid-recent {
        gap: 0;
    }

    .sub-mmnenu-content .grid-recent>*:not(:last-child)>*:last-child {
        padding-bottom: 25px;
        margin-bottom: 24px;
        border-bottom: 1px solid var(--line);
    }
}

.mega-mmenu_list {
    max-width: 1091px;
    width: 100%;
    display: flex;
    overflow: auto;
    gap: 32px;
}

.mega-mmenu_list .mega-mmenu_heading {
    margin-bottom: 24px;
}

.mega-mmenu_list .mega-mmenu_item:not(:last-child) {
    padding-right: 33px;
    border-right: 1px solid var(--line);
}

@media (min-width: 1600px) {
    .mega-mmenu_list {
        gap: 48px;
    }

    .mega-mmenu_list .mega-mmenu_item {
        min-width: 200px;
    }

    .mega-mmenu_list .mega-mmenu_item:not(:last-child) {
        padding-right: 49px;
    }
}

@media (min-width: 1440px) {
    .mega-mmenu_list .mega-mmenu_heading {
        margin-bottom: 32px;
    }
}

@media (min-width: 576px) and (max-width: 1439px) {
    .mega-mmenu_list.mmenu-list_product {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .mega-mmenu_list.mmenu-list_product .mega-mmenu_item {
        padding: 0;
        border: unset;
    }
}

@media (max-width: 575px) {
    .mega-mmenu_list {
        display: grid;
        grid-template-columns: 1fr;
    }

    .mega-mmenu_list .mega-mmenu_item {
        padding: 0 !important;
        border: unset !important;
    }
}

.sub-mmenu_head {
    display: flex;
    align-items: center;
    gap: 24px;
}

.sub-mmenu_head .br-line {
    height: 24px;
}

.sub-mmenu_head .icon {
    font-size: 30px;
}

@media (min-width: 1200px) {
    .sub-mmenu_head {
        gap: 32px;
    }

    .sub-mmenu_head .icon {
        font-size: 40px;
    }
}

.sub-mmenu_main {
    display: grid;
    gap: 40px;
}

.mega-menu_recent .title {
    margin-bottom: 24px;
}

.mega-menu_recent .list-ver {
    gap: 24px;
}

.mega-mmenu_heading {
    font-weight: 600;
}

.sub-mega-mmenu_list li:not(:first-child) .mega-mmenu_link {
    padding-top: 8px;
}

.sub-mega-mmenu_list li:not(:last-child) .mega-mmenu_link {
    padding-bottom: 8px;
}

.mega-mmenu_link {
    display: flex;
}

.mmenu-wrapper .group-btn,
.mmenu-wrapper .flow-us-wrap,
.mmenu-wrapper .payment-wrap {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    opacity: 1;
    visibility: visible;
}

.mmenu-wrapper.submenu-open {
    overflow: hidden;
}

.mmenu-wrapper.submenu-open .group-btn,
.mmenu-wrapper.submenu-open .flow-us-wrap,
.mmenu-wrapper.submenu-open .payment-wrap {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    opacity: 0;
    visibility: hidden;
}

.sidebar-filter {
    background-color: var(--white);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.sidebar-filter .canvas-header {
    color: var(--black);
}

.sidebar-filter .canvas-body {
    overflow-x: hidden;
}

@media (min-width: 1200px) {

    .sidebar-filter .canvas-body,
    .sidebar-filter .canvas-bottom {
        padding: 0;
    }
}

@media (max-width: 1199px) {
    .sidebar-filter {
        position: fixed;
        bottom: 0;
        z-index: 3000;
        display: flex;
        flex-direction: column;
        background-clip: padding-box;
        outline: 0;
    }

    .sidebar-filter.left {
        top: 0;
        left: 0;
        transform: translateX(-100%);
    }

    .sidebar-filter.right {
        top: 0;
        right: 0;
        transform: translateX(100%);
    }

    .sidebar-filter.show {
        transform: none;
    }
}

.modal-size-guide .modal-dialog {
    max-width: 974px;
}

.modal-size-guide .modal-content {
    border: 0;
    padding: 48px;
}

.modal-size-guide .modal-content .header {
    margin-bottom: 40px;
}

.modal-size-guide .modal-content .wrap {
    min-height: 328px;
}

@media (max-width: 1024px) {
    .modal-size-guide .modal-content {
        padding: 24px;
    }

    .modal-size-guide .modal-content .header {
        margin-bottom: 24px;
    }

    .modal-size-guide .suggests {
        flex-wrap: wrap;
    }
}

.box-text_empty.type-shop_cart {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-bottom: 32px;
    gap: 30px;
}

.box-text_empty.type-shop_cart .shop-empty_top {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    max-width: 354px;
    margin: 0 auto;
    flex: 1;
}

.box-text_empty.type-shop_cart .shop-empty_top .icon {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background-color: var(--black);
    font-size: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--white);
    margin-bottom: 24px;
}

.box-text_empty.type-shop_cart .shop-empty_top .text-emp {
    margin-bottom: 12px;
}

.box-text_empty.type-shop_cart .shop-empty_bot {
    display: grid;
    gap: 12px;
}

@media (max-width: 767px) {
    .box-text_empty.type-shop_cart .shop-empty_top .icon {
        width: 60px;
        height: 60px;
        font-size: 24px;
    }

    .box-text_empty.type-shop_cart .text-emp {
        font-size: 24px;
        line-height: 32px;
    }
}

.modal-compare_color .modal-dialog {
    max-width: 1470px;
}

.modal-compare_color .modal-content {
    padding: 30px 16px;
}

@media (min-width: 1200px) {
    .modal-compare_color .modal-content {
        padding: 48px;
    }
}

.compare-color_list {
    border: 1px solid var(--line);
    display: flex;
    overflow-x: auto;
    max-width: 1344px;
}

.compare-color_list .box-text_empty {
    padding: 20px 16px;
}

.compare-color_list .compare-color_item {
    border-right: 1px solid var(--line);
    flex: 0 0 auto;
    width: 335.5px;
}

@media (max-width: 767px) {
    .compare-color_list {
        max-width: 1000px;
    }

    .compare-color_list .compare-color_item {
        width: 250px;
    }
}

.compare-color_item {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 16px;
    padding: 16px;
}

.compare-color_item .compare_image {
    position: relative;
}

.compare-color_item .remove {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    background-color: var(--white);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    cursor: pointer;
    border-radius: 50%;
    color: var(--black);
}

.compare-color_item .remove:hover {
    background-color: var(--black);
    color: var(--white);
    border-color: var(--black);
}

.compare-color_item .compare_colour {
    display: flex;
    align-items: center;
    color: var(--black);
    gap: 12px;
    border: 1px solid var(--line);
    padding: 7px;
    border-radius: 999px;
}

.compare-color_item .color {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: block;
}

.compare-color_item .compare_bot {
    display: grid;
    gap: 8px;
    width: 100%;
}

.modal-ask_question .modal-dialog,
.modal-ship_delivery .modal-dialog,
.modal-share .modal-dialog,
.modal-edit_address .modal-dialog,
.modal-newletter .modal-dialog {
    max-width: 726px;
}

.modal-ask_question .modal-content,
.modal-ship_delivery .modal-content,
.modal-share .modal-content,
.modal-edit_address .modal-content,
.modal-newletter .modal-content {
    padding: 30px 16px;
}

@media (min-width: 1200px) {

    .modal-ask_question .modal-content,
    .modal-ship_delivery .modal-content,
    .modal-share .modal-content,
    .modal-edit_address .modal-content,
    .modal-newletter .modal-content {
        padding: 48px;
    }
}

.modal-ask_question .form-ask {
    margin-bottom: 24px;
}

.legal-list {
    display: grid;
    gap: 32px;
}

.legal-list .legal-item {
    display: grid;
    gap: 16px;
}

.modal-share .tf-social-icon {
    margin-bottom: 30px;
}

.modal-share .wrap-code {
    position: relative;
    border-radius: 999px;
    padding: 16px 24px;
    background-color: var(--bg-2);
}

.modal-share .btn-coppy-text {
    position: absolute;
    top: 5px;
    right: 5px;
    bottom: 5px;
    min-width: 140px;
}

@media (min-width: 1200px) {
    .modal-share .tf-social-icon {
        margin-bottom: 40px;
    }
}

.modal-newletter .modal-heading {
    margin-bottom: 0;
}

.modal-newletter .icon-close-popup {
    background-color: var(--white);
    border-radius: 50%;
    transform: unset;
    top: 8px;
    right: 8px;
}

.modal-newletter .modal-body {
    padding: 30px;
}

.modal-newletter .sub-title,
.modal-newletter .title {
    text-align: center;
}

.modal-newletter .sub-title {
    margin-bottom: 8px;
}

.modal-newletter .title {
    margin-bottom: 30px;
}

.modal-newletter .form-newletter {
    margin-bottom: 24px;
}

@media (min-width: 1200px) {
    .modal-newletter .modal-body {
        padding: 48px;
    }

    .modal-newletter .title {
        margin-bottom: 40px;
    }
}

@media (max-width: 767px) {
    .modal-newletter .modal-body {
        padding: 30px 16px;
    }

    .modal-newletter .icon-close-popup {
        padding: 10px;
        font-size: 18px;
    }
}

.wrapper-invoice {
    background-color: var(--bg-2);
    display: flex;
    justify-content: center;
    align-items: center;
}

.s-invoice {
    padding-top: 32px;
    padding-bottom: 32px;
}

.s-invoice .heading {
    margin-bottom: 40px;
}

@media (min-width: 1200px) {
    .s-invoice .heading {
        margin-bottom: 56px;
    }
}

.wg-invoice {
    background-color: var(--white);
    padding: 30px 20px;
    display: grid;
    gap: 40px;
}

.wg-invoice .invoice-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
}

.wg-invoice .invoice-info {
    display: flex;
    justify-content: space-between;
    gap: 30px;
}

.wg-invoice .invoice-info_item {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.wg-invoice .invoice-info_item .invoice_value {
    display: grid;
    gap: 4px;
}

.wg-invoice .invoice-social {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px 30px;
}

.wg-invoice .invoice_link {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--text);
}

.wg-invoice .invoice_link .icon {
    font-size: 16px;
}

@media (min-width: 992px) {
    .wg-invoice .invoice-info_item {
        min-width: 150px;
    }

    .wg-invoice .invoice-info_item:not(:last-child) {
        padding-right: 30px;
        border-right: 1px solid var(--line);
    }
}

@media (min-width: 1200px) {
    .wg-invoice {
        padding: 48px;
        gap: 56px;
    }

    .wg-invoice .invoice-social {
        gap: 58px;
    }

    .wg-invoice .invoice-info {
        gap: 48px;
    }

    .wg-invoice .invoice-info_item.invoice-info_date {
        min-width: 248px;
    }

    .wg-invoice .invoice-info_item:not(:last-child) {
        padding-right: 48px;
    }

    .wg-invoice .invoice_download-btn {
        min-width: 248px;
    }
}

@media (max-width: 991px) {
    .wg-invoice .invoice-info {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 32px 16px;
    }
}

@media (max-width: 575px) {
    .wg-invoice .invoice-info {
        grid-template-columns: 1fr;
        gap: 24px;
    }
}

.invoice-table {
    color: var(--black);
}

.invoice-table thead {
    background-color: var(--bg-2);
}

.invoice-table th {
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
}

.invoice-table th,
.invoice-table td {
    white-space: nowrap;
}

.invoice-table tbody tr {
    border-bottom: 1px solid var(--line);
}

@media (min-width: 1200px) {
    .invoice-table {
        table-layout: fixed;
    }

    .invoice-table th:first-child,
    .invoice-table td:first-child {
        width: 444px;
    }

    .invoice-table th {
        padding: 24px;
    }

    .invoice-table td {
        padding: 24px 24px 23px;
    }
}

.modalDemo .demo-title {
    margin-top: 50px;
    margin-bottom: 44px;
    text-align: center;
}

.modalDemo .modal-dialog {
    max-width: 1540px;
    margin-top: 8px;
    margin-bottom: 8px;
    height: calc(100vh - 16px);
}

.modalDemo .modal-content {
    padding: 0 50px 40px;
    background-color: var(--white);
    width: 100%;
    border-radius: 20px;
    margin: 0 30px;
    max-height: calc(100vh - 60px);
    border: 0;
    cursor: default;
    overflow: hidden;
}

.modalDemo .mega-menu {
    padding: 0 32px;
    overscroll-behavior-y: contain;
    overflow-y: auto;
}

.modalDemo .mega-menu::-webkit-scrollbar {
    width: 6px;
}

.modalDemo .mega-menu::-webkit-scrollbar:hover {
    width: 12px;
    height: 12px;
}

.modalDemo .mega-menu::-webkit-scrollbar-thumb {
    background: var(--primary);
    transition: all 0.3s ease;
}

.modalDemo .header {
    position: relative;
}

.modalDemo .header .icon-close-popup {
    position: absolute;
    top: 18px;
    right: 0;
}

.modalDemo .row-demo {
    grid-template-columns: repeat(5, 1fr);
    row-gap: 32px;
}

.modalDemo .row-demo .demo-img {
    aspect-ratio: 0;
}

.compare-color_list .box-text_empty {
    display: none;
}

/*------------ box icon ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.box-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    cursor: pointer;
}

.tf-social-icon {
    display: inline-flex;
    gap: 16px;
    --facebook-cl: rgb(59, 89, 152);
    --x-cl: rgb(85, 85, 85);
    --instagram-cl: linear-gradient(#8a3ab9, #e95950, #fccc63);
    --threads-cl: rgb(224, 53, 102);
    --youtube-cl: rgb(205, 32, 31);
    --tiktok-cl: linear-gradient(#25f4ee, #000, #fe2c55);
    --tiktok-cl2: rgb(254, 44, 85);
    --pinterest-cl: rgb(203, 32, 39);
    --tumblr-cl: rgb(55, 69, 92);
    --vimeo-cl: rgb(26, 183, 234);
    --snapchat-cl: rgb(255, 221, 0);
    --whatsapp-cl: rgb(0, 230, 118);
    --linked_in-cl: rgb(23, 106, 255);
    --wechat-cl: rgb(26, 173, 24);
    --reddit-cl: rgb(255, 69, 0);
    --line-cl: rgb(0, 195, 77);
    --spotify-cl: rgb(30, 125, 96);
}

.tf-social-icon a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: 1px solid;
    border-color: var(--line);
    position: relative;
}

.tf-social-icon a .icon {
    display: inline-flex;
    position: relative;
    z-index: 1;
    font-size: 16px;
}

.tf-social-icon a::after {
    content: "";
    border-radius: 50%;
    position: absolute;
    background: transparent;
    top: -1px;
    left: -1px;
    right: -1px;
    bottom: -1px;
    z-index: 0;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    opacity: 0;
    visibility: hidden;
}

.tf-social-icon.style-2 a {
    border-color: var(--line-3);
    color: var(--white);
}

.tf-social-icon .social-facebook::after {
    background: var(--facebook-cl);
}

.tf-social-icon .social-facebook:hover {
    color: var(--white);
}

.tf-social-icon .social-facebook:hover::after {
    opacity: 1;
    visibility: visible;
}

.tf-social-icon .social-instagram::after {
    background: var(--instagram-cl);
}

.tf-social-icon .social-instagram:hover {
    color: var(--white);
}

.tf-social-icon .social-instagram:hover::after {
    opacity: 1;
    visibility: visible;
}

/* YouTube */

.tf-social-icon .social-youtube::after {
    background: #ff0000;
}

.tf-social-icon .social-youtube:hover {
    color: var(--white);
}

.tf-social-icon .social-youtube:hover::after {
    opacity: 1;
    visibility: visible;
}


/* WhatsApp */

.tf-social-icon .social-whatsapp::after {
    background: #25D366;
}

.tf-social-icon .social-whatsapp:hover {
    color: var(--white);
}

.tf-social-icon .social-whatsapp:hover::after {
    opacity: 1;
    visibility: visible;
}

.tf-social-icon.style-white a {
    color: var(--white);
    border-color: var(--line);
}

.tf-social-icon_2 {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

.tf-social-icon_2 li,
.tf-social-icon_2 a {
    display: flex;
}

/*------------ hover ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.hover-img .img-style {
    overflow: hidden;
}

.hover-img .img-style>img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-transition: opacity 0.5s ease, transform 1.5s cubic-bezier(0, 0, 0.44, 1.18);
    transition: opacity 0.5s ease, transform 1.5s cubic-bezier(0, 0, 0.44, 1.18);
}

.hover-img:hover .img-style>img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.hover-img .img-style2 {
    overflow: hidden;
    border-radius: 10px;
}

.hover-img .img-style2 .img-hv {
    width: 100%;
    object-fit: cover;
    -webkit-transition: all 1s cubic-bezier(0.3, 1, 0.35, 1) 0s;
    transition: all 1s cubic-bezier(0.3, 1, 0.35, 1) 0s;
    transition: transform 500ms ease;
}

.hover-img2 .img-style2 {
    overflow: hidden;
    border-radius: 8px;
}

.hover-img2 .img-style2 .img2 {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.hover-img2:hover .img2 {
    transform: scale(1.1) rotate(3deg);
}

.hover-img3 .img-style3 {
    border-radius: 8px;
    overflow: hidden;
}

.hover-img3 .img-style3 img {
    width: 100%;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.hover-img3:hover img {
    transform: scale(1.075);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.hover-img4 .img-style4 {
    position: relative;
    overflow: hidden;
}

.hover-img4 .img-style4:after {
    content: "";
    position: absolute;
    width: 200%;
    height: 0%;
    left: 50%;
    top: 50%;
    background-color: rgba(255, 255, 255, 0.3);
    transform: translate(-50%, -50%) rotate(-45deg);
    z-index: 1;
    pointer-events: none;
}

.hover-img4 .img-style4 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 1s;
}

.hover-img4:hover .img-style4:after {
    height: 250%;
    transition: all 600ms linear;
    background-color: transparent;
}

.hover-img4:hover .img-style4 img {
    transform: scale(1.1);
}

.pagi2 .swiper-pagination2:hover .box-img .icon-practice,
.swiper-button-next2:hover .box-img .icon-practice,
.swiper-button-prev2:hover .box-img .icon-practice,
.hv-one:hover .box-img .icon-practice {
    opacity: 1;
    z-index: 99;
    top: 50%;
    transition-delay: 0.5s;
}

.pagi2 .swiper-pagination2:hover .img-style::before,
.swiper-button-next2:hover .img-style::before,
.swiper-button-prev2:hover .img-style::before,
.hv-one:hover .img-style::before {
    opacity: 1;
}

.pagi2 .swiper-pagination2 .img-style,
.swiper-button-next2 .img-style,
.swiper-button-prev2 .img-style,
.hv-one .img-style {
    border-radius: 10px;
    overflow: hidden;
}

.pagi2 .swiper-pagination2 .img-style::before,
.swiper-button-next2 .img-style::before,
.swiper-button-prev2 .img-style::before,
.hv-one .img-style::before {
    content: "";
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    position: absolute;
    background: rgba(0, 0, 0, 0.5019607843);
    width: 100%;
    height: 100%;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    z-index: 99;
    opacity: 0;
    border-radius: 10px;
}

.pagi2 .swiper-pagination2 .img-style.s-one::before,
.swiper-button-next2 .img-style.s-one::before,
.swiper-button-prev2 .img-style.s-one::before,
.hv-one .img-style.s-one::before {
    border-radius: 50%;
}

.hv-one2:hover .img-style2::before {
    opacity: 1;
    visibility: visible;
}

.hv-one2 .img-style2::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: all 0.4s ease-out 0s;
    -moz-transition: all 0.4s ease-out 0s;
    -ms-transition: all 0.4s ease-out 0s;
    -o-transition: all 0.4s ease-out 0s;
    transition: all 0.4s ease-out 0s;
    opacity: 0;
    visibility: hidden;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1;
    border-radius: 10px;
}

.hv-tool {
    position: relative;
    transition: all 0.3s ease;
}

.hover-tooltip {
    position: relative;
}

.hover-tooltip .tooltip {
    position: absolute;
    white-space: nowrap;
    padding: 4px 12px;
    border-radius: 2px;
    bottom: calc(100% + 10px);
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    visibility: hidden;
    color: var(--white);
    background-color: var(--black);
    transition: transform 0.3s ease 0.1s, opacity 0.3s ease 0.1s;
    z-index: 5;
    font-size: 12px;
    line-height: 22px;
    font-weight: 400;
    border-radius: 8px;
    text-align: center;
    font-family: "Afacad", sans-serif;
    display: none;
}

.hover-tooltip .tooltip::before {
    content: "";
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
    top: 26px;
    position: absolute;
    background: var(--black);
    width: 9px;
    height: 9px;
    z-index: -1;
}

@media (min-width: 1200px) {
    .hover-tooltip .tooltip {
        font-size: 16px;
        line-height: 22px;
        display: block;
    }
}

.hover-tooltip .tooltip.bg-primary::before {
    background: var(--primary);
}

.hover-tooltip:hover .tooltip {
    opacity: 1;
    visibility: visible;
}

.hover-tooltip.tooltip-bot .tooltip {
    top: calc(100% + 10px);
    bottom: unset;
}

.hover-tooltip.tooltip-bot .tooltip::before {
    top: -4px;
}

.hover-tooltip.tooltip-left .tooltip {
    right: 100%;
    bottom: auto;
    transform: translateX(0px);
    left: unset;
}

.hover-tooltip.tooltip-left .tooltip::before {
    top: 50%;
    left: auto;
    transform: translateY(-50%) rotate(45deg);
    right: -4px;
}

.hover-tooltip.tooltip-left:hover .tooltip {
    transform: translateX(-12px);
}

.hover-tooltip.tooltip-right .tooltip {
    left: 100%;
    bottom: auto;
    transform: translateX(0px);
}

.hover-tooltip.tooltip-right .tooltip::before {
    top: 50%;
    right: auto;
    transform: translateY(-50%) rotate(45deg);
    left: -4px;
}

.hover-tooltip.tooltip-right:hover .tooltip {
    transform: translateX(8px);
}

.hover-overlay {
    position: relative;
}

.hover-overlay::before {
    position: absolute;
    z-index: 2;
    content: "";
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.1);
    top: 0;
    left: 0;
    transition: 0.4s ease 0.1s;
    opacity: 0;
    visibility: hidden;
}

.hover-overlay:hover::before {
    opacity: 1;
    visibility: visible;
}

.hover-cursor-img .hover-image {
    display: none;
}

@media (min-width: 1200px) {
    .hover-cursor-img {
        position: relative;
    }

    .hover-cursor-img .hover-image {
        position: fixed;
        display: block;
        transform: scale(0);
        pointer-events: none;
        opacity: 0;
        transition: transform 0.3s ease, opacity 0.3s ease;
        z-index: 1000;
    }

    .hover-cursor-img .hover-image img {
        border-radius: 50%;
        max-width: 150px;
        box-shadow: 0px 10px 25px 0px rgba(43, 52, 74, 0.1215686275);
    }
}

/*------------ product ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.stagger-wrap .stagger-item {
    transition: 0.3s ease-in-out;
    transform: scale(0.5) rotate(90deg) skew(15deg);
    opacity: 0;
}

.stagger-wrap .stagger-item.stagger-finished {
    transform: scale(1) rotate(0deg) skew(0deg);
    opacity: 1;
}

.prd-recent {
    display: flex;
    gap: 24px;
}

.prd-recent .badge-tag {
    margin-bottom: 4px;
}

.prd-recent .name-prd {
    margin-bottom: 8px;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}

.prd-recent .image {
    max-width: 122px;
    width: 100%;
}

.prd-recent .image img {
    aspect-ratio: 1;
}


.variant-box {
    position: absolute;
    bottom: 16px;
    left: 16px;
    right: 16px;
    z-index: 5;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.variant-box.bot {
    bottom: 42px;
    backdrop-filter: blur(20px);
    left: 0;
    right: 0;
}

@media (min-width: 1200px) {
    .variant-box {
        transform: translateY(100%);
        opacity: 0;
        visibility: hidden;
    }
}

@media (max-width: 767px) {
    .variant-box {
        left: 8px;
        right: 8px;
        bottom: 8px;
    }
}

@media (max-width: 575px) {
    .variant-box {
        display: none;
    }
}

.product-size_list {
    border-radius: 999px;
    background-color: var(--white);
    padding: 10px 20px;
    width: max-content;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 12px;
}

.product-size_list .size-item {
    text-align: center;
}

.product-size_list .size-item:not(:last-child) {
    padding-right: 12px;
    border-right: 1px solid var(--line);
}

.product-size_list.type-2 {
    padding: 8px 0px;
    width: 100%;
    border-radius: 0px;
    background-color: var(--black);
    justify-content: center;
}

.product-size_list.type-2 .size-item {
    color: var(--white);
    border-color: var(--line-2);
}

.product-size_list.type-3 {
    padding: 9px 0px;
    width: 100%;
    border-radius: 0px;
    background-color: transparent;
    background: rgba(255, 255, 255, 0.1019607843);
    justify-content: center;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.product-size_list.type-3 .size-item {
    color: var(--white);
    border-color: var(--white);
}

@media (min-width: 1200px) {
    .product-size_list {
        padding: 16px 32px;
    }

    .product-size_list .size-item {
        min-width: 32px;
    }

    .product-size_list .size-item:not(:last-child) {
        min-width: 44px;
    }
}

@media (max-width: 575px) {
    .product-size_list .size-item {
        font-size: 14px;
        line-height: 19px;
    }
}

.product-size_list-2 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background-color: var(--white);
    padding-top: 8px;
}

.product-size_list-2 .size-item {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    border: 1px solid var(--line);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    color: var(--black);
}

.product-size_list-2 .size-item:hover {
    background-color: var(--black);
    border-color: var(--black);
    color: var(--white);
}

@media (min-width: 1200px) {
    .product-size_list-2 {
        padding-top: 16px;
    }

    .product-size_list-2 .size-item {
        width: 48px;
        height: 48px;
    }
}

.product-style_list-slide .name-product {
    margin-bottom: 10px;
}

.product-style_list-slide .card-product_info {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.product-style_list-slide .card-product_wrapper {
    aspect-ratio: 1.28;
}

.product-style_list-slide .card-product_wrapper .product-img {
    width: 100%;
}

@media (min-width: 576px) {
    .product-style_list-slide {
        flex-direction: row;
    }

    .product-style_list-slide .card-product_info {
        gap: 32px;
    }

    .product-style_list-slide .card-product_wrapper {
        max-width: 284px;
        aspect-ratio: 0.6995073892;
    }
}

@media (min-width: 1200px) {
    .product-style_list-slide {
        gap: 32px;
    }
}

.product-action_bot {
    position: absolute;
    bottom: 16px;
    right: 15px;
    left: 15px;
    z-index: 2;
    text-align: center;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.product-action_bot>*:not(:last-child) {
    margin-bottom: 12px;
}

@media (min-width: 1200px) {
    .product-action_bot {
        transform: translateY(20px);
        opacity: 0;
        visibility: hidden;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .product-action_bot>* {
        width: 180px;
        padding-left: 12px;
        padding-right: 12px;
    }
}

@media (max-width: 991px) {
    .product-action_bot {
        left: 8px;
        right: 8px;
    }
}

@media (max-width: 575px) {
    .product-action_bot {
        bottom: 8px;
    }

    .product-action_bot>* {
        padding: 10px 5px;
        width: 100%;
    }

    .product-action_bot>*:not(:last-child) {
        margin-bottom: 8px;
    }

    .product-action_bot .icon {
        font-size: 16px;
    }
}

.product-desc {
    font-size: 18px;
    line-height: 24px;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}

.product-desc .headline {
    color: var(--black);
}

.stagger-wrap .stagger-item {
    transition: 0.3s ease-in-out;
    transform: scale(0.5) rotate(90deg) skew(15deg);
    opacity: 0;
}

.stagger-wrap .stagger-item.stagger-finished {
    transform: scale(1) rotate(0deg) skew(0deg);
    opacity: 1;
}

.slider-scroll,
.product-thumbs-slider {
    display: flex;
    gap: 8px;
}

@media (max-width: 1199px) {

    .slider-scroll,
    .product-thumbs-slider {
        flex-direction: column;
    }
}

.thumbs-bottom {
    flex-direction: column;
    gap: 10px;
}

.thumbs-bottom .tf-product-media-thumbs {
    order: 1;
    width: 100%;
}

.thumbs-bottom .flat-wrap-media-product {
    width: 100%;
}

.thumbs-bottom .flat-wrap-media-product .tf-product-media-main .item {
    max-height: none;
}

.thumbs-abs .tf-product-media-thumbs .item::after {
    content: none !important;
}

@media (min-width: 1200px) {
    .thumbs-abs {
        position: relative;
    }

    .thumbs-abs .tf-product-media-thumbs {
        position: absolute;
        width: 124px;
        top: 12px;
        left: 12px;
        bottom: 12px;
        z-index: 2;
    }

    .thumbs-abs .tf-product-media-thumbs .swiper-slide {
        margin-bottom: 12px !important;
    }

    .thumbs-abs .tf-product-media-thumbs .item {
        height: 100%;
    }

    .thumbs-abs .tf-product-media-thumbs .item img {
        aspect-ratio: 0.8794326241 !important;
    }

    .thumbs-abs .flat-wrap-media-product {
        width: 100%;
    }

    .thumbs-abs .flat-wrap-media-product .tf-product-media-main .item {
        max-height: unset;
    }
}

@media (max-width: 991px) {
    .thumbs-abs .tf-product-media-thumbs .swiper-slide {
        max-height: unset;
        height: unset;
        aspect-ratio: 0;
    }

    .thumbs-abs .tf-product-media-thumbs .swiper-slide .item img {
        aspect-ratio: 0;
    }
}

.tf-product-media-thumbs {
    width: 115px;
    flex-shrink: 0;
    max-height: 764px;
}

.tf-product-media-thumbs .swiper-slide {
    height: max-content;
    width: auto;
    max-height: 153px;
}

.tf-product-media-thumbs .swiper-slide .item {
    position: relative;
}

.tf-product-media-thumbs .swiper-slide .item img {
    aspect-ratio: 0.7516339869;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tf-product-media-thumbs .swiper-slide .item::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 1px solid transparent;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-product-media-thumbs .swiper-slide.swiper-slide-thumb-active .item::after {
    border-color: var(--black);
}

@media (max-width: 1199px) {
    .tf-product-media-thumbs {
        width: 100%;
        order: 1;
    }

    .tf-product-media-thumbs .swiper-slide {
        aspect-ratio: 0.7516339869;
    }
}

.wrap-btn-viewer {
    position: relative;
}

.wrap-btn-viewer::after {
    position: absolute;
    content: "";
    inset: 0;
    background-color: rgba(0, 0, 0, 0.3019607843);
    z-index: 1;
}

.wrap-btn-viewer .icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background-color: var(--white);
    font-size: 24px;
    color: var(--black);
    z-index: 2;
}

.flat-wrap-media-product {
    width: calc(100% - 115px - 8px);
    position: relative;
}

.flat-wrap-media-product .tf-product-media-main {
    height: 100%;
}

.flat-wrap-media-product .tf-product-media-main .item {
    display: flex;
    width: 100%;
    height: 100%;
    overflow: hidden;
    max-height: 764px;
}

.flat-wrap-media-product .tf-product-media-main .item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.flat-wrap-media-product .tf-product-media-main .swiper-slide {
    height: auto;
}

.flat-wrap-media-product .tf-product-media-main .slide-3d,
.flat-wrap-media-product .tf-product-media-main .slide-video {
    height: auto;
}

@media (max-width: 1199px) {
    .flat-wrap-media-product {
        width: 100%;
    }
}

@media (max-width: 991px) {
    .flat-wrap-media-product .tf-product-media-main .item {
        max-height: 550px;
    }
}

@media (max-width: 575px) {
    .flat-wrap-media-product .tf-product-media-main .item {
        max-height: 400px;
    }
}

.tf-product-info-wrap {
    display: grid;
}

@media (max-width: 767px) {
    .tf-product-info-wrap {
        margin-top: 40px;
    }
}

.tf-product-info-wrap .tf-product-info-brand {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 12px;
}

.tf-product-info-wrap .tf-product-information {
    display: grid;
    gap: 16px;
    margin-bottom: 40px;
}

.tf-product-info-wrap .tf-product-information li {
    display: flex;
    gap: 22px;
    align-items: center;
}

.tf-product-info-wrap .tf-product-information li>*:nth-child(1) {
    width: 25.86%;
}

.tf-product-info-wrap .tf-product-information li>*:nth-child(2) {
    width: 51.15%;
}

@media (max-width: 1439px) {
    .tf-product-info-wrap .tf-product-information li {
        gap: 10px;
        flex-wrap: wrap;
    }

    .tf-product-info-wrap .tf-product-information li>*:nth-child(1) {
        width: 35%;
    }

    .tf-product-info-wrap .tf-product-information li>*:nth-child(2) {
        width: 62%;
    }

    .tf-product-info-wrap .tf-product-information li>*:nth-child(3) {
        width: 100%;
    }
}

.tf-product-info-wrap .tf-product-assistance {
    display: flex;
    gap: 24px;
    align-items: center;
    margin-bottom: 24px;
}

.tf-product-info-wrap .tf-product-assistance .tf-social-icon {
    gap: 12px;
}

.tf-product-info-wrap .tf-product-assistance .tf-social-icon a {
    width: 56px;
    height: 56px;
}

.tf-product-info-wrap .tf-product-assistance .tf-social-icon a .icon {
    font-size: 24px;
}

.tf-product-info-wrap .tf-product-assistance .tf-social-icon a:hover {
    background-color: var(--black);
    border-color: var(--black);
    color: var(--white);
}

.tf-product-info-wrap .tf-product-call {
    margin-bottom: 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 31px;
    border-radius: 99px;
    border: 1px solid var(--line);
}

.tf-product-info-wrap .tf-product-call .icon {
    font-size: 24px;
}

.tf-product-info-wrap .tf-product-video-call {
    display: flex;
    gap: 24px;
    align-items: center;
    margin-bottom: 40px;
    background-color: #F7F7F7;
}

.tf-product-info-wrap .tf-product-video-call .image {
    max-width: 200px;
}

.tf-product-info-wrap .tf-product-video-call .content {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.tf-product-info-wrap .tf-product-video-call .content a {
    display: flex;
    align-items: center;
    gap: 12px;
}

.tf-product-info-wrap .tf-product-video-call .content a .icon {
    font-size: 18px;
}

.tf-product-info-wrap .tf-product-icon-box {
    display: flex;
    gap: 25px;
    align-items: flex-start;
    padding: 16px;
    background-color: #F7F7F7;
    margin-bottom: 40px;
}

.tf-product-info-wrap .tf-product-icon-box .item {
    width: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 12px;
    text-align: center;
}

@media (max-width: 1199px) {
    .tf-product-info-wrap .tf-product-icon-box {
        gap: 10px;
    }
}

.tf-product-info-wrap .form-out-stock {
    padding: 32px;
    border: 1px solid var(--line);
    display: grid;
    gap: 24px;
    margin-bottom: 40px;
}

.tf-product-info-wrap .form-out-stock .box-title-out-stock {
    display: flex;
    align-items: center;
    gap: 8px;
}

.tf-product-info-wrap .form-out-stock .box-title-out-stock .icon {
    font-size: 24px;
}

@media (max-width: 1199px) {
    .tf-product-info-wrap .form-out-stock {
        padding: 24px 16px;
        gap: 18px;
    }
}

.tf-product-info-wrap .tf-product-info-tags {
    display: grid;
    gap: 12px;
    margin-bottom: 32px;
}

.tf-product-info-wrap .tf-product-info-tags .tf-product-tags {
    display: flex;
    align-items: center;
    gap: 12px;
}

.tf-product-info-wrap .tf-product-info-tags .tf-product-tags .tags {
    padding: 4px 15px;
    border-radius: 4px;
    border: 1px solid var(--black);
    color: var(--black);
}

.tf-product-info-wrap .tf-product-info-tags .tf-product-tags svg {
    animation: tf-ani-flash 2s infinite;
}

.tf-product-info-wrap .tf-product-info-list {
    display: grid;
}

.tf-product-info-wrap .product-info-name {
    margin-bottom: 24px;
    font-weight: normal;
}

.tf-product-info-wrap .product-info-meta {
    margin-bottom: 32px;
}

.tf-product-info-wrap .tf-product-heading {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    flex-wrap: wrap;
    padding: 15px 0;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    margin-bottom: 32px;
}

.tf-product-info-wrap .tf-product-info-countdown {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.tf-product-info-wrap .tf-product-info-countdown.type-box {
    width: max-content;
    gap: 32px;
    padding: 15px 23px;
    border-radius: 6px;
    border: 1px solid var(--primary);
    margin-bottom: 32px;
}

.tf-product-info-wrap .tf-product-info-countdown.type-box .countdown-title {
    display: flex;
    align-items: center;
    gap: 8px;
}

@media (max-width: 1199px) {
    .tf-product-info-wrap .tf-product-info-countdown.type-box {
        flex-direction: column;
    }
}

.tf-product-info-wrap .brand-product {
    font-weight: 500;
    color: var(--text);
    font-size: 14px;
    line-height: 20px;
}

.tf-product-info-wrap .product-rate {
    display: flex;
    align-items: center;
}

.tf-product-info-wrap .product-rate .list-star {
    margin-right: 6px;
    display: flex;
    align-items: center;
}

.tf-product-info-wrap .product-rate .icon {
    font-size: 16px;
    color: #98ab23;
}

.tf-product-info-wrap .product-rate .icon:not(:last-child) {
    margin-right: 5px;
}

.tf-product-info-wrap .product-rate .count-review {
    font-weight: 500;
    font-size: 16px;
    line-height: 22.4px;
    letter-spacing: -3%;
    color: var(--text);
}

.tf-product-info-wrap .product-price {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    font-weight: 500;
}

.tf-product-info-wrap .product-price .price-new {
    color: var(--primary);
}

.tf-product-info-wrap .product-price .price-old {
    color: var(--rgba-dark);
    text-decoration: line-through;
}

.tf-product-info-wrap .badge-sale {
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    background-color: var(--primary);
    border-radius: 22px;
    padding: 5px 10px;
    color: var(--white);
}

.tf-product-info-wrap .product-stock {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 4px;
}

.tf-product-info-wrap .product-stock .icon {
    animation: tf-ani-flash 2s infinite;
}

.tf-product-info-wrap .product-stock .stock {
    padding: 5px 10px;
    border-radius: 5px;
    margin-right: 8px;
    font-weight: 500;
}

.tf-product-info-wrap .product-stock .in-stock {
    background-color: rgba(44, 163, 21, 0.1);
    color: #1d770b;
}

.tf-product-info-wrap .product-stock .out-stock {
    background-color: rgba(37, 37, 37, 0.1);
    color: #252525;
}

.tf-product-info-wrap .progress-cart {
    width: 100%;
    background-color: var(--line);
    height: 9px;
    position: relative;
}

.tf-product-info-wrap .progress-cart .value {
    position: relative;
    height: 100%;
    background-color: var(--black);
    transition: width 2s ease;
}

.tf-product-info-wrap .product-progress-sale {
    margin-bottom: 32px;
}

.tf-product-info-wrap .product-progress-sale .text {
    font-size: 16px;
    line-height: 22px;
}

.tf-product-info-wrap .product-progress-sale .title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.tf-product-info-wrap .product-progress-sale .count {
    font-size: 20px;
    line-height: 24px;
    font-weight: 500;
    color: var(--primary);
}

.tf-product-info-wrap .tf-product-variant {
    display: grid;
    gap: 24px;
}

.tf-product-info-wrap .tf-product-info-liveview {
    display: flex;
    gap: 16px;
    align-items: center;
    margin-bottom: 32px;
}

.tf-product-info-wrap .tf-product-info-liveview .liveview-count {
    display: flex;
    gap: 8px;
    align-items: center;
    padding: 8px 16px;
    background-color: var(--black);
    border-radius: 99px;
    color: var(--white);
}

.tf-product-info-wrap .tf-product-info-liveview .liveview-count.size-40 {
    min-width: 40px;
    height: 40px;
    padding: 5px;
    justify-content: center;
}

.tf-product-info-wrap .tf-product-info-liveview .liveview-count .icon {
    font-size: 20px;
}

.tf-product-info-wrap .tf-product-info-liveview p {
    color: var(--black);
}

.tf-product-info-wrap .tf-product-variant {
    display: grid;
    gap: 32px;
    margin-bottom: 32px;
}

.tf-product-info-wrap .tf-product-variant .variant-picker-label {
    margin-bottom: 8px;
    font-size: 16px;
    line-height: 24px;
    color: var(--black);
}

.tf-product-info-wrap .tf-product-variant .variant-picker-label-value.value-currentColor {
    text-transform: capitalize;
}

.tf-product-info-wrap .variant-color .variant-picker-values {
    display: flex;
    gap: 12px;
}

@media (min-width: 1200px) {
    .tf-product-info-wrap .variant-color .variant-picker-values.gap24 {
        gap: 24px;
    }
}

.tf-product-info-wrap .variant-color .color-btn:not(.select-item) {
    position: relative;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    text-align: center;
    border: 1px solid var(--line);
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border-radius: 50%;
}

.tf-product-info-wrap .variant-color .color-btn:not(.select-item) .check-color {
    width: 32px;
    height: 32px;
    display: flex;
    flex-shrink: 0;
    border-radius: 50%;
    border: 1px solid #dcdcdc;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-product-info-wrap .variant-color .color-btn:not(.select-item).active {
    border-color: var(--black);
}

.tf-product-info-wrap .variant-color .color-btn.style-image {
    width: 64px;
    height: 64px;
    padding: 6px;
    border: 1px solid transparent;
}

.tf-product-info-wrap .variant-color .color-btn.style-image .img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    overflow: hidden;
}

.tf-product-info-wrap .variant-color .color-btn.style-image img {
    width: 100%;
    object-fit: cover;
}

.tf-product-info-wrap .variant-color .color-btn.style-image.style-small {
    width: 40px;
    height: 40px;
    padding: 4px;
}

.tf-product-info-wrap .variant-color .color-btn.style-image-square {
    width: 120px;
    height: 160px;
    padding: 7px;
    border: 1px solid var(--line);
    border-radius: 8px;
}

.tf-product-info-wrap .variant-color .color-btn.style-image-square .img {
    width: 100%;
    height: 100%;
    border-radius: 6px;
    overflow: hidden;
}

.tf-product-info-wrap .variant-color .color-btn.style-image-square img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tf-product-info-wrap .variant-color .color-btn.style-image-square.active {
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.0784313725);
}

@media (max-width: 1199px) {
    .tf-product-info-wrap .variant-color .color-btn.style-image-square {
        width: 80px;
        height: 120px;
    }
}

.tf-product-info-wrap .variant-size .variant-picker-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.tf-product-info-wrap .variant-size .size-guide {
    display: flex;
    align-items: center;
    gap: 8px;
}

.tf-product-info-wrap .variant-size .size-guide .icon {
    font-size: 20px;
}

.tf-product-info-wrap .variant-size .variant-picker-values {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.tf-product-info-wrap .variant-size .size-btn:not(.select-item) {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    border: 1px solid var(--line);
    font-size: 18px;
    line-height: 24px;
    color: var(--text);
    font-weight: 700;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.tf-product-info-wrap .variant-size .size-btn:not(.select-item).style-text {
    padding-left: 26.5px;
    padding-right: 26.5px;
    width: max-content;
    border-radius: 99px;
}

.tf-product-info-wrap .variant-size .size-btn:not(.select-item).active {
    border-color: var(--black);
    background-color: var(--black);
    color: var(--white);
}

.tf-product-info-wrap .product-info-countdown {
    margin-top: 8px;
    padding: 20px;
    display: inline-block;
    width: max-content;
    border: 1px solid var(--primary);
    border-radius: 8px;
}

.tf-product-info-wrap .product-info-countdown .countdown-title {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 12px;
}

.tf-product-info-wrap .product-info-countdown .countdown__timer {
    display: flex;
    gap: 12px;
}

.tf-product-info-wrap .product-info-countdown .countdown__item {
    width: 48px;
    height: 32px;
    font-size: 16px;
    line-height: 24px;
    color: var(--white);
    background-color: var(--primary);
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.tf-product-info-wrap .product-info-countdown .countdown__item:not(:last-child)::after {
    position: absolute;
    content: ":";
    top: 50%;
    transform: translateY(-50%);
    right: -8px;
    color: var(--dark);
}

.tf-product-info-wrap .product-info-countdown.type-1 {
    min-width: 276px;
}

.tf-product-info-wrap .product-info-countdown.type-1 .countdown__timer {
    justify-content: center;
}

.tf-product-info-wrap .product-info-countdown.type-1 .countdown__item {
    width: unset;
    background-color: transparent;
    color: #e83524;
    font-weight: 500;
    font-size: 12px;
    line-height: 120%;
}

.tf-product-info-wrap .product-info-countdown.type-1 .countdown__item::after {
    color: #e83524;
}

.tf-product-info-wrap .tf-product-total-quantity {
    margin-bottom: 24px;
}

.tf-product-info-wrap .tf-product-total-quantity .group-btn {
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 16px;
}

.tf-product-info-wrap .tf-product-total-quantity .group-btn .tf-btn {
    gap: 16px;
}

.tf-product-info-wrap .tf-product-total-quantity .group-btn .wg-quantity {
    flex-grow: 1;
    min-width: 126px;
    max-width: 180px;
}

.tf-product-info-wrap .tf-product-total-quantity .group-btn .product-btns {
    width: 52px;
    height: 52px;
}

.tf-product-info-wrap .tf-product-total-quantity .group-btn .btn-add-to-cart {
    flex-grow: 1;
}

.tf-product-info-wrap .tf-product-total-quantity .group-btn .btn-add-to-cart .icon {
    font-size: 18px;
}

.tf-product-info-wrap .tf-product-total-quantity .group-btn .box-icon {
    width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    border: 1px solid #ebebeb;
    border-radius: 50%;
    color: #252525;
}

.tf-product-info-wrap .tf-product-total-quantity .group-btn .box-icon:hover {
    background-color: #252525;
    color: var(--white);
}

@media (max-width: 1199px) {
    .tf-product-info-wrap .tf-product-total-quantity .group-btn {
        flex-wrap: wrap;
        gap: 8px;
    }

    .tf-product-info-wrap .tf-product-total-quantity .group-btn .btn-add-to-cart {
        width: 100%;
        order: 1;
    }
}

.tf-product-info-wrap .tf-product-total-quantity .btn-out-stock {
    background-color: var(--text);
    border-color: var(--text);
    cursor: not-allowed;
}

.tf-product-info-wrap .tf-product-extra-link {
    display: flex;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap;
    margin-bottom: 40px;
}

.tf-product-info-wrap .tf-product-extra-link .product-extra-icon {
    display: flex;
    align-items: center;
    gap: 4px;
    font-weight: 500;
    font-size: 20px;
    line-height: 27px;
}

.tf-product-info-wrap .tf-product-extra-link .product-extra-icon .icon {
    font-size: 20px;
}

.tf-product-info-wrap .tf-product-delivery-return {
    display: flex;
    gap: 8px;
    flex-direction: column;
    margin-bottom: 24px;
}

.tf-product-info-wrap .tf-product-delivery-return .product-delivery {
    display: flex;
    gap: 8px;
    align-items: center;
}

.tf-product-info-wrap .tf-product-delivery-return .product-delivery .icon {
    font-size: 23px;
    color: var(--dark);
}

.tf-product-info-wrap .tf-product-delivery-return .return .icon {
    transform: rotateY(180deg);
}

.tf-product-info-wrap .tf-product-trust-seal {
    display: flex;
    gap: 16px;
    align-items: center;
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 1px solid var(--line);
    flex-wrap: wrap;
}

.tf-product-info-wrap .tf-product-trust-seal .list-card {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
}

.tf-product-info-wrap .tf-product-trust-seal .card-item {
    width: 50px;
    height: 32px;
    border-radius: 4px;
}

.tf-product-info-wrap .tf-product-cate-sku {
    display: flex;
    gap: 8px;
    flex-direction: column;
}

.tf-product-info-wrap .tf-product-cate-sku .item-cate-sku {
    display: flex;
    gap: 12px;
    align-items: center;
}

.tf-product-info-wrap .tf-product-pickup-available {
    display: flex;
    margin: 8px 0px;
    gap: 8px;
}

.tf-product-info-wrap .tf-product-pickup-available .icon {
    font-size: 21px;
    color: var(--light-green);
}

.tf-product-info-wrap .tf-product-pickup-available .content {
    display: grid;
    gap: 4px;
}

.tf-product-info-wrap .tf-product-pickup-available .check-availability {
    font-size: 12px;
    line-height: 18px;
    color: var(--text);
    text-decoration: underline;
}

.tf-product-info-wrap .form-group-product {
    margin-bottom: 8px;
}

.tf-product-info-wrap .tf-product-more-option {
    margin-bottom: 32px;
}

.tf-product-info-wrap .tf-product-property {
    margin-bottom: 32px;
}

.btn-add-wishlist .added {
    display: none;
}

.btn-add-wishlist.added-wishlist .add {
    display: none;
}

.btn-add-wishlist.added-wishlist .added {
    display: block;
}

.wg-quantity {
    display: flex;
    justify-content: center;
    border: 1px solid var(--line);
    padding: 7px 0;
    border-radius: 43px;
    overflow: hidden;
}

.wg-quantity .quantity-product {
    width: 40px;
    height: 40px;
    padding: 0;
    background-color: transparent;
    border: 0;
    text-align: center;
    font-family: "Sora";
    font-weight: 600;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
    vertical-align: middle;
    color: var(--black);
    pointer-events: none;
}

.wg-quantity .btn-quantity {
    width: 40px;
    height: 40px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: var(--black);
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.wg-quantity .btn-quantity:hover {
    color: var(--primary);
}

.wg-quantity.small .btn-quantity,
.wg-quantity.small .quantity-product {
    height: 30px;
    width: 30px;
    font-size: 18px;
}

.wg-quantity.small .quantity-product {
    font-size: 14px;
    font-weight: 700;
    line-height: 16.8px;
    letter-spacing: -0.03em;
}

.tf-product-fbt {
    padding: 32px;
    border: 1px solid var(--line);
    margin-bottom: 40px;
}

.tf-product-fbt .title {
    margin-bottom: 12px;
}

.tf-product-fbt .tf-bundle-products {
    display: grid;
    gap: 12px;
}

.tf-product-fbt .tf-product-form-bundle {
    display: grid;
    gap: 32px;
}

.tf-product-fbt .btn-submit-total {
    font-weight: 600;
    text-transform: none;
}

.tf-product-fbt .bundle-total-submit {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 24px;
    line-height: 32px;
    font-weight: 400;
    margin-bottom: 16px;
}

@media (max-width: 1199px) {
    .tf-product-fbt {
        padding: 16px;
    }
}

.tf-product-fbt-wrap {
    padding: 15px;
    border-radius: 16px;
    border: 1px solid var(--line);
}

.tf-product-fbt-wrap .list-fbt {
    display: flex;
    gap: 25px;
    align-items: center;
    overflow-x: auto;
    min-width: 100%;
}

.tf-product-fbt-wrap .list-fbt::-webkit-scrollbar {
    width: 4px;
    height: 4px;
}

.tf-product-fbt-wrap .list-fbt::-webkit-scrollbar-track {
    background-color: var(--bg-scrollbar-track);
}

.tf-product-fbt-wrap .list-fbt::-webkit-scrollbar-thumb {
    background: var(--bg-scrollbar-thumb);
    border-radius: 4px;
}

.tf-product-fbt-wrap .fbt-image {
    width: 129px;
    min-width: 129px;
    border-radius: 8px;
    overflow: hidden;
}

.tf-product-fbt-wrap .fbt-swatches {
    display: grid;
    gap: 8px;
}

.tf-product-fbt-wrap .fbt-info {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.tf-product-fbt-wrap .fbt-info .bundle-variant,
.tf-product-fbt-wrap .fbt-info .bundle-title {
    margin-right: 10px;
}

.tf-product-fbt-wrap .fbt-info .bundle-price {
    display: flex;
    gap: 6px;
}

.tf-product-fbt-wrap .fbt-info .new-price {
    color: var(--primary);
}

.tf-product-fbt-wrap .fbt-info .old-price {
    color: #bfbfbf;
}

.tf-product-fbt-wrap .tf-product-form-fbt {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.tf-product-fbt-wrap .list-fbt {
    margin-bottom: 15px;
}

.tf-product-fbt-wrap .fbt-total-price {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.tf-product-fbt-wrap .fbt-total-price .price-new {
    color: var(--primary);
}

.tf-product-fbt-wrap .fbt-total-price .price-old {
    color: #bfbfbf;
    text-decoration: line-through;
    font-size: 14px;
    line-height: 22.4px;
    margin-left: 5px;
}

.tf-bundle-product-item {
    display: flex;
    gap: 24px;
}

@media (max-width: 1199px) {
    .tf-bundle-product-item {
        gap: 10px;
    }

    .tf-bundle-product-item .bundle-image {
        width: 90px;
        height: 90px;
    }
}

.tf-bundle-product-item .bundle-image {
    width: 122px;
    height: 122px;
    flex-shrink: 0;
    overflow: hidden;
}

.tf-bundle-product-item .bundle-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tf-bundle-product-item .bundle-info {
    display: grid;
    gap: 8px;
    align-content: flex-start;
    flex-grow: 1;
}

.tf-bundle-product-item .bundle-price .new-price {
    color: var(--primary);
}

.tf-bundle-product-item .bundle-price .old-price {
    color: var(--rgba-dark);
    text-decoration: line-through;
}

.tf-bundle-product-item .tf-select {
    width: max-content;
}

.item-has-checkbox {
    opacity: 0.4;
}

.item-has-checkbox.check {
    opacity: 1;
}

.wd-product-descriptions .item .title {
    margin-bottom: 5px;
}

.wd-product-descriptions .item:not(:last-child) {
    margin-bottom: 20px;
}

.wd-product-descriptions .item p,
.wd-product-descriptions .item li {
    font-size: 14px;
    line-height: 22.4px;
}

.wd-product-descriptions .item ul li {
    position: relative;
    padding-left: 20px;
}

.wd-product-descriptions .item ul li::before {
    position: absolute;
    content: "";
    left: 5px;
    top: 50%;
    transform: translateY(-50%);
    background-color: var(--dark);
    width: 4px;
    height: 4px;
    border-radius: 50%;
}

.wd-product-descriptions .list-policies {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px;
}

.wd-product-descriptions .accordion-body {
    padding: 10px 0px 30px;
}

.tf-product-side-accordions {
    margin-bottom: 42px;
}

.tf-product-side-accordions .wd-customer-review {
    flex-direction: column;
    gap: 42px;
}

@media (min-width: 768px) {
    .product-grid-img .swiper-wrapper {
        transform: none !important;
        display: grid;
        gap: 12px;
    }

    .product-grid-img .swiper-wrapper .swiper-slide {
        height: auto;
        width: 100% !important;
    }

    .product-grid-img.product-grid-img2 .swiper-wrapper {
        grid-template-columns: 1fr 1fr;
        gap: 24px;
    }

    .product-grid-img.product-grid-stacked .swiper-wrapper {
        grid-template-columns: 1fr 1fr;
        gap: 24px;
    }

    .product-grid-img.product-grid-stacked .swiper-wrapper .swiper-slide:first-child {
        grid-column: 1/-1;
        width: 100%;
    }
}

@media (min-width: 1200px) {
    .product-grid-img.product-grid-img2 .swiper-wrapper {
        gap: 48px;
    }

    .product-grid-img.product-grid-stacked .swiper-wrapper {
        gap: 48px;
    }
}

.product-grid-stacked .item img {
    aspect-ratio: 0.75;
}

.recent-blog-item {
    display: flex;
    gap: 20px;
}

.recent-blog-item .img-product {
    width: 75px;
    height: 112px;
    border-radius: 4px;
    overflow: hidden;
    display: block;
}

.recent-blog-item .img-product img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.recent-blog-item .content {
    display: grid;
    gap: 8px;
    align-content: flex-start;
}

.recent-blog-item .content .old-price {
    margin-left: 6px;
    color: #5c5c5c;
}

.recent-blog-item .content .new-price {
    color: var(--primary);
}

.flat-wrap-frequently-bought-together .product-thumbs-slider {
    margin-bottom: 30px;
}

.tf-product-volume-discount {
    margin-bottom: 40px;
}

.tf-product-volume-discount .heading {
    margin-bottom: 12px;
}

.tf-product-volume-discount .list-volume-discount {
    margin-bottom: 12px;
}

.volume-discount-item {
    padding: 32px;
    position: relative;
    background-color: #F7F7F7;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    cursor: pointer;
}

.volume-discount-item:not(:last-child) {
    margin-bottom: 12px;
}

.volume-discount-item .content {
    display: flex;
    align-items: center;
    gap: 24px;
    margin-bottom: 24px;
}

.volume-discount-item .name {
    flex-grow: 1;
}

.volume-discount-item .tags-save {
    padding: 3px 16px;
    background-color: var(--primary);
    color: var(--white);
    flex-shrink: 0;
}

.volume-discount-item .check {
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border: 1px solid var(--black);
    background-color: transparent;
    flex-shrink: 0;
}

.volume-discount-item .check span {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: block;
    background-color: transparent;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.volume-discount-item.active .check span,
.volume-discount-item:hover .check span {
    background-color: var(--black);
}

@media (max-width: 1199px) {
    .volume-discount-item {
        padding: 20px 15px;
    }
}

.list-volume-discount-thumbnail {
    gap: 12px;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-bottom: 12px;
}

.list-volume-discount-thumbnail::-webkit-scrollbar {
    width: 4px;
    height: 4px;
}

.list-volume-discount-thumbnail::-webkit-scrollbar-track {
    background-color: var(--line);
}

.list-volume-discount-thumbnail::-webkit-scrollbar-thumb {
    background: var(--black);
}

@media (max-width: 1439px) {
    .list-volume-discount-thumbnail {
        padding-bottom: 5px;
    }
}

.volume-discount-thumbnail-item {
    position: relative;
    padding: 7px 7px 24px;
    border: 1px solid var(--line);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.volume-discount-thumbnail-item .image-box {
    width: 208px;
    height: 284px;
    position: relative;
    margin-bottom: 24px;
}

.volume-discount-thumbnail-item .image-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.volume-discount-thumbnail-item .image-box.type-1 {
    width: 100%;
    height: auto;
}

.volume-discount-thumbnail-item .image-box.type-1 img {
    max-height: 308px;
}

.volume-discount-thumbnail-item .tags-save {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 3px 16px;
    background-color: var(--primary);
    color: var(--white);
    flex-shrink: 0;
}

.volume-discount-thumbnail-item .content-discount {
    text-align: center;
}

.volume-discount-thumbnail-item .content-discount .count {
    margin-bottom: 8px;
}

.volume-discount-thumbnail-item .content-discount .size,
.volume-discount-thumbnail-item .content-discount .name {
    margin-bottom: 8px;
}

.volume-discount-thumbnail-item .content-discount .wg-quantity {
    width: 130px;
}

.volume-discount-thumbnail-item:hover,
.volume-discount-thumbnail-item.active {
    border-color: var(--black);
}

.sold-out-wrap {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sold-out-wrap::after {
    position: absolute;
    content: "";
    inset: 0;
    background-color: rgba(0, 0, 0, 0.2);
}

.sold-out-wrap .text {
    width: 128px;
    height: 128px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 50%;
    background-color: var(--white);
    z-index: 2;
}

.form-buyX-getY {
    padding: 24px;
    border: 1px solid var(--primary);
    margin-bottom: 40px;
}

@media (max-width: 767px) {
    .form-buyX-getY {
        padding: 20px 15px;
    }

    .form-buyX-getY .volume-discount-thumbnail-item {
        width: 100%;
    }
}

.buyX-getY-wrap {
    display: flex;
    gap: 20px;
    align-items: center;
    margin-bottom: 32px;
}

@media (max-width: 575px) {
    .buyX-getY-wrap {
        flex-direction: column;
    }
}

.more-option-item {
    display: flex;
    align-items: center;
    gap: 24px;
}

.more-option-item:not(:last-child) {
    padding-bottom: 23px;
    border-bottom: 1px solid var(--line);
    margin-bottom: 24px;
}

.more-option-item .name {
    flex-grow: 1;
}

.more-option-item .price {
    min-width: 100px;
}

.more-option-item .wg-quantity {
    width: 180px;
}

@media (max-width: 991px) {
    .more-option-item {
        gap: 8px;
        flex-wrap: wrap;
    }
}

.tf-product-property {
    display: grid;
    gap: 12px;
}

@keyframes pulse-rotate {
    0% {
        transform: scale(1) rotate(12deg);
    }

    50% {
        transform: scale(1.05) rotate(12deg);
    }

    100% {
        transform: scale(1) rotate(12deg);
    }
}

.list-color-product {
    display: flex;
    flex-wrap: wrap;
    gap: 3px;
    align-items: center;
}

.list-color-product .list-color-item {
    width: 20px;
    height: 20px;
    border: 1px solid transparent;
    background-color: transparent;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.list-color-product .list-color-item .swatch-value {
    width: 100%;
    height: 100%;
    border: 2px solid var(--white);
    display: inline-block;
    border-radius: 50%;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.list-color-product .list-color-item img {
    visibility: hidden;
    width: 18px;
    height: 18px;
    position: absolute;
}

.list-color-product .list-color-item.style-img {
    width: 40px;
    height: 40px;
}

.list-color-product .list-color-item.style-img .swatch-value {
    width: 32px;
    height: 32px;
    border: 0;
}

.list-color-product .list-color-item.style-img .swatch-value::before {
    display: none;
}

.list-color-product .list-color-item.style-img .swatch-value .swatch-img {
    position: unset;
    border-radius: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    visibility: visible;
}

.list-color-product .list-color-item.style-img.active,
.list-color-product .list-color-item.style-img:hover {
    border-color: var(--white) !important;
}

.list-color-product .list-color-item.line {
    border: 1px solid transparent !important;
}

.list-color-product .list-color-item.line .swatch-value {
    position: relative;
}

.list-color-product .list-color-item.line .swatch-value::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border: 1px solid var(--rgba-dark-3);
    top: 0;
    left: 0;
    z-index: 1;
    border-radius: 50%;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.list-color-product .list-color-item.active,
.list-color-product .list-color-item:hover {
    border-color: var(--dark) !important;
}

.list-color-product .list-color-item.active .swatch-value,
.list-color-product .list-color-item:hover .swatch-value {
    border-color: var(--white);
}

.list-color-product .list-color-item.active .swatch-value::before,
.list-color-product .list-color-item:hover .swatch-value::before {
    border-color: var(--line);
}

.list-color-product .list-color-item.active.border-color-black,
.list-color-product .list-color-item:hover.border-color-black {
    border-color: #252525 !important;
}

.list-color-product.style-2 .list-color-item.active .swatch-value,
.list-color-product.style-2 .list-color-item:hover .swatch-value {
    border-color: #e7ecd2;
}

.list-color-product.style-2 .swatch-value {
    border: 2px solid #e7ecd2;
}

.tf-sticky-btn-atc {
    position: fixed;
    width: 100%;
    bottom: 0;
    z-index: 70;
    box-shadow: 4px -4px 5px rgba(0, 0, 0, 0.03);
    background-color: var(--white);
    transition: all 0.3s linear;
    transform: translateY(100%);
}

.tf-sticky-btn-atc .tf-height-observer {
    padding: 14px 0;
    column-gap: 5px;
}

.tf-sticky-btn-atc .tf-sticky-atc-product {
    flex: 1 0 0%;
    gap: 15px;
}

.tf-sticky-btn-atc .tf-sticky-atc-img {
    width: 72px;
    height: 72px;
    flex-shrink: 0;
}

.tf-sticky-btn-atc .tf-sticky-atc-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

.tf-sticky-btn-atc .tf-sticky-atc-variant-price {
    display: flex;
    gap: 24px;
    align-items: center;
}

.tf-sticky-btn-atc .tf-sticky-atc-title {
    font-size: 16px;
    line-height: 19px;
}

.tf-sticky-btn-atc .tf-product-info-quantity {
    display: flex;
    gap: 24px;
    align-items: center;
}

.tf-sticky-btn-atc .tf-sticky-atc-btns {
    display: flex;
    gap: 32px;
    align-items: center;
}

.tf-sticky-btn-atc .tf-sticky-atc-btns a {
    min-width: 324px;
}

.tf-sticky-btn-atc .tf-sticky-atc-infos form {
    display: flex;
    gap: 32px;
    align-items: center;
    flex-wrap: wrap;
}

.tf-sticky-btn-atc .tf-btn {
    min-width: 190px;
}

.tf-sticky-btn-atc.show {
    transform: translateY(0);
}

@media (max-width: 1439px) {
    .tf-sticky-btn-atc .tf-mini-cart-item .tf-mini-cart-image {
        width: 72px;
        height: 72px;
    }

    .tf-sticky-btn-atc .tf-mini-cart-item .tf-mini-cart-info {
        display: none;
    }

    .tf-sticky-btn-atc .tf-sticky-atc-infos form {
        gap: 20px;
    }

    .tf-sticky-btn-atc .tf-sticky-atc-btns a {
        min-width: unset;
    }
}

@media (max-width: 1199px) {
    .tf-sticky-btn-atc {
        bottom: 79px;
    }
}

@media (max-width: 767px) {

    .tf-sticky-btn-atc .title,
    .tf-sticky-btn-atc .tf-sticky-atc-product {
        display: none !important;
    }

    .tf-sticky-btn-atc .tf-sticky-atc-infos {
        width: 100%;
    }

    .tf-sticky-btn-atc .tf-sticky-atc-infos form {
        justify-content: center;
    }

    .tf-sticky-btn-atc .tf-sticky-atc-infos form .tf-select select,
    .tf-sticky-btn-atc .tf-sticky-atc-infos form .wg-quantity {
        height: 42px;
        padding: 0;
    }

    .tf-sticky-btn-atc .tf-sticky-atc-btns a {
        width: 100%;
    }

    .tf-sticky-btn-atc .tf-sticky-atc-btns {
        max-width: 500px;
        width: 100%;
    }
}

.list-product-description>*:not(:last-child) {
    margin-bottom: 80px;
}

@media (max-width: 767px) {
    .list-product-description>*:not(:last-child) {
        margin-bottom: 60px;
    }
}

.faq-descriptions .widget-accordion {
    border: 0 !important;
}

.faq-descriptions .widget-accordion:not(:last-child) .accordion-title::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background-color: var(--line);
}

.faq-descriptions .widget-accordion:not(:last-child) .accordion-title:not(.collapsed)::after {
    display: none;
}

.faq-descriptions .widget-accordion .accordion-title {
    position: relative;
    padding: 25px 0;
    justify-content: space-between;
}

.faq-descriptions .widget-accordion .accordion-title::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background-color: var(--line);
}

.faq-descriptions .widget-accordion .accordion-title .icon {
    position: relative;
    display: flex;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid var(--line);
    color: var(--black);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.faq-descriptions .widget-accordion .accordion-title .icon::after {
    position: absolute;
    font-family: "icomoon";
    content: "\e950";
    font-size: 16px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.faq-descriptions .widget-accordion .accordion-title:not(.collapsed) .icon {
    transform: none;
    background-color: var(--black);
    border-color: var(--black);
    color: var(--white);
}

.faq-descriptions .widget-accordion .accordion-title:not(.collapsed) .icon::after {
    content: "\e94d";
}

.faq-descriptions .widget-accordion .accordion-content {
    padding: 32px;
    border: 1px solid var(--line);
}

.product-progress_sold {
    display: grid;
    gap: 12px;
}

.product-progress_sold .box-quantity {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.progress {
    height: 9px;
    border-radius: 999px;
}

.progress .progress-bar {
    border-radius: 999px;
    background-color: var(--primary);
}

.product-btn_quick {
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 2;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.product-btn_quick .tf-btn {
    width: 100%;
}

@media (min-width: 1200px) {
    .product-btn_quick {
        transform: translateY(100%);
        opacity: 0;
        visibility: hidden;
    }
}

.tf-wishlist-empty {
    grid-column: 1/-1;
    width: 100%;
}

.tf-wishlist-empty .text-notice {
    margin-bottom: 32px;
    font-weight: normal;
    letter-spacing: 0;
}

.tf-wishlist-empty .btn-back-shop {
    font-weight: 500;
}

.tab-buy-wrap {
    padding: 30px 16px;
    border: 1px solid var(--line);
    overflow: hidden;
}

@media (min-width: 1200px) {
    .tab-buy-wrap {
        padding: 32px;
    }
}

.tab-buy_list {
    display: flex;
    align-items: center;
    gap: 24px;
    overflow: auto;
    padding-bottom: 32px;
    margin-bottom: 32px;
    border-bottom: 1px solid var(--line);
}

.tab-buy_list .tf-btn-tab {
    width: 104px;
}

@media (min-width: 1200px) {
    .tab-buy_list {
        gap: 32px;
    }
}

.wg-buy-look {
    display: flex;
    gap: 32px;
    flex-wrap: wrap;
}

.wg-buy-look .buy_image {
    width: 100%;
}

.wg-buy-look .buy_content {
    display: grid;
    gap: 16px;
    width: 100%;
}

.wg-buy-look .name {
    margin-bottom: 7px;
}

.wg-buy-look .title {
    margin-bottom: 16px;
}

.wg-buy-look .prd-action {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}

.wg-buy-look .tf-select select {
    border-radius: 999px;
}

@media (min-width: 768px) {
    .wg-buy-look {
        flex-wrap: nowrap;
    }

    .wg-buy-look .buy_image {
        max-width: 268px;
        width: 100%;
    }

    .wg-buy-look .buy_content {
        max-width: 333px;
        display: grid;
        gap: 16px;
    }
}

@media (min-width: 1200px) {
    .wg-buy-look .tf-select select {
        padding-top: 15px;
        padding-bottom: 15px;
    }
}

.count-customer {
    display: flex;
    align-items: center;
    color: var(--primary);
    gap: 12px;
}

.count-customer .icon {
    font-size: 18px;
}

.action_quantity-product {
    display: flex;
    gap: 16px;
}

@media (min-width: 576px) {
    .action_quantity-product .wg-quantity {
        min-width: 140px;
    }
}

@media (max-width: 575px) {
    .action_quantity-product {
        flex-direction: column;
    }
}

/*------------ blog ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.article-blog {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.article-blog .blog-image {
    position: relative;
    display: inline-flex;
}

.article-blog .entry_image {
    position: relative;
}

.article-blog .entry_image img {
    aspect-ratio: 1.28;
    object-fit: cover;
    width: 100%;
}

.article-blog .entry_tag {
    position: absolute;
    top: 10px;
    left: 10px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.article-blog .entry_tag.pst-2 {
    top: 8px;
    left: 8px;
}

.article-blog .name-tag {
    display: block;
    padding: 8px 24px;
    background-color: var(--black);
    color: var(--white);
}

.article-blog .entry_name {
    margin-bottom: 4px;
    font-weight: normal;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}

.article-blog .text {
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}

.article-blog.style-row .entry_name {
    margin-bottom: 0;
}

.article-blog.style-row .blog-content {
    display: flex;
    align-items: start;
    flex-direction: column;
    gap: 12px;
}

.article-blog.style-large {
    grid-column: 1/-1;
}

.article-blog.style-large .entry_name {
    margin-bottom: 12px;
}

.article-blog.style-large .text {
    margin-bottom: 24px;
}

.article-blog.type-space-2 {
    gap: 28px;
}

.article-blog.type-space-2 .blog-content {
    padding: 0;
}

.article-blog.type-space-2 .entry_name {
    margin-bottom: 12px;
}

.article-blog.type-space-2 .text {
    margin-bottom: 24px;
}

.article-blog.type-space-2 .entry_tag {
    top: 0;
    left: 0;
}

.article-blog.style-radius {
    gap: 28px;
}

.article-blog.style-radius .entry_image {
    border-radius: 16px;
}

.article-blog.style-radius .name-tag {
    border-radius: 999px;
    background-color: var(--primary);
}

.article-blog.style-radius .entry_name {
    margin-bottom: 12px;
}

.article-blog.style-radius .text {
    margin-bottom: 24px;
}

.article-blog.style-radius .blog-content {
    padding: 0;
}

@media (min-width: 768px) {
    .article-blog.style-row {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 48px;
    }

    .article-blog.style-row .entry_image {
        aspect-ratio: 0.9256198347;
    }

    .article-blog.style-row .entry_image img {
        object-fit: cover;
    }

    .article-blog.style-row .blog-content {
        padding-left: 0px;
        max-width: 572px;
    }
}

@media (min-width: 1200px) {
    .article-blog {
        gap: 32px;
    }

    .article-blog .entry_tag {
        top: 16px;
        left: 16px;
    }

    .article-blog .blog-content {
        padding-left: 16px;
    }

    .article-blog.style-row .entry_name {
        margin-bottom: -12px;
    }

    .article-blog.style-row .blog-content {
        gap: 24px;
    }

    .article-blog.style-large {
        display: flex;
        flex-direction: column;
        gap: 48px;
    }

    .article-blog.style-large .entry_image img {
        aspect-ratio: 1.7770382696;
    }

    .article-blog.style-large .blog-content {
        padding-left: 0;
    }

    .article-blog.style-large .entry_name {
        font-size: 32px;
        line-height: 43px;
    }

    .article-blog.style-small img {
        aspect-ratio: 1.7802197802;
    }
}

.social-wrap .title {
    margin-bottom: 20px;
}

.wg-pagination {
    display: flex;
    align-items: center;
    gap: 9px;
}

@media (max-width: 575px) {
    .wg-pagination {
        justify-content: center;
    }
}

.pagination-item {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
}

.pagination-item.direct {
    border: 1px solid var(--line);
}

.pagination-item.direct:hover {
    border-color: var(--black);
}

.pagination-item.active,
.pagination-item:hover {
    background-color: var(--black);
    color: var(--white);
}

@media (min-width: 1200px) {
    .pagination-item {
        width: 56px;
        height: 56px;
    }

    .pagination-item .icon {
        font-size: 24px;
    }
}

@media (max-width: 575px) {
    .pagination-item:nth-child(6) {
        display: none;
    }
}

.sidebar-item:not(:last-child) {
    margin-bottom: 30px;
}

.sidebar-item .sb-title {
    margin-bottom: 15px;
}

@media (min-width: 1200px) {
    .sidebar-item:not(:last-child) {
        margin-bottom: 48px;
    }

    .sidebar-item .sb-title {
        margin-bottom: 24px;
    }
}

.sb-search .form-search input {
    padding-top: 15px;
    padding-bottom: 15px;
}

.sb-search .form-search .icon {
    font-size: 20px;
}

.sb-category {
    display: grid;
    gap: 12px;
}

.sb-category a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--text);
}

.sb-recent {
    display: grid;
    gap: 24px;
}

.sb-tag {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

.sb-tag a {
    padding: 11px 15px;
    border: 1px solid var(--line);
    border-radius: 99px;
}

.sb-tag a:hover {
    border-color: var(--primary);
}

.sb-gallery {
    gap: 8px;
    width: 100%;
}

.sb-gallery img {
    width: 100%;
    min-height: 100px;
    object-fit: cover;
}

.wg-recent {
    display: flex;
    gap: 12px;
}

.wg-recent .image {
    max-width: 112px;
    flex: 1;
}

.wg-recent img {
    width: 100%;
    object-fit: cover;
}

.wg-recent .content {
    display: grid;
    gap: 8px;
    flex: 2;
}

.wg-recent .entry_name {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}

.sb-banner {
    position: relative;
}

.sb-banner .image {
    width: 100%;
}

.sb-banner img {
    aspect-ratio: 0.6821052632;
    object-fit: cover;
    width: 100%;
}

.sb-banner .content {
    position: absolute;
    bottom: 24px;
    left: 24px;
}

.sb-banner .sub-title {
    margin-bottom: 12px;
}

.sb-banner .title {
    margin-bottom: 30px;
}

@media (min-width: 1200px) {
    .sb-banner .title {
        margin-bottom: 40px;
    }
}

.btn-sidebar-mb {
    position: fixed;
    top: 30%;
    left: 0;
    z-index: 50;
}

.btn-sidebar-mb button {
    width: 40px;
    height: 40px;
    border: 1px solid var(--black);
    background-color: var(--black);
    color: var(--white);
    display: flex;
    justify-content: center;
    align-items: center;
}

.btn-sidebar-mb button i {
    font-size: 20px;
}

.btn-sidebar-mb button:hover {
    background-color: var(--white);
    color: var(--black);
}

.btn-sidebar-mb.right {
    left: unset;
    right: 0;
    transform: rotate(180deg);
}

.page-title-blog {
    position: relative;
}

.page-title-blog .bg-image {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.page-title-blog .bg-image .parallaxie {
    position: absolute;
    inset: 0;
}

.page-title-blog .name-tag {
    display: inline-flex;
    padding: 8px 24px;
    background-color: var(--black);
    color: var(--white);
    margin-bottom: 12px;
}

.page-title-blog .heading {
    text-transform: capitalize;
    margin-bottom: 24px;
}

.page-title-blog .content {
    padding-top: 200px;
    padding-bottom: 30px;
}

.page-title-blog .entry_author {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--text);
}

.page-title-blog .name-author {
    color: var(--text);
}

@media (min-width: 1200px) {
    .page-title-blog .content {
        padding-top: 300px;
    }
}

@media (min-width: 1440px) {
    .page-title-blog .heading {
        line-height: 66.5px;
    }

    .page-title-blog .content {
        padding-top: 475px;
        padding-bottom: 48px;
    }
}

@media (max-width: 1199px) {
    .page-title-blog {
        position: relative;
    }

    .page-title-blog::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.3019607843);
    }

    .page-title-blog .heading,
    .page-title-blog .entry_author,
    .page-title-blog .name-author {
        color: var(--white);
    }
}

.blog-detail_info {
    display: flex;
    flex-direction: column;
    gap: 32px;
    margin-top: 30px;
}

.blog-detail_info .title-label {
    margin-bottom: 8px;
}

.blog-detail_info .entry_date {
    font-weight: 600;
}

.blog-detail_info .tag-list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    font-weight: 500;
    gap: 8px 16px;
}

@media (min-width: 1200px) {
    .blog-detail_info {
        max-width: 248px;
        width: 100%;
    }
}

.blog-detail_content .box-text {
    display: grid;
    gap: 32px;
}

.blog-detail_content .entry_image img {
    min-height: 300px;
    object-fit: cover;
}

.quote-blog {
    padding: 20px 15px;
    background-color: var(--black);
}

.quote-blog .icon {
    font-size: 56px;
    margin-bottom: 12px;
}

.quote-blog .icon,
.quote-blog .quote {
    color: var(--white);
}

.quote-blog .quote {
    font-style: italic;
}

@media (min-width: 1200px) {
    .quote-blog {
        padding: 32px;
    }
}

.group-direc {
    display: flex;
    gap: 20px;
}

.group-direc .br-line {
    width: 1px;
    height: 100%;
}

@media (min-width: 1200px) {
    .group-direc {
        gap: 32px;
    }
}

.btn-direc {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
}

.btn-direc .name-post {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}

.btn-direc img {
    max-width: 112px;
}

.btn-direc .content {
    padding: 11px 0px;
    display: grid;
    gap: 8px;
}

.btn-direc.next {
    justify-content: flex-end;
    text-align: end;
}

@media (max-width: 767px) {
    .btn-direc img {
        display: none;
    }
}

.blog-detail_comment {
    padding-top: 64px;
    margin-bottom: 56px;
}

.blog-detail_comment .title {
    margin-bottom: 56px;
}

.blog-detail_comment .comment-list {
    padding-bottom: 28px;
}

.blog-detail_comment .comment-list .comment-item:not(:last-child) {
    margin-bottom: 28px;
}

.blog-detail_comment .comment-list .comment-item:not(:last-child) .cmt_content {
    padding-bottom: 28px;
    border-bottom: 1px solid var(--line-10);
}

.blog-detail_comment .btn-view-all {
    max-width: 988px;
    margin-left: auto;
}

.comment-item {
    display: flex;
    align-items: start;
    gap: 20px;
}

.comment-item .cmt_image {
    max-width: 60px;
    width: 100%;
    border-radius: 14px;
    overflow: hidden;
}

.comment-item .cmt_content {
    width: 100%;
}

.comment-item .head {
    display: flex;
    justify-content: space-between;
    margin-bottom: 12px;
}

.comment-item .cmt__text {
    margin-bottom: 16px;
}

.comment-item .image-cmt-list {
    display: flex;
    gap: 16px;
    margin-bottom: 16px;
}

.comment-item .feel-action-group {
    display: flex;
    align-items: center;
    gap: 16px;
}

.comment-item .btn-feel {
    display: flex;
    align-items: center;
    gap: 8px;
}

.comment-item .btn-feel .icon {
    font-size: 18px;
}

@media (max-width: 767px) {
    .comment-item {
        gap: 8px;
    }
}

.blog-detail_add_review .title {
    margin-bottom: 8px;
}

.blog-detail_add_review .sub-title {
    margin-bottom: 56px;
}

/*------------ testimonial ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.testimonial-V01 {
    padding: 30px 15px;
    display: grid;
    gap: 32px;
    border: 1px solid var(--line);
    background: var(--white);
}

.testimonial-V01 .tes_title {
    margin-bottom: 12px;
    font-weight: 600;
}

.testimonial-V01 .tes_text {
    margin-bottom: 24px;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}

.testimonial-V01 .tes_author {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}

.testimonial-V01 .author-name {
    color: var(--black);
}

.testimonial-V01 .tes_product {
    display: flex;
    align-items: center;
    gap: 16px;
}

.testimonial-V01 .prd_name {
    margin-bottom: 4px;
}

.testimonial-V01 .product-image {
    max-width: 90px;
}

.testimonial-V01 .product-image img {
    aspect-ratio: 1;
    object-fit: cover;
}

@media (min-width: 768px) {
    .testimonial-V01 {
        padding: 31px;
    }

    .testimonial-V01 .mb-md-32 {
        margin-bottom: 32px !important;
    }
}

.testimonial-V02 {
    display: flex;
    align-items: center;
    gap: 30px;
}

.testimonial-V02 .tes_product {
    position: relative;
}

.testimonial-V02 .product-infor {
    position: absolute;
    bottom: 8px;
    left: 8px;
    right: 8px;
    background-color: var(--white);
    padding: 8px 16px;
}

.testimonial-V02 .prd_name {
    margin-bottom: 4px;
}

.testimonial-V02 .tes_icon {
    font-size: 40px;
    color: var(--black);
    margin-bottom: 20px;
}

.testimonial-V02 .tes_title {
    font-weight: 600;
}

.testimonial-V02 .tes_title,
.testimonial-V02 .tes_text {
    margin-bottom: 15px;
}

.testimonial-V02 .tes_author {
    margin-bottom: 8px;
    color: var(--black);
}

.testimonial-V02 .tes_text {
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    display: -webkit-box !important;
    overflow: hidden;
}

.testimonial-V02.type-space-2 .tes_author {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}

.testimonial-V02.type-space-3 .tes_title {
    margin-bottom: 4px;
}

.testimonial-V02.type-space-3 .prd_price {
    margin-bottom: 24px;
}

.testimonial-V02.type-space-3 .tes_author {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}

@media (min-width: 1440px) {
    .testimonial-V02 {
        gap: 45px;
    }

    .testimonial-V02 .tes_content {
        flex: 2;
    }

    .testimonial-V02 .product-image {
        max-width: 324px;
        width: 100%;
    }

    .testimonial-V02 .product-image img {
        aspect-ratio: 0.7788461538;
        object-fit: cover;
    }

    .testimonial-V02.type-space-3 .product-image {
        width: 100%;
        max-width: 200px;
    }

    .testimonial-V02.type-space-3 .product-image img {
        aspect-ratio: 0.6622516556;
    }
}

@media (min-width: 1200px) {

    .testimonial-V02 .tes_title,
    .testimonial-V02 .tes_text {
        margin-bottom: 24px;
    }

    .testimonial-V02 .tes_icon {
        font-size: 56px;
        margin-bottom: 32px;
    }
}

@media (max-width: 1439px) {
    .testimonial-V02>* {
        width: 50%;
    }
}

@media (max-width: 1199px) {
    .testimonial-V02 {
        flex-wrap: wrap;
        align-items: start;
    }

    .testimonial-V02>* {
        width: 100%;
    }

    .testimonial-V02 .product-image img {
        max-height: 350px;
        width: 100%;
        object-fit: cover;
    }

    .testimonial-V02.type-space-3 .product-image img {
        max-height: 450px;
    }
}

@media (max-width: 991px) {
    .testimonial-V02 .product-image img {
        max-height: 300px;
    }
}

.testimonial-V03 {
    display: flex;
    gap: 15px;
}

.testimonial-V03 .tes_title {
    font-weight: 600;
}

.testimonial-V03 .tes_icon {
    font-size: 40px;
    color: var(--black);
}

.testimonial-V03 .author-name {
    color: var(--black);
}

.testimonial-V03 .tes_title,
.testimonial-V03 .tes_text {
    margin-bottom: 15px;
}

.testimonial-V03 .tes_author {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

@media (min-width: 1200px) {
    .testimonial-V03 {
        gap: 30px;
    }

    .testimonial-V03 .tes_icon {
        font-size: 56px;
    }

    .testimonial-V03 .tes_title,
    .testimonial-V03 .tes_text {
        margin-bottom: 24px;
    }

    .testimonial-V03 .author-verified {
        font-size: 24px;
    }
}

@media (min-width: 1440px) {
    .testimonial-V03 {
        gap: 48px;
    }
}

@media (max-width: 575px) {
    .testimonial-V03 {
        flex-direction: column;
    }
}

.testimonial-V04 {
    border: 1px solid var(--line);
    display: flex;
    flex-direction: column;
}

.testimonial-V04 .author-image,
.testimonial-V04 .tes_text {
    margin-bottom: 20px;
}

.testimonial-V04 .tes_text {
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}

.testimonial-V04 .author-image {
    overflow: hidden;
    border-radius: 50%;
    max-width: 72px;
}

.testimonial-V04 .author-image img {
    object-fit: cover;
}

.testimonial-V04 .tes_content {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex-direction: column;
    padding: 30px 15px;
    height: 100%;
}

.testimonial-V04 .tes_title {
    margin-bottom: 8px;
}

.testimonial-V04 .tes_product {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 12px;
    background-color: var(--bg-8);
    border-top: 1px solid var(--line);
}

.testimonial-V04 .prd_name {
    margin-bottom: 4px;
}

.testimonial-V04 .tes_author {
    margin-bottom: 8px;
    color: var(--black);
}

.testimonial-V04 .product-image {
    max-width: 90px;
}

.testimonial-V04 .product-image img {
    aspect-ratio: 1;
    object-fit: cover;
}

@media (min-width: 1200px) {
    .testimonial-V04 .tes_content {
        padding: 32px;
    }

    .testimonial-V04 .author-image,
    .testimonial-V04 .tes_text {
        margin-bottom: 32px;
    }
}

.testimonial-V05 {
    text-align: center;
}

.testimonial-V05 .tes_icon {
    font-size: 50px;
    color: var(--black);
    margin-bottom: 20px;
}

.testimonial-V05 .tes_author {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 4px;
}

.testimonial-V05 .tes_author .author-verified {
    font-size: 24px;
}

.testimonial-V05 .author-name {
    color: var(--black);
}

.testimonial-V05 .rate_wrap {
    margin-bottom: 20px;
    justify-content: center;
}

@media (min-width: 1200px) {
    .testimonial-V05 .tes_icon {
        font-size: 76px;
    }

    .testimonial-V05 .rate_wrap,
    .testimonial-V05 .tes_icon {
        margin-bottom: 32px;
    }
}

/*------------ accordion ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.widget-accordion {
    border-bottom: 1px solid var(--line);
}

.widget-accordion .accordion-title {
    display: flex;
    align-items: center;
    gap: 30px;
    padding: 32px 0px;
    font-weight: 400;
    font-size: clamp(20px, 3vw, 28px);
    line-height: clamp(26px, 3.2vw, 32px);
    text-transform: uppercase;
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

@media (max-width: 767px) {
    .widget-accordion .accordion-title {
        padding: 20px 0px;
    }
}

.widget-accordion .accordion-title .icon {
    font-size: clamp(16px, 3vw, 22px);
    transition: transform 0.35s linear;
}

.widget-accordion .accordion-title:not(.collapsed) {
    color: var(--primary);
}

.widget-accordion .accordion-title:not(.collapsed) .icon {
    transform: rotate(-90deg);
}

.widget-accordion .accordion-body {
    padding: 10px 0px 20px;
}

.widget-accordion:first-child {
    border-top: 1px solid var(--line);
}

.widget-accordion.style-2 .accordion-title {
    padding: 16px 0px;
    justify-content: space-between;
    font-size: 18px;
    line-height: 28px;
}

.widget-accordion.style-2 .accordion-title .icon {
    font-size: 16px;
}

.widget-accordion.style-2:first-child {
    border-top: unset;
}

.ic-accordion-custom {
    position: relative;
    width: 12px;
    height: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.35s linear;
}

.ic-accordion-custom::after,
.ic-accordion-custom::before {
    content: "";
    position: absolute;
    background-color: var(--black);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border-radius: 2px;
}

.ic-accordion-custom::before {
    height: 100%;
    width: 2px;
}

.ic-accordion-custom::after {
    height: 2px;
    width: 100%;
}

.accor-mn-pl .accordion-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.accor-mn-pl .accordion-title .ic-accordion-custom::before {
    transform: rotate(90deg);
}

.accor-mn-pl .accordion-title .ic-accordion-custom::after {
    transform: rotate(180deg);
}

.accor-mn-pl .accordion-title.collapsed .ic-accordion-custom::before {
    transform: rotate(0deg);
}

.accor-mn-pl .accordion-title.collapsed .ic-accordion-custom::after {
    transform: rotate(0deg);
}

.accordion-faq .icon {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: var(--black);
    border-color: var(--black);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    flex-shrink: 0;
}

.accordion-faq .accordion-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    margin-bottom: 22px;
    gap: 10px;
}

.accordion-faq .accordion-title .text {
    color: var(--black);
    font-weight: 500;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    display: -webkit-box !important;
    overflow: hidden;
}

.accordion-faq .accordion-title .ic-accordion-custom::before {
    transform: rotate(90deg);
    background-color: var(--white);
}

.accordion-faq .accordion-title .ic-accordion-custom::after {
    transform: rotate(180deg);
    background-color: var(--white);
}

.accordion-faq .accordion-title.collapsed {
    margin-bottom: 0;
}

.accordion-faq .accordion-title.collapsed .text {
    color: var(--text);
    font-weight: 400;
}

.accordion-faq .accordion-title.collapsed .icon {
    border: 1px solid var(--line);
    background-color: transparent;
}

.accordion-faq .accordion-title.collapsed .ic-accordion-custom::before {
    transform: rotate(0deg);
    background-color: var(--black);
}

.accordion-faq .accordion-title.collapsed .ic-accordion-custom::after {
    transform: rotate(0deg);
    background-color: var(--black);
}

@media (min-width: 1200px) {
    .accordion-faq .icon {
        width: 40px;
        height: 40px;
    }
}

/*------------ zoom ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.drift-bounding-box.drift-open {
    background: rgba(255, 255, 255, 0.2509803922);
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.4) inset;
    z-index: 5000;
}

.drift-zoom-pane {
    z-index: 5000;
}

.section-image-zoom .other-image-zoom {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

@media (min-width: 1200px) {
    .section-image-zoom.zoom-active .other-image-zoom {
        opacity: 0.3;
    }
}

.pswp__bg {
    background: var(--white);
}

.pswp__icn {
    fill: rgb(34, 34, 34);
    color: var(--white);
}

.pswp__icn .pswp__icn-shadow {
    stroke: var(--white);
    stroke-width: 1px;
    fill: none;
}

.pswp__counter {
    color: #222;
    text-shadow: 1px 1px 3px #ffffff;
}

.tf-model-viewer {
    width: 100%;
    height: 100%;
    position: relative;
}

.tf-model-viewer model-viewer {
    display: block;
    position: relative;
    z-index: 5;
    width: 100%;
    height: 100%;
}

.tf-model-viewer model-viewer.disabled {
    pointer-events: none;
}

.tf-model-viewer.active model-viewer {
    pointer-events: all;
}

.tf-model-viewer.active .wrap-btn-viewer {
    display: none;
}

.tf-zoom-main1,
.tf-zoom-main {
    position: sticky;
    top: 30px;
    z-index: 50;
}

.tf-zoom-main1 .drift-zoom-pane,
.tf-zoom-main .drift-zoom-pane {
    top: 0;
    left: 0;
    height: 520px;
    max-width: 520px;
    width: 100%;
    background: #fff;
    -webkit-transform: translate3d(0, 0, 0);
    box-shadow: 0 1px 5px rgba(127, 127, 127, 0.0196078431), 0 5px 18px rgba(127, 127, 127, 0.2);
    z-index: 3;
}

.tf-zoom-main1 .drift-zoom-pane img,
.tf-zoom-main .drift-zoom-pane img {
    object-fit: cover;
}

.drift-bounding-box.drift-open {
    background: rgba(255, 255, 255, 0.2509803922);
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.4) inset;
    z-index: 5000;
}

.drift-zoom-pane {
    z-index: 5000;
}

.section-image-zoom .other-image-zoom {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.pswp__bg {
    background: var(--white);
}

.pswp__icn {
    fill: rgb(34, 34, 34);
    color: var(--white);
}

.pswp__icn .pswp__icn-shadow {
    stroke: var(--white);
    stroke-width: 1px;
    fill: none;
}

.pswp__counter {
    color: #222;
    text-shadow: 1px 1px 3px #ffffff;
}

.tf-model-viewer {
    width: 100%;
    height: 100%;
    position: relative;
}

.tf-model-viewer model-viewer {
    display: block;
    position: relative;
    z-index: 5;
    width: 100%;
    height: 100%;
}

.tf-model-viewer model-viewer.disabled {
    pointer-events: none;
}

.tf-model-viewer.active model-viewer {
    pointer-events: all;
}

.tf-model-viewer.active .wrap-btn-viewer {
    display: none;
}

.icv__label {
    border-radius: 999px;
    padding: 8px 32px;
    background-color: var(--black);
}

.icv__label {
    border-radius: 100px;
    padding: 6px 20px;
    font-size: 14px;
    line-height: 16.8px;
    font-weight: 600;
    background-color: var(--main);
    color: var(--white);
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
    text-transform: uppercase;
}

@media (min-width: 992px) {
    .icv__control-line {
        width: 4px !important;
        background: #FAFAFA !important;
    }
}

/*------------ shop ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.noUi-target,
.noUi-target * {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    -ms-touch-action: none;
    touch-action: none;
    -ms-user-select: none;
    -moz-user-select: none;
    user-select: none;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.noUi-target {
    position: relative;
    direction: ltr;
}

.noUi-base,
.noUi-connects {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
}

.noUi-connects {
    overflow: hidden;
    z-index: 0;
}

.noUi-connect,
.noUi-origin {
    will-change: transform;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -ms-transform-origin: 0 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
}

html:not([dir=rtl]) .noUi-horizontal .noUi-origin {
    left: auto;
    right: 0;
}

.noUi-vertical .noUi-origin {
    width: 0;
}

.noUi-horizontal .noUi-origin {
    height: 0;
}

.noUi-handle {
    position: absolute;
}

.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
    -webkit-transition: transform 0.3s;
    transition: transform 0.3s;
}

.noUi-state-drag * {
    cursor: inherit !important;
}

.noUi-horizontal {
    height: 18px;
}

.noUi-horizontal .noUi-handle {
    width: 34px;
    height: 28px;
    left: -17px;
    top: -6px;
}

.noUi-vertical {
    width: 18px;
}

.noUi-vertical .noUi-handle {
    width: 28px;
    height: 34px;
    left: -6px;
    top: -17px;
}

html:not([dir=rtl]) .noUi-horizontal .noUi-handle {
    right: -17px;
    left: auto;
}

.noUi-draggable {
    cursor: ew-resize;
}

.noUi-vertical .noUi-draggable {
    cursor: ns-resize;
}

.noUi-handle:after {
    left: 17px;
}

.noUi-vertical .noUi-handle:after,
.noUi-vertical .noUi-handle:before {
    width: 14px;
    height: 1px;
    left: 6px;
    top: 14px;
}

.noUi-vertical .noUi-handle:after {
    top: 17px;
}

[disabled] .noUi-connect {
    background: #b8b8b8;
}

[disabled] .noUi-handle,
[disabled].noUi-handle,
[disabled].noUi-target {
    cursor: not-allowed;
}

.noUi-pips,
.noUi-pips * {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.noUi-pips {
    position: absolute;
    color: #999;
}

.noUi-value {
    position: absolute;
    white-space: nowrap;
    text-align: center;
}

.noUi-value-sub {
    color: #ccc;
    font-size: 10px;
}

.noUi-marker {
    position: absolute;
    background: #ccc;
}

.noUi-marker-sub {
    background: #aaa;
}

.noUi-marker-large {
    background: #aaa;
}

.noUi-pips-horizontal {
    padding: 10px 0;
    height: 80px;
    top: 100%;
    left: 0;
    width: 100%;
}

.noUi-value-horizontal {
    -webkit-transform: translate(-50%, 50%);
    transform: translate(-50%, 50%);
}

.noUi-rtl .noUi-value-horizontal {
    -webkit-transform: translate(50%, 50%);
    transform: translate(50%, 50%);
}

.noUi-marker-horizontal.noUi-marker {
    margin-left: -1px;
    width: 2px;
    height: 5px;
}

.noUi-marker-horizontal.noUi-marker-sub {
    height: 10px;
}

.noUi-marker-horizontal.noUi-marker-large {
    height: 15px;
}

.noUi-pips-vertical {
    padding: 0 10px;
    height: 100%;
    top: 0;
    left: 100%;
}

.noUi-value-vertical {
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%, 0);
    padding-left: 25px;
}

.noUi-rtl .noUi-value-vertical {
    -webkit-transform: translate(0, 50%);
    transform: translate(0, 50%);
}

.noUi-marker-vertical.noUi-marker {
    width: 5px;
    height: 2px;
    margin-top: -1px;
}

.noUi-marker-vertical.noUi-marker-sub {
    width: 10px;
}

.noUi-marker-vertical.noUi-marker-large {
    width: 15px;
}

.noUi-tooltip {
    display: block;
    position: absolute;
    border: 1px solid #d9d9d9;
    border-radius: 3px;
    background: #fff;
    color: #000;
    padding: 5px;
    text-align: center;
    white-space: nowrap;
}

.noUi-horizontal .noUi-tooltip {
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    left: 50%;
    bottom: 120%;
}

.noUi-vertical .noUi-tooltip {
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    top: 50%;
    right: 120%;
}

.noUi-horizontal {
    height: 2px;
}

.noUi-target {
    border: 0;
}

.noUi-base .noUi-connects {
    border-radius: 999px;
    background-color: var(--line);
}

.noUi-connect {
    background-color: var(--black);
}

.noUi-horizontal .noUi-handle,
.noUi-vertical .noUi-handle {
    height: 15px;
    width: 15px;
    border-radius: 50px;
    border: 4px solid var(--black);
    background-color: var(--white);
    box-shadow: unset;
    cursor: pointer;
}

.noUi-horizontal .noUi-handle::before,
.noUi-horizontal .noUi-handle::after,
.noUi-vertical .noUi-handle::before,
.noUi-vertical .noUi-handle::after {
    content: none;
}

html:not([dir=rtl]) .noUi-horizontal .noUi-handle {
    right: -8px;
}

.tf-btn-filter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    border: 1px solid var(--line);
    border-radius: 999px;
    text-wrap: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
    padding: 8px 16px;
    color: var(--black);
}

.tf-btn-filter .icon {
    font-size: 24px;
}

.tf-btn-filter:hover {
    border-color: var(--black);
}

.tf-btn-filter.active {
    background-color: var(--black);
    border-color: var(--black);
    color: var(--white);
}

@media (min-width: 1200px) {
    .tf-btn-filter {
        gap: 8px;
        min-width: 180px;
        padding: 15px;
    }
}

#filterDropdown {
    min-width: 93px;
}

.tf-shop-control {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px 8px;
    margin-bottom: 30px;
    flex-wrap: wrap;
}

.tf-shop-control .tf-control-sorting {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
}

@media (min-width: 1200px) {
    .tf-shop-control {
        margin-bottom: 48px;
    }
}

.tf-control-layout {
    display: flex;
    align-items: center;
    gap: 15px;
}

.tf-control-layout .tf-view-layout-switch {
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    cursor: pointer;
    color: var(--text-3);
}

.tf-control-layout .tf-view-layout-switch:hover,
.tf-control-layout .tf-view-layout-switch.active {
    color: var(--black);
}

@media (min-width: 992px) {
    .tf-control-layout {
        gap: 24px;
    }
}

@media (max-width: 575px) {
    .tf-view-layout-switch {
        font-size: 14px;
    }
}

.wrapper-shop {
    transition: all 0.3s ease-in-out;
    animation: fadeShop 0.5s ease-in-out;
    gap: 30px;
}

@media (max-width: 575px) {
    .wrapper-shop {
        column-gap: 12px;
        row-gap: 32px;
    }
}

.wrapper-control-shop {
    position: relative;
}

.wrapper-control-shop.loading-shop * {
    display: none;
}

.wrapper-control-shop.loading-shop::after {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    width: 30px;
    height: 30px;
    border: 2px solid transparent;
    border-top: 2px solid var(--black);
    border-right: 2px solid var(--black);
    border-radius: 50%;
    animation: spin 0.5s linear infinite;
    transform: translate(-50%, -50%);
    z-index: 10000;
}

@media (min-width: 1200px) {
    .wrapper-control-shop .tf-grid-layout .wg-pagination {
        margin-top: 16px;
        gap: 40px 20px;
    }
}

@keyframes fadeShop {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.listLayout-wrapper #product-count-grid {
    display: none;
}

.listLayout-wrapper #product-count-list {
    display: block;
}

.gridLayout-wrapper #product-count-grid {
    display: block;
}

.gridLayout-wrapper #product-count-list {
    display: none;
}

.widget-facet:not(:last-child) .collapse-body {
    padding-bottom: 32px;
}

.widget-facet .facet-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 24px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    color: var(--black);
}

.widget-facet .facet-title .icon {
    transform: rotate(0deg);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.widget-facet .facet-title.collapsed {
    margin-bottom: 32px;
}

.widget-facet .facet-title.collapsed .icon {
    transform: rotate(180deg);
}

.filter-group-check.group-category a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    color: var(--text);
}

.filter-group-check .list-item {
    display: flex;
    gap: 15px;
    align-items: center;
    cursor: pointer;
}

.filter-group-check .list-item:not(:last-child) {
    margin-bottom: 12px;
}

.filter-group-check .label {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
}

.filter-group-check .label>*:first-child {
    flex: 1;
}

@media (min-width: 1200px) {
    .filter-group-check .list-item {
        font-size: 18px;
        line-height: 24px;
        color: var(--text);
    }
}

.filter-size-box {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.filter-size-box .size-item {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--line);
    background-color: var(--white);
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    position: relative;
    border-radius: 50%;
    color: var(--text);
}

.filter-size-box .size-item.active,
.filter-size-box .size-item:hover {
    background-color: var(--black);
    color: var(--white);
}

.filter-size-box .size-item.disabled {
    color: var(--black-4);
    pointer-events: none;
}

.filter-size-box .size-item.disabled::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 53.568px;
    height: 1px;
    background-color: var(--black-4);
    transform: rotate(45deg);
    transform-origin: top left;
}

.filter-size-box .size-item.over-size {
    width: 120px;
    border-radius: 999px;
}

@media (min-width: 1200px) {
    .filter-size-box .size-item {
        width: 56px;
        height: 56px;
    }
}

.filter-color-box {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.filter-color-box .color-item {
    width: 32px;
    height: 32px;
    display: block;
    border-radius: 50%;
    border: 1px solid var(--line);
    overflow: hidden;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    background-color: var(--white);
    cursor: pointer;
    padding: 4px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.filter-color-box .color-item .color {
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 50%;
}

.filter-color-box .color-item.active {
    border-color: var(--dark) !important;
}

.filter-color-box .color-text {
    display: none;
}

@media (min-width: 1200px) {
    .filter-color-box .color-item {
        width: 40px;
        height: 40px;
    }
}

.meta-filter-shop {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 20px;
    margin-bottom: 48px;
}

.meta-filter-shop #applied-filters {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

.meta-filter-shop .filter-tag,
.meta-filter-shop .remove-all-filters {
    display: flex;
    align-items: center;
    text-transform: capitalize;
    gap: 10px;
    padding: 8px 16px;
    border-radius: 30px;
    color: var(--black);
    border: 1px solid var(--line);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    cursor: pointer;
    font-weight: 400;
    font-size: clamp(16px, 2.3vw, 18px);
    line-height: clamp(22px, 2.8vw, 24px);
}

.meta-filter-shop .filter-tag .icon,
.meta-filter-shop .remove-all-filters .icon {
    font-size: clamp(16px, 2.5vw, 20px);
}

.meta-filter-shop .filter-tag:hover,
.meta-filter-shop .remove-all-filters:hover {
    border-color: var(--primary);
    color: var(--primary);
}

@media (max-width: 575px) {

    .meta-filter-shop .filter-tag,
    .meta-filter-shop .remove-all-filters {
        gap: 6px;
        padding: 6px 12px;
    }
}

.meta-filter-shop.type-drop {
    margin-bottom: 20px;
}

@media (max-width: 991px) {
    .meta-filter-shop {
        margin-bottom: 30px;
    }
}

.overlay-filter {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2000;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.4);
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    /*cursor: url(../images/cursor-close.svg), auto;*/
}

.overlay-filter.show {
    opacity: 1;
    visibility: visible;
}

@media (min-width: 1200px) {
    .overlay-filter.type-drawer {
        display: none;
    }
}

.widget-price {
    display: grid;
    gap: 16px;
}

.widget-price .price-val-range {
    padding: 0px 8px;
    margin: 7px 0px;
}

.widget-price .price-box,
.widget-price .box-value-price {
    display: flex;
    gap: 8px;
}

.widget-price .price-box {
    color: var(--primary);
}

.widget-price .price-val {
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
    color: var(--black);
    position: relative;
}

.widget-price .price-val::before {
    content: attr(data-currency);
}

@media (min-width: 1200px) {
    .widget-price {
        gap: 24px;
    }

    .widget-price .box-value-price {
        gap: 12px;
    }
}

.tf-list-layout {
    display: grid;
    gap: 24px;
}

@media (min-width: 1200px) {
    .tf-list-layout {
        gap: 40px;
    }
}

.tf-grid-layout.tf-col-5 .countdown__item {
    font-size: 20px;
    line-height: 27px;
}

.tf-grid-layout.tf-col-5 .variant-box {
    right: 15px;
    left: 15px;
}

.tf-grid-layout.tf-col-5 .product-size_list {
    padding: 12px 24px;
    gap: 6px;
}

.tf-grid-layout.tf-col-5 .product-size_list .size-item:not(:last-child) {
    min-width: 32px;
    padding-right: 6px;
}

.tf-grid-layout.tf-col-5 .card-product.style-2 .hover-tooltip .tooltip,
.tf-grid-layout.tf-col-5 .card-product.style-4 .hover-tooltip .tooltip {
    display: none;
}

.tf-grid-layout.tf-col-6 .product-countdown {
    transform: unset;
    left: 7px;
    right: 7px;
    bottom: 7px;
    padding: 12px 16px;
}

.tf-grid-layout.tf-col-6 .countdown__item {
    font-size: 18px;
    line-height: 24px;
}

.tf-grid-layout.tf-col-6 .variant-box:not(.bot) {
    bottom: 7px;
    right: 7px;
    left: 7px;
}

.tf-grid-layout.tf-col-6 .product-action_list,
.tf-grid-layout.tf-col-6 .product-action_bot {
    display: none;
}

.tf-grid-layout.tf-col-6 .product-size_list {
    padding: 12px 16px;
    gap: 6px;
}

.tf-grid-layout.tf-col-6 .product-size_list .size-item {
    min-width: 22px;
}

.tf-grid-layout.tf-col-6 .product-size_list .size-item:not(:last-child) {
    min-width: 28px;
    padding-right: 6px;
}

.shop-sale-text {
    display: flex;
    align-items: center;
    gap: 12px;
}

.shop-sale-text label {
    cursor: pointer;
}

.tf-filter-dropdown,
.meta-dropdown-filter {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.tf-shop-change {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}

@media (min-width: 1200px) {
    .tf-shop-change {
        gap: 32px;
    }
}

@media (max-width: 991px) {
    .tf-shop-change {
        width: 100%;
        justify-content: space-between;
    }
}

@media (max-width: 1199px) {
    .tf-group-filter {
        margin-bottom: 32px;
    }
}

@media (min-width: 1200px) {
    .filter-drawer-wrap {
        max-width: 100%;
        position: absolute;
        z-index: 90;
        padding: 32px;
        top: 100%;
        left: 0;
        right: 0;
        opacity: 0;
        visibility: hidden;
        box-shadow: 0 0 25px 3px rgba(0, 0, 0, 0.1);
        border-radius: 16px;
    }

    .filter-drawer-wrap .tf-group-filter {
        display: flex;
        flex-direction: column;
        gap: 32px;
    }

    .filter-drawer-wrap .collapse-body {
        padding-bottom: 0 !important;
    }

    .filter-drawer-wrap .widget-facet {
        margin-bottom: 0;
        padding-bottom: 0;
        border: 0;
    }

    .filter-drawer-wrap .widget-facet .collapse:not(.show) {
        display: block;
    }

    .filter-drawer-wrap .widget-facet .collapsing {
        height: auto;
        transition: unset;
    }

    .filter-drawer-wrap .facet-title {
        padding: 0px;
        margin-bottom: 24px !important;
    }

    .filter-drawer-wrap .facet-title .icon {
        display: none;
    }

    .filter-drawer-wrap .filter-color-box {
        padding-right: 0;
    }

    .filter-drawer-wrap .canvas-body {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        overflow-y: unset;
        gap: 32px;
    }

    .filter-drawer-wrap.show {
        margin-top: 10px;
        opacity: 1;
        visibility: visible;
    }
}

/*------------ animation ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
@keyframes sliderShape {

    0%,
    100% {
        border-radius: 42% 58% 70% 30%/45% 45% 55% 55%;
        transform: translate3d(0, 0, 0) rotateZ(0.01deg);
    }

    34% {
        border-radius: 70% 30% 46% 54%/30% 29% 71% 70%;
        transform: translate3d(0, 5px, 0) rotateZ(0.01deg);
    }

    50% {
        transform: translate3d(0, 0, 0) rotateZ(0.01deg);
    }

    67% {
        border-radius: 100% 60% 60% 100%/100% 100% 60% 60%;
        transform: translate3d(0, -3px, 0) rotateZ(0.01deg);
    }
}

@keyframes tf-animate-zoom-in-out {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.1);
    }

    100% {
        transform: scale(1);
    }
}

@keyframes ripple-line {
    to {
        transform: scale(2);
        opacity: 0;
    }
}

@keyframes shine-reverse {
    0% {
        left: 100%;
    }

    100% {
        left: -100%;
    }
}

@-webkit-keyframes spinner-circleBounceDelay {

    0%,
    80%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    40% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes spinner-circleBounceDelay {

    0%,
    80%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    40% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes rotate {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.ani-zoom {
    animation: tf-animate-zoom-in-out 30s linear infinite;
}

@keyframes iconBounce {

    0%,
    100%,
    20%,
    50%,
    80% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    40% {
        -webkit-transform: translateY(-8px);
        -ms-transform: translateY(-8px);
        transform: translateY(-8px);
    }

    60% {
        -webkit-transform: translateY(-5px);
        -ms-transform: translateY(-5px);
        transform: translateY(-5px);
    }
}

@keyframes float1 {

    0%,
    100% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(-5px) rotate(-5deg);
    }
}

@keyframes float2 {

    0%,
    100% {
        transform: translateX(0) rotate(0deg);
    }

    50% {
        transform: translateX(5px) rotate(10deg);
    }
}

@keyframes float3 {

    0%,
    100% {
        transform: scale(1) rotate(0deg);
    }

    50% {
        transform: scale(1.1) rotate(-8deg);
    }
}

@keyframes float4 {

    0%,
    100% {
        opacity: 0.6;
        transform: translateY(0);
    }

    50% {
        opacity: 1;
        transform: translateY(-8px);
    }
}

@keyframes float5 {

    0%,
    100% {
        transform: rotate(0deg) scale(1);
    }

    25% {
        transform: rotate(5deg) scale(1.05);
    }

    75% {
        transform: rotate(-5deg) scale(1.05);
    }
}

@keyframes bgMove {
    from {
        background-position: 200% 0;
    }

    to {
        background-position: 0% 0;
    }
}

/*------------ tabs ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.widget-tabs .widget-menu-tab .item-title {
    cursor: pointer;
    position: relative;
}

.widget-tabs .widget-content-tab {
    position: relative;
    overflow: hidden;
}

.widget-tabs .widget-content-tab .widget-content-inner {
    display: block;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px);
    transition-timing-function: ease-in;
    transition-duration: 0.2s;
}

.widget-tabs .widget-content-tab .widget-content-inner.active {
    pointer-events: auto;
    opacity: 1;
    visibility: visible;
    position: relative;
    z-index: 2;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    transition-timing-function: ease-out;
    transition-duration: 0.3s;
    transition-delay: 0.3s;
}

.widget-tabs.style-2 .widget-menu-tab {
    padding-bottom: 16px;
    border-bottom: 1px solid var(--line);
    display: flex;
    align-items: center;
}

.widget-tabs.style-2 .widget-menu-tab .item-title {
    position: relative;
    padding: 0px 24px;
    border-radius: 0px;
    color: var(--text);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.widget-tabs.style-2 .widget-menu-tab .item-title:first-child {
    padding-left: 0;
}

.widget-tabs.style-2 .widget-menu-tab .item-title::before {
    position: absolute;
    content: "";
    bottom: -16px;
    height: 1px;
    width: 0;
    left: 0;
    right: auto;
    background-color: var(--black);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.widget-tabs.style-2 .widget-menu-tab .item-title.active {
    color: var(--black);
}

.widget-tabs.style-2 .widget-menu-tab .item-title.active .inner {
    font-weight: 500;
}

.widget-tabs.style-2 .widget-menu-tab .item-title.active::before {
    width: 100%;
    left: auto;
    right: 0;
}

@media (max-width: 1024px) {
    .widget-tabs.style-2 .widget-menu-tab {
        padding-bottom: 10px;
        gap: 24px;
    }

    .widget-tabs.style-2 .widget-menu-tab .item-title::before {
        bottom: -10px;
    }
}

.widget-size {
    display: flex;
    gap: 40px;
    align-items: center;
}

.widget-size .box-title-size {
    display: flex;
    align-items: center;
}

.widget-size .box-title-size .title-size {
    width: 76px;
}

.widget-size .box-title-size .number-size {
    width: 102px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 17px 25px;
    border: 1px solid var(--line);
    border-radius: 99px;
    font-family: "Sora", sans-serif;
    color: var(--text);
}

.widget-size .box-title-size .number-size .max-size {
    font-weight: 700;
    color: var(--black);
}

.widget-size .tow-bar-block {
    position: relative;
    background: var(--line);
    height: 4px;
    border-radius: 0px;
}

.widget-size .tow-bar-block .progress-size {
    position: absolute;
    height: 4px;
    background: var(--black);
    left: 0;
}

.widget-size .range-input {
    position: relative;
    flex-grow: 1;
}

.widget-size .range-input input {
    position: absolute;
    top: 0;
    height: 4px;
    width: 100%;
    background: none;
    outline: none;
    border: none;
    pointer-events: none;
    appearance: none;
}

.widget-size .range-input input::-webkit-slider-thumb {
    cursor: pointer;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 4px solid var(--black);
    outline: none;
    pointer-events: auto;
    -webkit-appearance: none;
    background: var(--white);
}

@media (max-width: 1024px) {
    .widget-size {
        gap: 16px;
    }

    .widget-size .box-title-size .title-size {
        width: 55px;
    }

    .widget-size .box-title-size .number-size {
        width: 90px;
        padding: 10px 0;
    }
}

.tab-size {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.tab-size .size-button-wrap {
    display: flex;
    gap: 32px;
}

.tab-size .size-button-wrap .size-button-item {
    width: 100%;
    padding: 15px 0;
    border-radius: 99px;
    border: 1px solid var(--line);
    background-color: transparent;
    text-align: center;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    cursor: pointer;
}

.tab-size .size-button-wrap .size-button-item.select-option {
    border-color: var(--black);
    background-color: var(--black);
}

.tab-size .size-button-wrap .size-button-item.select-option .text {
    color: var(--white);
}

.tab-size .suggests {
    display: flex;
    gap: 24px;
    align-items: center;
}

@media (max-width: 1024px) {
    .tab-size {
        gap: 20px;
    }

    .tab-size .size-button-wrap {
        gap: 10px;
    }

    .tab-size .size-button-wrap .size-button-item {
        padding: 8px;
    }
}

.suggests-list {
    display: flex;
    gap: 24px;
    align-items: center;
    flex-wrap: wrap;
}

.suggests-list .suggests-item {
    width: 204px;
    padding: 15px;
    text-align: center;
    border: 1px solid var(--line);
    border-radius: 999px;
    font-weight: 600;
}

@media (max-width: 1024px) {
    .suggests-list {
        gap: 16px;
    }

    .suggests-list .suggests-item {
        width: max-content;
        padding: 10px 16px;
    }
}

.tab-sizeguide-table {
    border: 1px solid var(--line);
    border-radius: 5px;
    width: 100%;
}

.tab-sizeguide-table th {
    border: 1px solid var(--line);
    padding: 10px;
    font-weight: 600;
    line-height: 20px;
}

.tab-sizeguide-table td {
    border: 1px solid var(--line);
    border-width: 0 1px 1px 0;
    padding: 10px;
    line-height: 20px;
}

.flat-animate-tab .tab-content {
    position: relative;
}

.flat-animate-tab .tab-pane {
    display: block;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px);
    transition-timing-function: ease-in;
    transition-duration: 0.2s;
}

.flat-animate-tab .tab-pane.active {
    pointer-events: auto;
    opacity: 1;
    visibility: visible;
    position: relative;
    z-index: 2;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    transition-timing-function: ease-out;
    transition-duration: 0.3s;
    transition-delay: 0.3s;
}

.flat-animate-tab.tab-style-1 {
    overflow: hidden;
}

.flat-animate-tab.tab-style-1 .tab-content {
    margin-top: 48px;
}

.flat-animate-tab.tab-style-2 {
    overflow: hidden;
    min-width: 200px;
}

.flat-animate-tab.tab-style-3 {
    overflow: hidden;
    display: flex;
    gap: 48px;
}

.flat-animate-tab.tab-style-3 .menu-tab {
    min-width: 200px;
    flex-shrink: 0;
}

.flat-animate-tab.tab-style-3 .tab-content {
    border: 1px solid var(--line);
}

.flat-animate-tab.tab-style-3 .tab-content .tab-pane {
    padding: 32px;
}

.flat-animate-tab .menu-tab-1 {
    border-bottom: 1px solid var(--line);
    display: flex;
    align-items: center;
    overflow: auto;
}

.flat-animate-tab .menu-tab-1 .nav-tab-item:first-child .tab-link {
    padding-left: 0 !important;
}

.flat-animate-tab .menu-tab-1 .tab-link {
    padding: 0 24px 16px;
    font-weight: 400;
    font-size: 32px;
    line-height: 100%;
    color: var(--text);
    display: block;
    position: relative;
    text-align: center;
    white-space: nowrap;
}

.flat-animate-tab .menu-tab-1 .tab-link::after {
    position: absolute;
    content: "";
    bottom: 0px;
    height: 1px;
    width: 0;
    left: 50%;
    transform: translateX(-50%);
    background-color: var(--black);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.flat-animate-tab .menu-tab-1 .tab-link.active {
    color: var(--black);
    font-weight: 500;
}

.flat-animate-tab .menu-tab-1 .tab-link.active::after {
    width: 100%;
}

@media (max-width: 991px) {
    .flat-animate-tab .menu-tab-1 .tab-link {
        padding: 0 12px 16px;
        font-size: 24px;
    }
}

.flat-animate-tab .menu-tab-2 {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.flat-animate-tab .menu-tab-2 .tab-link {
    position: relative;
    width: 100%;
    padding: 11px 23px;
    border: 1px solid var(--line);
    color: var(--text);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.flat-animate-tab .menu-tab-2 .tab-link::before {
    position: absolute;
    content: "";
    right: -8px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 8px solid black;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    opacity: 0;
    visibility: hidden;
}

.flat-animate-tab .menu-tab-2 .tab-link.active {
    background-color: var(--black);
    border-color: var(--black);
    color: var(--white);
}

.flat-animate-tab .menu-tab-2 .tab-link.active::before {
    opacity: 1;
    visibility: visible;
}

@media (max-width: 767px) {
    .flat-animate-tab .menu-tab-2 {
        flex-direction: row;
        overflow-x: auto;
    }

    .flat-animate-tab .menu-tab-2 .tab-link {
        width: max-content;
        padding: 8px 18px;
    }

    .flat-animate-tab .menu-tab-2 .tab-link::before {
        display: none;
    }
}

.flat-animate-tab .menu-tab-3 {
    border-left: 1px solid var(--line);
    height: max-content;
}

.flat-animate-tab .menu-tab-3 .nav-tab-item:first-child .tab-link {
    padding-top: 0;
}

.flat-animate-tab .menu-tab-3 .nav-tab-item:last-child .tab-link {
    padding-bottom: 0;
}

.flat-animate-tab .menu-tab-3 .tab-link {
    position: relative;
    padding: 16px 0 16px 21px;
    color: var(--text);
}

.flat-animate-tab .menu-tab-3 .tab-link::before {
    position: absolute;
    content: "";
    background-color: var(--black);
    width: 1px;
    height: 0;
    left: -1px;
    top: 0;
    bottom: auto;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.flat-animate-tab .menu-tab-3 .tab-link.active {
    color: var(--black);
}

.flat-animate-tab .menu-tab-3 .tab-link.active::before {
    height: 100%;
    top: auto;
    bottom: 0;
}

.tab-descriptions .desc {
    margin-bottom: 32px;
}

.tab-descriptions .list-infor {
    gap: 48px;
}

.tab-descriptions .list-infor .infor-item {
    border: 1px solid var(--line);
    padding: 24px;
}

.tab-descriptions .list-infor .infor-item .heading {
    margin-bottom: 24px;
    color: var(--black);
}

.tab-descriptions .list-infor ul {
    display: grid;
    gap: 16px;
}

.tab-descriptions .list-infor ul li {
    display: flex;
}

.tab-descriptions .list-infor ul li .title {
    min-width: 124px;
    width: 52.9%;
}

@media (max-width: 1199px) {
    .tab-descriptions .list-infor {
        gap: 30px;
    }
}

.tab-faqs .flat-animate-tab {
    display: flex;
    gap: 45px;
}

.tab-faqs .tab-content {
    margin-top: 0px !important;
    border: 1px solid var(--line);
    flex-grow: 1;
}

.tab-faqs .tab-faqs-descriptions {
    padding: 31px 31px 47px;
}

.tab-faqs .tab-faqs-descriptions ul {
    display: flex;
    gap: 16px;
    flex-direction: column;
}

.tab-faqs .tab-faqs-descriptions ul li {
    display: flex;
    gap: 22px;
}

.tab-faqs .tab-faqs-descriptions ul li .title {
    width: 40.87%;
    flex-shrink: 0;
}

.tab-faqs .tab-faqs-descriptions ul li .text {
    flex-grow: 1;
}

@media (max-width: 767px) {
    .tab-faqs .flat-animate-tab {
        flex-direction: column;
        gap: 24px;
    }

    .tab-faqs .tab-faqs-descriptions {
        padding: 30px 16px;
    }
}

.tab-product_list-2 {
    display: flex;
    gap: 4px;
    flex-wrap: nowrap;
    overflow: auto;
}

.tab-product_list-2.style-2 {
    margin-bottom: 30px;
    white-space: nowrap;
}

@media (min-width: 576px) {
    .tab-product_list-2.style-2 {
        justify-content: center;
    }
}

@media (min-width: 1200px) {
    .tab-product_list-2.style-2 {
        margin-bottom: 48px;
    }

    .tab-product_list-2.style-2 .tf-btn-tab-2 {
        min-width: 180px;
    }
}

.tf-btn-tab-2 {
    min-width: 140px;
    border: 1px solid var(--line);
    border-radius: 999px;
    padding: 13px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
}

.tf-btn-tab-2.style-2:hover,
.tf-btn-tab-2.style-2.active {
    color: var(--secondary);
    border-color: var(--bg-4);
    background-color: var(--bg-4);
}

.tf-btn-tab-2.style-primary:hover,
.tf-btn-tab-2.style-primary.active {
    color: var(--white);
    border-color: var(--primary);
    background-color: var(--primary);
}

.tf-btn-tab-2:hover,
.tf-btn-tab-2.active {
    color: var(--primary);
    border-color: var(--primary);
}

@media (max-width: 991px) {
    .tf-btn-tab-2 {
        min-width: 120px;
        padding: 10px 12px;
    }
}

.flat-animate-tab.tab-style-3 .list-infor {
    gap: 16px;
}

.flat-animate-tab.tab-style-3 .list-infor .infor-item {
    padding: 20px 16px;
}

@media (max-width: 1199px) {
    .flat-animate-tab.tab-style-3 {
        display: grid;
        gap: 24px;
    }

    .flat-animate-tab.tab-style-3 .menu-tab-3 {
        display: flex;
        align-items: center;
        white-space: nowrap;
        overflow: auto;
    }

    .flat-animate-tab.tab-style-3 .menu-tab-3>.nav-tab-item a {
        padding: 8px 16px !important;
    }

    .flat-animate-tab.tab-style-3 .menu-tab-3>.nav-tab-item a::before {
        content: unset;
    }

    .flat-animate-tab.tab-style-3 .menu-tab-3>.nav-tab-item a.active {
        color: var(--primary);
    }

    .flat-animate-tab.tab-style-3 .tab-pane {
        padding: 30px 16px !important;
    }

    .flat-animate-tab.tab-style-3 .tab-faqs .tab-pane li {
        flex-wrap: wrap;
        gap: 8px !important;
    }

    .flat-animate-tab.tab-style-3 .tab-faqs .tab-pane li>* {
        width: 100% !important;
    }

    .flat-animate-tab.tab-style-3 .tab-faqs .tab-style-2 {
        gap: 30px;
    }
}

@media (max-width: 1199px) and (max-width: 767px) {
    .flat-animate-tab.tab-style-3 .tab-faqs .menu-tab {
        display: flex;
        flex-wrap: nowrap;
        overflow: auto;
        min-width: unset;
        flex-direction: unset;
        max-width: 767px;
        width: 100%;
    }
}

/*------------ cart ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */

/*------------ Section ---------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.list-hor {
    display: flex;
    align-items: center;
    gap: 16px;
}

.list-ver {
    display: grid;
    gap: 16px;
}

.group-btn {
    display: flex;
    align-items: center;
}

.page-title-image {
    position: relative;
}

.page-title-image .heading {
    margin-bottom: 30px;
}

@media (min-width: 992px) {
    .page-title-image .heading {
        font-size: 48px;
    }
}

@media (min-width: 1200px) {
    .page-title-image .heading {
        margin-bottom: 40px;
    }
}

.page_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 20% center;
}

@media (max-width: 1439px) {
    .page_image {
        height: 650px;
    }
}

@media (max-width: 767px) {
    .page_image {
        height: 600px;
    }
}

@media (max-width: 575px) {
    .page_image {
        height: 475px;
    }
}

.page_content {
    position: absolute;
    top: 60px;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    display: flex;
    align-items: center;
}

.s-page-title {
    padding: 60px 0px;
    background-color: var(--bg-9);
}

.s-page-title .content {
    text-align: center;
}

.s-page-title .title-page {
    margin-bottom: 12px;
}

.s-page-title.has-bg {
    position: relative;
    background-color: unset;
}

.s-page-title.has-bg::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3019607843);
}

.s-page-title.style-2 {
    padding: 0;
}

.s-page-title.style-2 .content {
    padding-top: 16px;
    padding-bottom: 49px;
    text-align: left;
    border-top: 1px solid var(--line-8);
}

@media (min-width: 992px) {
    .s-page-title {
        padding: 80px 0px;
    }
}

@media (min-width: 1200px) {
    .s-page-title {
        padding-top: 111px;
        padding-bottom: 110px;
    }

    .s-page-title .title-page {
        line-height: 67px;
    }
}

.breadcrumbs-page {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.breadcrumbs-page .icon {
    font-size: 14px;
}

.wg-cls {
    display: flex;
    position: relative;
    height: 100%;
}

.wg-cls .image {
    height: 100%;
}

.wg-cls .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wg-cls .cls-content {
    padding: 12px 24px;
    border-radius: 999px;
    background-color: var(--white);
    display: flex;
    align-items: center;
    gap: 16px;
    position: absolute;
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
}

.wg-cls .br-line {
    background-color: var(--black);
    height: 24px;
}

.wg-cls.style-2 .cls-content {
    background-color: transparent;
    padding: 0;
}

@media (min-width: 992px) {
    .wg-cls.style-2 .cls-content {
        bottom: 32px;
    }
}

@media (min-width: 1200px) {
    .wg-cls .cls-content {
        gap: 24px;
    }

    .wg-cls.style-2 .cls-content {
        bottom: 49px;
    }
}

.wg-cls-2 {
    position: relative;
}

.wg-cls-2 .cls-content_wrap {
    position: absolute;
    bottom: 16px;
    left: 16px;
    right: 16px;
    display: flex;
    justify-content: center;
}

.wg-cls-2 .cls-content {
    padding: 12px 24px;
    border-radius: 999px;
    background-color: var(--white);
    display: flex;
    align-items: center;
    gap: 16px;
}

.wg-cls-2 .tag_cls {
    display: -webkit-box !important;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    word-break: normal;
    overflow-wrap: break-word;
}

.wg-cls-2 .br-line {
    background-color: var(--black);
    height: 24px;
}

@media (min-width: 1200px) {
    .wg-cls-2 .cls-content {
        gap: 24px;
    }

    .wg-cls-2 .cls-content_wrap {
        bottom: 24px;
    }

    .wg-cls-2 .cls-content_wrap.b-16 {
        bottom: 16px;
    }

    .wg-cls-2 .cls-content_wrap.b-xl-32 {
        bottom: 32px;
    }

    .wg-cls-2.type-space-2 .cls-content {
        padding: 16px 24px;
    }
}

@media (max-width: 991px) {
    .wg-cls-2.type-space-2 .cls-content_wrap {
        bottom: 8px;
        left: 8px;
        right: 8px;
    }

    .wg-cls-2.type-space-2 .tag_cls {
        font-size: 20px;
    }
}

.sect-title {
    margin-bottom: 40px;
    gap: 15px;
}

.sect-title.type-2 {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.sect-title.type-3 {
    margin-bottom: 32px;
    padding-bottom: 32px;
    border-bottom: 1px solid var(--line);
}

.sect-title.type-4 {
    margin-bottom: 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.sect-title .title {
    color: var(--black);
    font-weight: 500;
}

@media (min-width: 1200px) {
    .sect-title {
        margin-bottom: 56px;
    }
}

@media (max-width: 575px) {
    .sect-title.type-2 {
        flex-wrap: wrap;
    }
}

.s-title {
    color: var(--black);
}

.box-image_image {
    display: inline-flex;
    width: 100%;
}

.box-image_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.box-image_content {
    position: absolute;
    display: flex;
    align-items: start;
    flex-direction: column;
}

.box-image_V01 {
    position: relative;
    display: flex;
}

.box-image_V01 .title {
    margin-bottom: 4px;
}

.box-image_V01 .sub-title {
    margin-bottom: 32px;
}

.box-image_V01 .box-image_content {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.box-image_V01.type-2 {
    border-radius: 16px;
    overflow: hidden;
    margin-bottom: 30px;
}

.box-image_V01.type-2 .box-image_image img {
    max-height: 400px;
}

.box-image_V01.type-2 .box-image_content {
    top: 40%;
    left: 16px;
    right: 16px;
    transform: unset;
    text-align: center;
    align-items: center;
}

.box-image_V01.type-2 .title {
    margin-bottom: 0;
}

.box-image_V01.type-3 {
    margin-bottom: 0;
}

.box-image_V01.type-3 .box-image_image img {
    min-height: 400px;
}

.box-image_V01.type-3 .sub-title,
.box-image_V01.type-3 .desc {
    margin-bottom: 24px;
}

.box-image_V01.type-3 .title {
    margin-bottom: 8px;
}

.box-image_V01.type-3 .box-image_content {
    left: 16px;
    transform: translateY(-50%);
    align-items: start;
}

.box-image_V01.type-4 {
    border-radius: 16px;
    overflow: hidden;
}

.box-image_V01.type-4 .box-image_content {
    left: 16px;
    right: 16px;
    transform: translateY(-50%);
}

@media (min-width: 1200px) {
    .box-image_V01.type-3 .box-image_content {
        left: 32px;
    }
}

@media (min-width: 992px) {
    .box-image_V01.type-2 {
        height: 100%;
    }

    .box-image_V01.type-2 .box-image_image img {
        max-height: unset;
        height: 100%;
    }
}

@media (max-width: 1199px) {
    .box-image_V01 {
        margin-bottom: 30px;
    }

    .box-image_V01 .box-image_image img {
        max-height: 350px;
    }

    .box-image_V01 .box-image_content {
        align-items: center;
    }

    .box-image_V01.type-3::after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 0;
        background: linear-gradient(-90deg, rgba(255, 255, 255, 0) 24.38%, #FFFfff 69.3%);
    }

    .box-image_V01.type-3 .box-image_content {
        z-index: 1;
    }
}

@media (max-width: 767px) {
    .box-image_V01 {
        margin-bottom: 12px;
    }
}

.box-image_V02 {
    position: relative;
    display: flex;
}

.box-image_V02 .sub-text {
    margin-bottom: 16px;
}

.box-image_V02 .title {
    margin-bottom: 32px;
}

.box-image_V02 .box-image_content {
    bottom: 30px;
    left: 30px;
}

.box-image_V02 .box-image_image img {
    min-height: 400px;
}

.box-image_V02.type-space-2 .title {
    margin-bottom: 4px;
}

.box-image_V02.type-space-2 .sub-text {
    margin-bottom: 24px;
}

.box-image_V02.type-space-3 .sub-text {
    margin-bottom: 5px;
}

.box-image_V02.type-space-3 .title {
    margin-bottom: 32px;
}

.box-image_V02.type-space-4 .box-image_content {
    bottom: 24px;
    left: 24px;
}

.box-image_V02.type-space-6 .title {
    margin-bottom: 12px;
}

.box-image_V02.type-space-6 .desc {
    margin-bottom: 30px;
}

@media (min-width: 1200px) {
    .box-image_V02.type-space-3 .box-image_content {
        bottom: 32px;
        left: 32px;
    }

    .box-image_V02 .box-image_content {
        bottom: 48px;
        left: 48px;
    }

    .box-image_V02.type-space-5 .box-image_content {
        bottom: 32px;
        left: 32px;
    }

    .box-image_V02.type-space-6 .desc {
        margin-bottom: 40px;
    }
}

.box-image_V03 {
    position: relative;
    display: flex;
}

.box-image_V03 .sub-text {
    margin-bottom: 12px;
}

.box-image_V03 .title {
    margin-bottom: 24px;
}

.box-image_V03 .box-image_content {
    bottom: 16px;
    left: 30px;
    right: 30px;
}

@media (min-width: 1200px) {
    .box-image_V03 .box-image_content {
        bottom: 32px;
        right: 46px;
        left: 46px;
    }
}

.box-image_V04 {
    position: relative;
    display: flex;
}

.box-image_V04 .box-image_content {
    top: 30px;
    left: 15px;
    right: 15px;
}

.box-image_V04 img {
    min-height: 350px;
}

.box-image_V04 .sub-text {
    margin-bottom: 24px;
}

.box-image_V04 .title {
    margin-bottom: 8px;
}

.box-image_V04 .sub-title {
    margin-bottom: 24px;
}

@media (min-width: 768px) {
    .box-image_V04 .box-image_content {
        left: 30px;
        right: 30px;
    }
}

@media (min-width: 1200px) {
    .box-image_V04 .box-image_content {
        top: 50px;
        left: 50%;
        transform: translateX(-50%);
        right: unset;
    }
}

@media (min-width: 1440px) {
    .box-image_V04 .box-image_content {
        top: 88px;
    }
}

.box-image_V05 {
    position: relative;
    display: flex;
}

.box-image_V05 .box-image_content {
    bottom: 32px;
    left: 32px;
}

.box-image_V05 .box-image_image img {
    min-height: 250px;
}

.box-image_V05 .sub-title {
    margin-bottom: 4px;
}

.box-image_V05 .title {
    margin-bottom: 16px;
}

.box-image_V05.type-space-2 .box-image_content {
    bottom: 24px;
    left: 24px;
}

.box-image_V05.type-space-2 .box-image_image img {
    min-height: unset;
}

@media (max-width: 767px) {
    .box-image_V05 .box-image_content {
        bottom: 30px;
        left: 15px;
    }
}

.box-image_V06 {
    position: relative;
    display: flex;
    border-radius: 16px;
    overflow: hidden;
}

.box-image_V06 .box-image_content {
    top: 49px;
    left: 16px;
    bottom: 16px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.box-image_V06 .sub-title {
    margin-bottom: 4px;
}

.box-image_V06 .title {
    margin-bottom: 8px;
}

.box-image_V06 .product-badge_list {
    left: 16px;
    top: 16px;
}

.box-image_V06 .product-badge_item {
    border-radius: 99px;
}

.box-image_V06 .box-image_image img {
    min-height: 242px;
}

.box-image_V06.has-overlay::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(-90deg, rgba(241, 242, 244, 0) 38.38%, #F1F2F4 66.3%);
}

.box-image_V06.has-overlay .box-image_image {
    z-index: 0;
}

.box-image_V06.has-overlay .box-image_content,
.box-image_V06.has-overlay .product-badge_list {
    z-index: 2;
}

.box-image_V06.has-overlay.overlay-2::after {
    background: linear-gradient(-90deg, rgba(59, 29, 10, 0) 32.95%, #3B1D0A 80.78%);
}

.box-image_V06.has-overlay.overlay-3::after {
    background: linear-gradient(270deg, rgba(6, 6, 11, 0) 37.83%, #06060B 80.14%);
}

.box-image_V06.has-overlay.overlay-4::after {
    background: linear-gradient(270deg, rgba(14, 18, 38, 0) 37.83%, #0E1226 80.14%);
}

.box-image_V06.has-overlay.overlay-5::after {
    background: linear-gradient(270deg, rgba(103, 107, 114, 0) 37.83%, #676B72 80.14%);
}

.box-image_V06.has-overlay.overlay-6::after {
    background: linear-gradient(270deg, rgba(68, 82, 95, 0) 37.83%, #44525F 80.14%);
}

.box-image_V06.type-space-2 .box-image_content {
    top: unset;
}

.box-image_V06.type-space-2 .title {
    margin-bottom: 16px;
}

.box-image_V06.type-space-3 .box-image_content {
    top: unset;
}

.box-image_V06.type-space-3 .sub-title {
    margin-bottom: 8px;
}

.box-image_V06.type-space-3 .title {
    margin-bottom: 20px;
}

.box-image_V06.type-space-3.pst-center-y .box-image_content {
    top: 16px;
    bottom: 16px;
    justify-content: center;
}

.box-image_V06.type-space-4 .box-image_content {
    top: unset;
}

.box-image_V06.type-space-4 .price-wrap {
    margin-bottom: 22px;
}

@media (min-width: 1200px) {
    .box-image_V06 .box-image_content {
        left: 24px;
        bottom: 24px;
    }

    .box-image_V06 .product-badge_list {
        top: 24px;
        left: 24px;
    }
}

.box-image_v07 {
    position: relative;
    border-radius: 24px;
    overflow: hidden;
}

.box-image_v07 .box-image_image {
    height: 100%;
}

.box-image_v07 .box-image_image img {
    width: 100%;
    height: 100%;
    min-height: 700px;
    object-fit: cover;
}

.box-image_v07 .box-image_content {
    bottom: 20px;
    right: 16px;
    left: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
}

.box-image_v07 .promo,
.box-image_v07 .desc {
    margin-bottom: 24px;
}

.box-image_v07 .title {
    margin-bottom: 8px;
}

@media (min-width: 992px) {
    .box-image_v07 .box-image_content {
        bottom: 32px;
    }
}

@media (min-width: 1200px) {
    .box-image_v07 .box-image_content {
        bottom: 56px;
    }
}

.box-image_V08 {
    display: flex;
    position: relative;
}

.box-image_V08 .box-image_content {
    bottom: 32px;
    right: 16px;
    left: 16px;
}

.box-image_V08 .title {
    margin-bottom: 9px;
}

.box-image_V08 .flat-off {
    padding: 3px 31px;
    position: relative;
}

.box-image_V08 .flat-off::before {
    content: "";
    inset: 0;
    z-index: 0;
    position: absolute;
    border-left: 2px solid var(--white);
    border-right: 2px solid var(--white);
}

.box-image_V08 .flat-off::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 55px;
    z-index: 0;
    border-top: 2px solid var(--white);
    border-bottom: 2px solid var(--white);
}

.box-image_V08 .flat-off>.line-break::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 55px;
    z-index: 0;
    border-top: 2px solid var(--white);
    border-bottom: 2px solid var(--white);
}

.box-image_V08 .text-off {
    line-height: 100%;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 11px;
}

.box-image_V08 .text-off span {
    font-size: clamp(36px, 6vw, 64px);
    line-height: clamp(36px, 6vw, 64px);
}

.box-image_category {
    position: relative;
    display: flex;
}

.box-image_category .box-image_content {
    bottom: 15px;
    right: 14px;
    left: 14px;
    align-items: center;
}

@media (min-width: 576px) {
    .box-image_category .tf-btn {
        min-width: 180px;
    }

    .box-image_category.style-2 .box-image_content {
        bottom: 18px;
    }

    .box-image_category.style-2 .tf-btn {
        min-width: unset;
        padding: 10.5px 24px;
    }
}

@media (min-width: 1200px) {
    .box-image_category .box-image_content {
        bottom: 24px;
    }
}

@media (max-width: 575px) {
    .box-image_category.style-2 .box-image_image img {
        min-height: 200px;
    }

    .box-image_category.style-2 .box-image_content {
        bottom: 8px;
        left: 8px;
        right: 8px;
    }

    .box-image_category.style-2 .tf-btn {
        width: 100%;
        font-size: 16px;
        line-height: 20px;
        padding-top: 8px;
        padding-bottom: 8px;
    }
}

.tf-countdown.style-1 .countdown__timer {
    display: flex;
    gap: 8px;
}

.tf-countdown.style-1 .countdown__item {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    border-radius: 50%;
    border: 1px solid var(--line);
}

.tf-countdown.style-1 .countdown__item .countdown__value {
    font-weight: 500;
    font-size: 24px;
    line-height: 32px;
    color: var(--primary);
    margin-bottom: -4px;
}

.tf-countdown.style-1 .countdown__item .countdown__label {
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: rgba(0, 0, 0, 0.5);
}

.banner-V01 .banner_img {
    margin-bottom: 30px;
}

.banner-V01 img {
    min-height: 350px;
}

.banner-V01 .sub-title {
    margin-bottom: 12px;
}

.banner-V01 .title {
    margin-bottom: 12px;
}

.banner-V01 .sub-text {
    margin-bottom: 24px;
}

@media (min-width: 1200px) {
    .banner-V01 .sub-text {
        margin-bottom: 40px;
    }
}

.banner-V02 {
    position: relative;
    overflow: hidden;
}

.banner-V02 .banner_img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.banner-V02 .banner_img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.banner-V02 .banner_content {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    flex-wrap: wrap;
    z-index: 2;
    padding: 50px 48px;
}

.banner-V02 .title {
    margin-bottom: 8px;
}

.banner-V02 .group-btn {
    gap: 16px;
    flex-wrap: wrap;
}

@media (max-width: 991px) {
    .banner-V02 .banner_img {
        filter: blur(3px);
    }

    .banner-V02 .banner_content {
        padding: 60px 15px;
    }
}

.banner-V03 {
    position: relative;
    overflow: visible;
    padding-top: 174px;
    padding-bottom: 201px;
}

.banner-V03 .banner_img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.banner-V03 .banner_img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.banner-V03 .banner_content {
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: center;
    width: 100%;
}

.banner-V03 .sub-title {
    margin-bottom: 24px;
}

.banner-V03 .title {
    margin-bottom: 8px;
}

.banner-V03 .sub-text {
    margin-bottom: 30px;
}

@media (min-width: 1200px) {
    .banner-V03 .sub-text {
        margin-bottom: 40px;
    }

    .banner-V03 .tf-btn {
        min-width: 248px;
    }
}

@media (min-width: 1440px) {
    .banner-V03 .banner_content {
        bottom: 25px;
    }

    .banner-V03 .sub-text {
        margin-bottom: 56px;
    }
}

@media (max-width: 991px) {
    .banner-V03 .banner_img {
        filter: blur(3px);
    }
}

@media (max-width: 1024px) {
    .banner-V03 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
}

@media (max-width: 767px) {
    .banner-V03 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}

.banner-V04 .icv__arrow-wrapper {
    display: none;
}

.banner-V04 .icv__circle {
    width: 40px;
    height: 40px;
    background-color: var(--white);
    position: relative;
    border-color: transparent !important;
}

.banner-V04 .icv__circle::after {
    position: absolute;
    content: "";
    display: block;
    width: 40px;
    height: 40px;
    border-radius: 999px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: var(--white);
}

.banner-V04 .icv__circle::before {
    position: absolute;
    font-family: "icomoon";
    content: "\e921";
    top: 50%;
    left: 50%;
    z-index: 1;
    transform: translate(-50%, -50%);
    font-size: 20px;
    color: var(--black);
}

.banner-V04 .icv__label {
    padding: 8px 32px;
    color: var(--white);
    border-radius: 999px;
    background-color: var(--black);
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
    text-transform: uppercase;
    bottom: 24px;
}

.banner-V04 .icv__label-before {
    left: 24px;
}

.banner-V04 .icv__label-after {
    right: 24px;
}

@media (max-width: 767px) {
    .banner-V04 .icv__label {
        padding: 6px 20px;
        font-size: 14px;
        line-height: 22px;
        bottom: 12px;
    }

    .banner-V04 .icv__label-before {
        left: 12px;
    }

    .banner-V04 .icv__label-after {
        right: 12px;
    }

    .banner-V04 .icv__circle::after {
        width: 35px;
        height: 35px;
    }
}

.banner-V05 .wg-curve-text,
.banner-V05 .sub-text {
    margin-bottom: 30px;
}

.banner-V05 .title {
    margin-bottom: 8px;
}

.banner-V05 .sub-title {
    margin-bottom: 24px;
}

.banner-V05 .banner_content {
    background-color: var(--white);
    padding: 30px 15px;
}

@media (min-width: 1200px) {
    .banner-V05 .banner_content {
        padding: 56px;
    }

    .banner-V05 .wg-curve-text,
    .banner-V05 .sub-text {
        margin-bottom: 56px;
    }
}

.banner-V06 {
    padding-top: 250px;
    padding-bottom: 251px;
}

.banner-V06 .banner_content {
    text-align: center;
}

.banner-V06 .title {
    margin-bottom: 12px;
}

.banner-V06 .sub-title {
    margin-bottom: 40px;
}

@media (max-width: 1199px) {
    .banner-V06 {
        padding-top: 150px;
        padding-bottom: 150px;
    }
}

@media (max-width: 767px) {
    .banner-V06 {
        padding-top: 100px;
        padding-bottom: 100px;
    }
}

.banner-V07 .sub-title {
    margin-bottom: 32px;
}

.banner-V07 .title {
    margin-bottom: 32px;
}

.banner-V07 .desc {
    margin-bottom: 40px;
}

.banner-V07 .image-right {
    position: relative;
    padding-bottom: 126px;
    padding-left: 126px;
    margin-bottom: 30px;
}

.banner-V07 .image {
    overflow: hidden;
}

.banner-V07 .image.img-1 {
    max-width: 620px;
    margin: 0 auto;
}

.banner-V07 .image.img-2 {
    margin-top: 100px;
    margin-right: 100px;
    max-width: 448px;
    position: absolute;
    bottom: 0;
    left: 0;
}

@media (max-width: 1199px) {
    .banner-V07 .sub-title {
        margin-bottom: 24px;
    }

    .banner-V07 .title {
        margin-bottom: 24px;
    }

    .banner-V07 .desc {
        margin-bottom: 30px;
    }
}

.wg-curve-text {
    display: flex;
    justify-content: center;
    position: relative;
}

.wg-curve-text .icon {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    position: absolute;
}

.text-rotate {
    display: flex;
    justify-content: center;
    align-items: center;
    height: max-content;
    width: max-content;
    margin: 0;
    background-color: transparent;
    animation: rotate 10s linear infinite;
}

.text-rotate .circle {
    width: 174px;
    height: 174px;
    border-radius: 50%;
    position: relative;
}

.text-rotate span {
    font-weight: 700;
    font-size: 16px;
    line-height: 24px;
    position: absolute;
    top: 0;
    left: 50%;
    transform-origin: 0 87px;
    color: var(--black);
}

.banner-lookbook {
    position: relative;
    z-index: 2;
}

.banner-lookbook .img-banner {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.banner-lookbook .lookbook-item {
    position: absolute;
}

.banner-lookbook .position1 {
    top: 32%;
    left: 48%;
}

.banner-lookbook .position2 {
    top: 60%;
    left: 56%;
}

.banner-lookbook .position3 {
    top: 24%;
    left: 76%;
}

.banner-lookbook .position4 {
    top: 57%;
    left: 61%;
}

.banner-lookbook .position5 {
    top: 23%;
    left: 80%;
}

.banner-lookbook .position6 {
    top: 67%;
    left: 66%;
}

.banner-lookbook .position7 {
    top: 43%;
    left: 64%;
}

.banner-lookbook .position8 {
    top: 72%;
    left: 24%;
}

.banner-lookbook .position9 {
    top: 83%;
    left: 81%;
}

.banner-lookbook .dropdown-menu {
    border: 0;
    border-radius: 0px;
    background-color: transparent;
    margin: 0px 22px !important;
}

.banner-lookbook .dropdown.dropup .dropdown-menu {
    margin: 15px -25px !important;
}

.banner-lookbook .dropdown.dropup .dropdown-menu::after {
    display: none;
}

@media (min-width: 992px) {
    .banner-lookbook .lookbook-product {
        margin: -82px 0px;
    }
}

@media (min-width: 1600px) {
    .banner-lookbook .dropdown.dropstart .dropdown-menu::after {
        content: "";
        position: absolute;
        right: -7px;
        top: 50%;
        transform: translateY(-50%);
        width: 0;
        height: 0;
        border-top: 10px solid transparent;
        border-left: 8px solid var(--white);
        border-bottom: 10px solid transparent;
    }

    .banner-lookbook .dropdown.dropend .dropdown-menu::after {
        content: "";
        position: absolute;
        left: -7px !important;
        right: unset !important;
        top: 50%;
        transform: translateY(-50%);
        width: 0;
        height: 0;
        border-top: 10px solid transparent;
        border-right: 8px solid var(--white) !important;
        border-bottom: 10px solid transparent;
        border-left: unset !important;
    }
}

@media (max-width: 991px) {
    .banner-lookbook {
        height: 600px;
    }
}

.lookbook-product {
    padding: 16px;
    min-width: 368px;
    display: flex;
    align-items: center;
    background-color: var(--white);
}

.lookbook-product .tag {
    margin-bottom: 4px;
}

.lookbook-product .name-prd {
    margin-bottom: 8px;
}

.lookbook-product .image {
    max-width: 158px;
}

.lookbook-product .image img {
    aspect-ratio: 1;
    object-fit: cover;
}

@media (max-width: 767px) {
    .lookbook-product {
        min-width: max-content;
        gap: 10px;
    }

    .lookbook-product .image {
        max-width: 80px;
    }
}

@media (max-width: 575px) {
    .lookbook-product {
        min-width: 250px;
    }
}

.count-down_v01 .countdown__timer {
    display: flex;
    gap: 15px;
}

.count-down_v01 .countdown__item {
    display: flex;
    justify-content: center;
    flex-direction: column;
    text-align: center;
}

.count-down_v01 .countdown__value {
    font-weight: 400;
    font-size: clamp(48px, 6vw, 80px);
    line-height: clamp(64px, 8vw, 107px);
    color: var(--black);
}

.count-down_v01 .countdown__label {
    font-weight: 400;
    font-size: 24px;
    line-height: 34px;
    color: var(--black);
}

.count-down_v01 .countdown__custom--element {
    width: 4px;
    position: relative;
}

.count-down_v01 .countdown__custom--css {
    height: 16px;
    display: block;
    position: absolute;
    bottom: 50%;
    transform: translateY(calc(50% - 17px));
}

.count-down_v01 .countdown__custom--css::after,
.count-down_v01 .countdown__custom--css::before {
    content: "";
    position: absolute;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: var(--black);
}

.count-down_v01 .countdown__custom--css::after {
    top: 0;
}

.count-down_v01 .countdown__custom--css::before {
    bottom: 0;
}

@media (min-width: 1200px) {
    .count-down_v01 .countdown__timer {
        gap: 33px;
    }

    .count-down_v01 .countdown__custom--element {
        width: 6px;
    }

    .count-down_v01 .countdown__custom--css {
        height: 22px;
    }

    .count-down_v01 .countdown__custom--css::after,
    .count-down_v01 .countdown__custom--css::before {
        width: 6px;
        height: 6px;
    }
}

@media (max-width: 575px) {
    .count-down_v01 .countdown__timer {
        gap: 8px;
    }
}

.count-down_v02 .countdown__timer {
    display: flex;
    gap: 8px;
}

.count-down_v02 .countdown__item {
    display: flex;
    flex-direction: column;
    text-align: center;
    padding: 8px;
    border-radius: 16px;
    background-color: var(--primary);
    color: var(--white);
    min-width: 64px;
}

.count-down_v02 .countdown__value {
    font-weight: 500;
    font-size: 24px;
    line-height: 32px;
}

.count-down_v02 .countdown__label {
    font-size: 14px;
    line-height: 20px;
}

.count-down_v02.style-2 .countdown__item {
    background-color: var(--bg-4);
}

.count-down_v02.style-2 .countdown__label {
    color: rgba(255, 255, 255, 0.5019607843);
}

@media (max-width: 575px) {
    .count-down_v02.style-2 .countdown__timer {
        gap: 5px;
    }

    .count-down_v02.style-2 .countdown__item {
        min-width: unset;
        padding: 4px;
        border-radius: 8px;
    }

    .count-down_v02.style-2 .countdown__value {
        font-size: 20px;
        line-height: 26px;
    }

    .count-down_v02.style-2 .countdown__label {
        font-size: 12px;
        line-height: 18px;
    }
}

.count-down_v02.style-3 .countdown__item {
    border-radius: 50%;
    background-color: #685BC7;
    min-width: 56px;
}

.count-down_v02.style-3 .countdown__value {
    font-size: 20px;
    line-height: 27px;
    margin-bottom: -7px;
}

.count-down_v02.rounded-0 .countdown__item {
    border-radius: 0px !important;
}

@media (min-width: 1200px) {
    .count-down_v02 .countdown__value {
        margin-bottom: -4px;
    }
}

.banner-cd_v01 {
    display: flex;
    flex-wrap: wrap-reverse;
    position: relative;
}

.banner-cd_v01>* {
    width: 100%;
}

.banner-cd_v01 .banner_content {
    background-color: var(--bg-8);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    padding: 60px 15px;
}

.banner-cd_v01 .banner_img {
    overflow: hidden;
}

.banner-cd_v01 .banner_img img {
    width: 100%;
    height: 100%;
    min-height: 350px;
    object-fit: cover;
    animation: tf-animate-zoom-in-out 30s linear infinite;
}

.banner-cd_v01 .title {
    margin-bottom: 8px;
}

.banner-cd_v01 .count-down_v01,
.banner-cd_v01 .sub-title {
    margin-bottom: 30px;
}

.banner-cd_v01 .img-item {
    position: absolute;
}

.banner-cd_v01 .img-item.item-1 {
    max-width: 496px;
    left: 32px;
}

.banner-cd_v01 .img-item.item-2 {
    max-width: 429px;
    right: 32px;
}

.banner-cd_v01.style-2 {
    background-color: var(--bg-8);
}

.banner-cd_v01.style-2 .banner_content {
    padding-top: 138px;
    padding-bottom: 138px;
    background-color: transparent;
    position: relative;
    z-index: 2;
    width: 100%;
}

.banner-cd_v01.style-3 {
    background: transparent;
    padding: 92px 0px;
    position: relative;
}

.banner-cd_v01.style-3 .banner_content {
    background-color: transparent;
}

.banner-cd_v01.style-3 .banner_img img {
    animation: unset;
}

.banner-cd_v01.style-3 .img-item_bg {
    position: absolute;
    inset: 0;
    display: flex;
}

.banner-cd_v01.style-3 .img-item_bg img {
    width: 100%;
}

.banner-cd_v01.style-3 .img-item_leaves {
    position: absolute;
}

.banner-cd_v01.style-3 .img-item_leaves.item-1 {
    top: -3%;
    left: 26%;
}

.banner-cd_v01.style-3 .img-item_leaves.item-2 {
    bottom: -2%;
    left: 30%;
}

.banner-cd_v01.style-3 .img-item_leaves.item-3 {
    bottom: -7%;
    left: 55%;
}

.banner-cd_v01.style-3 .img-item_leaves.item-4 {
    bottom: 4%;
    right: 18%;
}

.banner-cd_v01.style-3 .img-item_leaves.item-5 {
    top: -6%;
    right: 11%;
}

.banner-cd_v01.style-3 .img-item_leaves {
    position: relative;
}

.banner-cd_v01.style-3 .img-item_leaves.item-1,
.banner-cd_v01.style-3 .img-item_leaves.item-2,
.banner-cd_v01.style-3 .img-item_leaves.item-3,
.banner-cd_v01.style-3 .img-item_leaves.item-4,
.banner-cd_v01.style-3 .img-item_leaves.item-5 {
    position: absolute;
    animation-fill-mode: both;
    animation-timing-function: ease-in-out;
    transform-origin: center center;
}

.banner-cd_v01.style-3 .img-item_leaves.item-1 {
    animation: float1 3s ease-in-out infinite;
}

.banner-cd_v01.style-3 .img-item_leaves.item-2 {
    animation: float2 4s ease-in-out infinite;
}

.banner-cd_v01.style-3 .img-item_leaves.item-3 {
    animation: float3 2.5s ease-in-out infinite;
}

.banner-cd_v01.style-3 .img-item_leaves.item-4 {
    animation: float4 5s ease-in-out infinite;
}

.banner-cd_v01.style-3 .img-item_leaves.item-5 {
    animation: float5 3.5s ease-in-out infinite;
}

.banner-cd_v01.style-3>* {
    width: 100%;
}

@media (min-width: 768px) {
    .banner-cd_v01>* {
        width: 50%;
    }
}

@media (min-width: 1200px) {
    .banner-cd_v01 .img-item {
        top: 50%;
        transform: translateY(-50%);
    }

    .banner-cd_v01 .count-down_v01,
    .banner-cd_v01 .sub-title {
        margin-bottom: 40px;
    }
}

@media (min-width: 1440px) {

    .banner-cd_v01 .count-down_v01,
    .banner-cd_v01 .sub-title {
        margin-bottom: 56px;
    }
}

@media (max-width: 1599px) {
    .banner-cd_v01 .img-item.item-1 {
        max-width: 350px;
        left: 15px;
    }

    .banner-cd_v01 .img-item.item-2 {
        max-width: 350px;
        right: 15px;
    }
}

@media (max-width: 1439px) {

    .banner-cd_v01 .img-item.item-1,
    .banner-cd_v01 .img-item.item-2 {
        max-width: 250px;
    }
}

@media (max-width: 1199px) {
    .banner-cd_v01 .img-item.item-1 {
        max-width: 200px;
        top: 8px;
        left: 8px;
    }

    .banner-cd_v01 .img-item.item-2 {
        max-width: 200px;
        bottom: 8px;
        right: 8px;
    }

    .banner-cd_v01.style-3 .img-item_leaves {
        display: flex;
    }

    .banner-cd_v01.style-3 .img-item_leaves img {
        width: 70%;
    }
}

@media (max-width: 1024px) {
    .banner-cd_v01.style-2 .banner_content {
        padding-top: 80px;
        padding-bottom: 80px;
    }
}

@media (max-width: 767px) {

    .banner-cd_v01 .img-item.item-1,
    .banner-cd_v01 .img-item.item-2 {
        max-width: 120px;
    }

    .banner-cd_v01.style-2 .banner_content {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}

.banner-cd_v02 {
    padding: 23px;
    border: 1px dashed var(--primary);
    border-radius: 12px;
    background-color: var(--bg-10);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px 24px;
    flex-wrap: wrap;
}

.banner-cd_v02 .banner_title {
    display: flex;
    align-items: center;
    gap: 8px;
}

@media (max-width: 575px) {
    .banner-cd_v02 {
        padding: 20px 8px;
    }
}

.gallery-item {
    position: relative;
    overflow: hidden;
    display: flex;
}

.gallery-item .box-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: var(--white);
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--black);
    font-size: 16px;
}

.gallery-item .box-icon:hover {
    background-color: var(--black);
    color: var(--white);
}

.gallery-item.style-2 .image img {
    aspect-ratio: 1.0549450549;
}

@media (min-width: 992px) {
    .gallery-item .box-icon {
        opacity: 0;
        visibility: hidden;
    }

    .gallery-item:hover .box-icon {
        opacity: 1;
        visibility: visible;
    }
}

@media (min-width: 1200px) {
    .gallery-item .box-icon {
        width: 56px;
        height: 56px;
        font-size: 24px;
    }
}

.rate_wrap {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
}

.author-verified {
    font-size: 20px;
    color: var(--verified);
}

.widget-collection {
    display: grid;
    gap: 24px;
}

.widget-collection.style-circle .collection_image {
    border-radius: 50%;
}

.widget-collection .collection_image {
    border-radius: 32px;
}

.widget-collection .collection_name {
    text-align: center;
}

.widget-collection .collection_content {
    display: grid;
    text-align: center;
    gap: 4px;
}

.widget-collection .collection_count {
    color: var(--text);
}

.widget-collection.type-space-2 {
    gap: 16px;
}

.widget-collection.style-2 {
    border-radius: 16px;
    overflow: hidden;
    border: 1px dashed #499F30;
    padding: 27px 12px 23px;
}

.widget-collection.style-2 .collection_image {
    max-width: 126px;
    margin: 0 auto;
}

.widget-collection.style-2.type-line_color_2 {
    border-color: #EE7F00;
}

.widget-collection.style-2.type-line_color_3 {
    border-color: #95C532;
}

.widget-collection.style-2.type-line_color_4 {
    border-color: #F44500;
}

.widget-collection.style-2.type-line_color_5 {
    border-color: #FED049;
}

.widget-collection.style-2.type-line_color_6 {
    border-color: #FED049;
}

.nav-shop-by {
    display: flex;
    flex-direction: column;
    border-radius: 16px;
    overflow: hidden;
    background-color: var(--white);
    box-shadow: 0px 3px 16px 0px rgba(0, 0, 0, 0.0588235294);
}

.nav-shop-by li:not(:first-child):not(:last-child) {
    border-bottom: 1px solid var(--line);
}

.nav-shop-by li:not(:first-child):not(:last-child) .nav-shop_link {
    padding-bottom: 16px;
}

.nav-shop_link {
    padding: 16px 20px;
    display: flex;
    gap: 16px;
    align-items: center;
}

.nav-shop_link .icon {
    font-size: 22px;
}

.nav-shop_link .icon2 {
    font-size: 14px;
}

.nav-shop_link .text {
    flex: 1;
}

.nav-shop_link.nav-shop_title {
    background-color: var(--bg-4);
    color: var(--white);
}

.s-collection {
    padding: 15px 15px 0px;
}

.s-collection.type-2 {
    padding: 16px 16px 0px;
}

@media (min-width: 1200px) {
    .s-collection {
        padding: 24px 24px 0px;
    }
}

.tab-product_list {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
}

@media (max-width: 575px) {
    .tab-product_list {
        gap: 12px;
    }
}

@media (min-width: 1025px) {
    .sect-lookbook {
        display: flex;
    }

    .sect-lookbook>* {
        width: 50%;
    }
}

.banner-product-set {
    background-color: var(--bg-8);
    padding: 60px 15px;
}

.banner-product-set .banner_content {
    display: flex;
    align-items: start;
    justify-content: center;
    height: 100%;
    flex-direction: column;
}

.banner-product-set .product-badge_item,
.banner-product-set .total-price {
    margin-bottom: 16px;
}

.banner-product-set .list-ver {
    gap: 21px;
    margin-bottom: 32px;
}

.banner-product-set .set_title {
    margin-bottom: 8px;
}

.banner-product-set.style-2 {
    border-radius: 21px;
}

.banner-product-set.style-2 .banner_content {
    margin: 0 auto;
}

.banner-product-set.style-2 .product-badge_item {
    border-radius: 6px;
}

@media (min-width: 1025px) {
    .banner-product-set {
        padding: 60px 30px;
    }
}

@media (min-width: 1200px) {
    .banner-product-set .banner_content {
        max-width: 646px;
        width: 100%;
    }
}

@media (min-width: 1440px) {
    .banner-product-set {
        padding: 60px 72px;
    }
}

@media (max-width: 1024px) {
    .banner-product-set .list-ver {
        display: flex;
        gap: 12px;
    }

    .banner-product-set .list-ver .br-line {
        display: none;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .banner-product-set {
        padding: 80px 15px;
    }
}

.box-icon_V01 {
    text-align: center;
    position: relative;
}

.box-icon_V01 .icon {
    font-size: 45px;
    color: var(--black);
    margin-bottom: 24px;
    display: inline-flex;
    transition-duration: 0.5s;
}

.box-icon_V01::after {
    content: "";
    position: absolute;
    right: -48px;
    top: 50%;
    transform: translateY(-50%);
    height: 102px;
    width: 1px;
    background-color: var(--line);
}

.box-icon_V01 .title {
    margin-bottom: 4px;
}

.box-icon_V01:hover .icon {
    transform: scale(1.1);
    transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}

.box-icon_V01.style-2 {
    padding-top: 32px;
    padding-bottom: 32px;
    background-color: #F9F7F5;
}

.box-icon_V01.style-2::after {
    content: none;
}

@media (min-width: 992px) {
    .box-icon_V01 .icon {
        font-size: 56px;
    }
}

@media (max-width: 1199px) {
    .box-icon_V01::after {
        right: -16px;
    }
}

@media (max-width: 767px) {
    .box-icon_V01::after {
        right: -6px;
    }
}

.s-category {
    padding-left: 12px;
    padding-right: 12px;
}

.tf-marquee {
    display: grid;
    gap: 11px;
    padding-top: 65px;
}

.tf-marquee .marquee-wrap {
    display: flex;
    align-items: center;
    gap: 56px;
}

.tf-marquee .text-display {
    line-height: clamp(58px, 7vw, 87px);
}

.tf-marquee.style-2 {
    margin: 0;
    padding: 24px 0px;
    color: var(--black);
}

.tf-marquee.style-2 .icon {
    font-size: 24px;
}

.tf-marquee.style-3 {
    margin: 0;
    padding: 12px 0px;
}

.tf-marquee.style-4 {
    margin: 0;
    padding: 8px 0px;
}

.tf-marquee.style-5 {
    margin: 0;
    padding: 16px 0px;
}

@media (max-width: 1199px) {
    .tf-marquee .text-display {
        line-height: 120%;
    }
}

@media (max-width: 767px) {
    .tf-marquee {
        padding-top: 60px;
    }
}

.text-clip {
    color: white;
    -webkit-text-stroke: 1px black;
}

.card-collection {
    display: grid;
    gap: 24px;
    margin-top: 60px;
}

.card-collection .name-cls {
    margin-bottom: 4px;
}

.card-collection .count-cls {
    margin-bottom: 24px;
}

@media (min-width: 1200px) {
    .card-collection .collection_contnet {
        padding-left: 24px;
    }
}

@media (max-width: 991px) {
    .s-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        max-height: 400px;
    }
}

.video-wrap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.video-wrap img {
    object-fit: cover;
    width: 100%;
}

.video-wrap .popup-youtube {
    position: absolute;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    z-index: 2;
}

.tf-variant-dropdown {
    position: relative;
    border-radius: 99px;
    padding: 12px 21px;
    min-width: 100px;
    border: 1px solid var(--line);
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-variant-dropdown .btn-select {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.tf-variant-dropdown .btn-select .icon {
    font-size: 16px;
}

.tf-variant-dropdown .text-sort-value {
    text-wrap: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
    color: var(--black);
    text-transform: capitalize;
}

.tf-variant-dropdown .dropdown-menu {
    margin: 5px !important;
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.0784313725);
    min-width: 180px;
    border: 0;
    padding-top: 10px;
    padding-bottom: 10px;
    border-radius: 6px;
    max-height: 68vh;
    isolation: isolate;
    overscroll-behavior-y: contain;
    overflow-y: auto;
}

.tf-variant-dropdown .dropdown-menu::-webkit-scrollbar {
    width: 5px;
}

.tf-variant-dropdown .dropdown-menu::-webkit-scrollbar-track {
    background-color: var(--line);
}

.tf-variant-dropdown .dropdown-menu::-webkit-scrollbar-thumb {
    background: var(--black);
    border-radius: 4px;
}

.tf-variant-dropdown .select-item {
    position: relative;
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
    text-transform: capitalize;
    color: var(--text);
    padding: 0 20px;
    line-height: 30px;
    width: 100%;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-variant-dropdown .select-item::after {
    height: 100%;
    content: "";
    width: 6px;
    position: absolute;
    z-index: 2;
    left: 3px;
    top: 0;
    background-color: var(--white);
}

.tf-variant-dropdown .select-item::before {
    left: 0;
    width: 3px;
    height: 100%;
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    background-color: var(--line);
    border-radius: 0 3px 3px 0;
}

.tf-variant-dropdown .select-item.active {
    background-color: var(--line);
    color: var(--black);
}

.tf-variant-dropdown .select-item.active::before {
    background-color: var(--black);
}

.tf-variant-dropdown .select-item:hover {
    background-color: var(--line);
    color: var(--black);
}

.tf-variant-dropdown:hover {
    border-color: var(--black);
}

.tf-variant-dropdown.full .dropdown-menu {
    width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.tf-variant-dropdown.full .select-item {
    line-height: 40px;
}

.tf-variant-dropdown.has-color .select-item {
    display: flex;
    gap: 6px;
    align-items: center;
}

.tf-variant-dropdown.has-color .box-color {
    width: 15px;
    height: 15px;
    border: 1px solid var(--line);
    display: inline-block;
    border-radius: 50%;
}

.s-banner-tes {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    flex-wrap: wrap-reverse;
}

.s-banner-tes>* {
    width: 100%;
    max-width: 100%;
}

.s-banner-tes .sw-tes {
    display: none;
}

.s-banner-tes .s-image {
    width: 100%;
    margin-left: auto;
}

@media (min-width: 992px) {
    .s-banner-tes {
        gap: 40px;
        flex-wrap: nowrap;
    }

    .s-banner-tes .sw-tes {
        max-width: 400px;
        margin-left: 0;
        margin-top: -196px;
        display: block;
    }

    .s-banner-tes .s-image {
        max-width: 572px;
    }

    .s-banner-tes .col-left {
        width: 50%;
    }

    .s-banner-tes .col-right {
        width: 50%;
    }
}

@media (min-width: 1440px) {
    .s-banner-tes .sw-tes {
        max-width: 508px;
    }

    .s-banner-tes .col-left {
        max-width: 652px;
        width: 100%;
    }

    .s-banner-tes .col-right {
        max-width: 708px;
        width: 100%;
    }
}

.product-thumbs {
    display: flex;
    background-color: var(--white);
}

.product-thumbs .image {
    max-width: 200px;
    width: 100%;
}

.product-thumbs .image img {
    width: 100%;
    object-fit: cover;
}

.product-thumbs .content {
    padding: 20px 15px;
}

@media (min-width: 1200px) {
    .product-thumbs .content {
        padding: 32px;
    }

    .product-thumbs .image {
        max-width: 273px;
    }
}

.s-intro .brand-name {
    font-size: clamp(60px, 16vw, 258px);
    line-height: clamp(86px, 20vw, 310px);
    font-weight: 500;
    color: var(--black);
}

@media (min-width: 992px) {
    .s-intro .box-intro {
        max-width: 712px;
        width: 100%;
    }
}

.box-intro .slogan {
    margin-bottom: 24px;
}

.box-intro.has-mb {
    margin-bottom: 30px;
}

@media (min-width: 1200px) {
    .box-intro.has-mb {
        margin-bottom: 48px;
    }
}

@media (min-width: 1200px) {
    .box-intro .slogan {
        line-height: 34px;
    }
}

.s-about .tf-grid-layout {
    gap: 16px;
}

.s-about .image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.s-about .wg-curve-text {
    margin-bottom: 30px;
}

.s-about .content-blog {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    text-align: center;
}

@media (min-width: 1200px) {
    .s-about .item_2 {
        grid-column: 2;
    }

    .s-about .wd-2-cols {
        grid-column: 3/span 2;
    }

    .s-about .content-blog {
        padding-left: 24px;
    }
}

@media (min-width: 1440px) {
    .s-about .wg-curve-text {
        margin-bottom: 48px;
    }
}

.wg-icon-image {
    display: grid;
    gap: 30px;
}

.wg-icon-image .box-icon {
    flex-direction: column;
    text-align: center;
}

.wg-icon-image .icon {
    margin-bottom: 20px;
}

.wg-icon-image .caption {
    margin-bottom: 8px;
}

@media (min-width: 1200px) {
    .wg-icon-image {
        gap: 40px;
    }

    .wg-icon-image .icon {
        margin-bottom: 32px;
    }
}

@media (max-width: 991px) {
    .wg-icon-image .icon svg {
        width: 45px;
        height: 45px;
    }
}

@media (max-width: 767px) {
    .wg-icon-image .image img {
        width: 100%;
        height: 100%;
        max-height: 350px;
        object-fit: cover;
    }
}

.slider-thumb-wrap .slider-content-thumb {
    margin-bottom: 40px;
}

.slider-thumb-wrap .slider-btn-thumbs {
    display: flex;
    justify-content: center;
    gap: 12px;
}

.slider-thumb-wrap .btn-thumbs {
    border-radius: 50%;
    overflow: hidden;
    cursor: pointer;
    max-width: 72px;
    filter: grayscale(100%);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.slider-thumb-wrap .btn-thumbs.active {
    filter: grayscale(0%);
}

@media (min-width: 1200px) {
    .slider-thumb-wrap .slider-content-thumb {
        margin-bottom: 56px;
    }
}

.s-404 .image,
.s-404 .content {
    margin-bottom: 40px;
}

.s-404 .title {
    margin-bottom: 12px;
}

.s-404 .content {
    text-align: center;
}

.s-404 .wrap {
    max-width: 448px;
    width: 100%;
    margin: auto;
}

.s-404 .group-btn {
    gap: 12px;
}

.s-404 .group-btn>* {
    width: 100%;
}

@media (max-width: 575px) {
    .s-404 .group-btn {
        flex-wrap: wrap;
    }
}

.faq_title {
    margin-bottom: 20px;
    font-weight: normal;
}

.faq-list {
    display: grid;
    gap: 30px;
}

@media (min-width: 1200px) {
    .faq-list {
        gap: 40px;
        max-width: 992px;
    }
}

.faq_wrap .accordion-faq {
    padding-bottom: 22px;
    border-bottom: 1px solid var(--line);
}

.faq_wrap .accordion-faq:not(:last-child) {
    margin-bottom: 22px;
}

.s-our-store .wg-curve-text {
    margin-bottom: 40px;
}

.s-our-store .heading {
    max-width: 696px;
    width: 100%;
    margin: auto;
}

@media (min-width: 1200px) {
    .s-our-store .wg-curve-text {
        margin-bottom: 56px;
    }
}

.store-list .image {
    overflow: hidden;
}

.store-list .image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.store-list .store-item {
    display: flex;
    flex-wrap: wrap;
}

.store-list .store-item>* {
    width: 100%;
}

.store-list .content {
    padding-left: 16px;
    padding-right: 16px;
    padding-top: 60px;
    padding-bottom: 60px;
    display: flex;
    justify-content: center;
    flex-direction: column;
}

@media (min-width: 768px) {
    .store-list .content {
        margin-left: auto;
    }

    .store-list .content.type-right {
        margin-left: unset;
    }

    .store-list .store-item>* {
        width: 50%;
    }
}

@media (min-width: 1200px) {
    .store-list .content {
        max-width: 735px;
    }

    .store-list .content.type-right {
        padding-left: 40px;
    }
}

@media (min-width: 1440px) {
    .store-list .content {
        padding-right: 80px;
    }

    .store-list .content.type-right {
        padding-left: 80px;
        padding-right: 16px;
    }
}

.store-item .name-store {
    margin-bottom: 30px;
}

.store-item .infor-store {
    display: grid;
    gap: 20px;
}

.store-item .caption {
    margin-bottom: 8px;
}

@media (min-width: 1200px) {
    .store-item .name-store {
        margin-bottom: 40px;
    }

    .store-item .infor-store {
        gap: 30px;
    }
}

@media (min-width: 1440px) {
    .store-item .name-store {
        margin-bottom: 56px;
    }

    .store-item .infor-store {
        display: grid;
        gap: 40px;
    }
}

@media (max-width: 767px) {
    .store-item:last-child .content {
        padding-bottom: 0px;
    }
}

.store-contact li {
    display: flex;
    align-items: center;
    gap: 8px;
}

.s-log {
    display: flex;
    justify-content: space-between;
    position: relative;
    gap: 60px 49px;
}

.s-log .heading {
    margin-bottom: 24px;
}

.s-log .text-sub {
    margin-bottom: 12px;
}

.s-log .col-left,
.s-log .col-right {
    width: 100%;
}

.s-log .btn_log {
    max-width: 280px;
    width: 100%;
}

@media (min-width: 768px) {

    .s-log .col-left,
    .s-log .col-right {
        max-width: 620px;
        width: 100%;
    }

    .s-log::after {
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        bottom: 0;
        width: 1px;
        height: 100%;
        background-color: var(--line);
    }
}

@media (min-width: 1200px) {
    .s-log .heading {
        margin-bottom: 32px;
    }

    .s-log .text-sub {
        margin-bottom: 24px;
    }
}

@media (max-width: 767px) {
    .s-log {
        flex-wrap: wrap;
    }
}

.sidebar-account {
    display: flex;
    flex-direction: column;
    gap: 32px;
    background-color: var(--bg-2);
    padding: 24px;
}

@media (min-width: 1200px) {
    .sidebar-account {
        padding: 32px;
    }
}

.account-author .author_avatar {
    margin-bottom: 24px;
}

.account-author .author_name {
    margin-bottom: 4px;
}

.author_avatar {
    position: relative;
    display: inline-flex;
}

.author_avatar .image {
    border-radius: 50%;
    overflow: hidden;
    max-width: 168px;
    height: 168px;
}

.author_avatar img {
    height: 100%;
    aspect-ratio: 1;
    object-fit: cover;
}

.btn-change_img {
    background-color: var(--black);
    width: 32px;
    height: 32px;
    border-radius: 50%;
    position: absolute;
    top: 0;
    right: 22px;
    color: var(--white);
}

.btn-change_img .icon {
    font-size: 20px;
}

.my-account-nav_item {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--black);
    padding: 16px;
    font-weight: 500;
}

.my-account-nav_item .icon {
    font-size: 24px;
}

.my-account-nav_item:hover,
.my-account-nav_item.active {
    background-color: var(--white);
}

.my-account-content .account-title {
    margin-bottom: 32px;
}

.acount-order_stats {
    margin-bottom: 30px;
}

.acount-order_stats .order-box {
    border: 1px solid var(--line);
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 25px 20px;
}

.acount-order_stats .order_icon {
    font-size: 48px;
}

.acount-order_stats .order_info {
    padding-left: 25px;
    border-left: 1px solid var(--line);
}

.acount-order_stats .info_label {
    margin-bottom: 4px;
}

@media (min-width: 1200px) {
    .acount-order_stats {
        margin-bottom: 48px;
    }
}

@media (min-width: 1440px) {
    .acount-order_stats .order-box {
        padding: 31px;
    }
}

.account-my_order .wg-pagination {
    margin-top: 32px;
}

.table-my_order thead {
    background-color: var(--bg-2);
}

.table-my_order th {
    color: var(--black);
    font-weight: 600;
}

.table-my_order th:first-child {
    border-left: 1px solid var(--bg-2);
}

.table-my_order th:last-child {
    border-right: 1px solid var(--bg-2);
}

.table-my_order td {
    border-bottom: 1px solid var(--line);
}

.table-my_order td:first-child {
    border-left: 1px solid var(--line);
}

.table-my_order td:last-child {
    border-right: 1px solid var(--line);
}

.table-my_order th,
.table-my_order td {
    font-size: 18px;
    line-height: 24px;
}

.table-my_order th:first-child,
.table-my_order td:first-child {
    width: 155px;
}

.table-my_order th:nth-child(2),
.table-my_order td:nth-child(2) {
    width: 415px;
}

.table-my_order th:last-child,
.table-my_order td:last-child {
    width: 130px;
}

.table-my_order.order_recent th:nth-child(2),
.table-my_order.order_recent td:nth-child(2) {
    width: 458px;
}

.table-my_order.order_recent th:last-child,
.table-my_order.order_recent td:last-child {
    width: unset;
}

@media (min-width: 1440px) {
    .table-my_order {
        table-layout: fixed;
    }
}

@media (min-width: 1440px) {
    .table-my_order td {
        height: 147px;
        vertical-align: middle;
    }
}

@media (max-width: 767px) {

    .table-my_order th:nth-child(2),
    .table-my_order td:nth-child(2) {
        min-width: 300px;
    }
}

.tb-order_product {
    display: flex;
    align-items: center;
    gap: 16px;
}

.tb-order_product .prd_select {
    display: flex;
    gap: 8px;
}

.tb-order_product .prd_name {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}

.tb-order_product .img-prd {
    width: 100%;
    max-width: 90px;
    flex-shrink: 0;
    height: 90px;
}

.tb-order_product .img-prd img {
    aspect-ratio: 1;
    height: 100%;
    object-fit: cover;
}

.tb-order_product .infor-prd {
    display: grid;
    gap: 8px;
}

.tb-order_product .prd_select {
    display: flex;
    align-items: center;
    color: var(--text);
}

.tb-order_status {
    max-width: 116px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    font-weight: 600;
}

.tb-order_status.stt-complete {
    background: rgba(44, 129, 83, 0.0509803922);
    color: #2C8153;
}

.tb-order_status.stt-pending {
    background: rgba(232, 183, 70, 0.0509803922);
    color: #E8B746;
}

.tb-order_status.stt-delivery {
    background: rgba(59, 168, 188, 0.0509803922);
    color: #3BA8BC;
}

.tb-order_status.stt-cancel {
    background: rgba(200, 16, 46, 0.0509803922);
    color: #C8102E;
}

.form-change_pass {
    display: grid;
    gap: 40px;
}

.form-change_pass .site-change {
    margin-bottom: 32px;
}

@media (min-width: 1200px) {
    .form-change_pass {
        gap: 48px;
    }
}

.account-order_detail {
    display: flex;
    gap: 32px;
    margin-bottom: 36px;
}

.account-order_detail>* {
    width: 100%;
}

.account-order_detail .detail-content_info {
    display: grid;
    gap: 24px;
}

.account-order_detail .prd_name {
    margin-bottom: 4px;
}

.account-order_detail .info-item_label {
    margin-bottom: 8px;
}

.account-order_detail .info-item_value {
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    color: var(--black);
}

@media (min-width: 1200px) {
    .account-order_detail {
        gap: 48px;
        margin-bottom: 48px;
    }

    .account-order_detail .order-detail_image {
        max-width: 448px;
    }
}

@media (max-width: 575px) {
    .account-order_detail {
        flex-wrap: wrap;
    }

    .account-order_detail .order-detail_image img {
        max-height: 400px;
        width: 100%;
        object-fit: cover;
    }
}

.detail-info_status {
    padding: 8px 24px;
    color: var(--white);
    display: inline-flex;
    width: max-content;
}

.tab-order_detail {
    display: flex;
    border-bottom: 1px solid var(--line);
    margin-bottom: 32px;
    overflow: auto;
    white-space: nowrap;
}

.tab-order_detail .nav-tab-item .tf-btn-tab {
    padding-bottom: 16px;
    padding-right: 16px;
}

.tab-order_detail .nav-tab-item:not(:first-child) .tf-btn-tab {
    padding-left: 16px;
}

.tab-order_detail .tf-btn-tab {
    text-transform: none;
    letter-spacing: 0;
}

.tab-order_detail .tf-btn-tab span {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tab-order_detail .tf-btn-tab::after,
.tab-order_detail .tf-btn-tab::before {
    bottom: 0;
}

.tab-order_detail .tf-btn-tab::after {
    background-color: var(--line);
}

.tab-order_detail .tf-btn-tab.active span {
    font-weight: 600;
}

.order-timeline .timeline-step:not(:last-child) {
    padding-bottom: 40px;
}

.order-timeline .timeline-step:not(:last-child) .timeline_icon {
    margin-bottom: -40px;
}

.timeline-step {
    display: flex;
    gap: 20px;
}

.timeline-step .step-title {
    margin-bottom: 8px;
}

.timeline-step .step-date {
    margin-bottom: 16px;
}

.timeline-step .step-detail:not(:last-child) {
    margin-bottom: 8px;
}

.timeline-step.completed .timeline_icon .icon {
    background-color: #2C8153;
    border-color: #2C8153;
}

.timeline-step.completed .timeline_icon .icon::after {
    content: none;
}

.timeline-step.completed .timeline_icon::after {
    border-color: #2C8153;
}

@media (min-width: 1200px) {
    .timeline-step {
        gap: 40px;
    }
}

.timeline_icon {
    position: relative;
}

.timeline_icon .icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    color: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    position: relative;
    z-index: 2;
    background-color: white;
    border: 1px solid var(--line);
}

.timeline_icon .icon::after {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    background-color: var(--line);
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
}

.timeline_icon::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    bottom: 0;
    width: 1px;
    height: 100%;
    border: 1px dashed var(--line-7);
}

@media (min-width: 1200px) {
    .timeline_icon {
        padding: 0px 7.5px;
    }

    .timeline_icon .icon {
        width: 48px;
        font-size: 24px;
        height: 48px;
    }
}

.order-item_detail .prd-info {
    display: flex;
    align-items: center;
    gap: 16px;
}

.order-item_detail .info_image {
    max-width: 90px;
}

.order-item_detail .info_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 1;
}

.order-item_detail .info_detail {
    display: grid;
    gap: 2px;
}

.order-item_detail .prd-price {
    display: grid;
    gap: 8px;
}

.order-item_detail .info-price,
.order-item_detail .info-variant,
.order-item_detail .price_total,
.order-item_detail .price_dis,
.order-item_detail .prd-order_total {
    display: flex;
    align-items: center;
    gap: 9px;
}

.order-item_detail .price_total,
.order-item_detail .price_dis,
.order-item_detail .prd-order_total {
    justify-content: space-between;
}

.order-item_detail>*:not(:last-child) {
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 1px solid var(--line);
}

@media (min-width: 1200px) {
    .order-item_detail>*:not(:last-child) {
        padding-bottom: 32px;
        margin-bottom: 32px;
        border-bottom: 1px solid var(--line);
    }
}

.order-receiver {
    display: grid;
    gap: 2px;
}

.order-receiver .recerver_text {
    display: flex;
    align-items: center;
    gap: 9px;
}

.order-receiver .text_info {
    font-weight: 600;
    color: var(--black);
}

.account-my_address {
    display: grid;
    gap: 32px;
}

.account-address-item {
    padding: 20px 16px;
    border: 1px solid var(--line);
    display: flex;
    gap: 24px;
    flex-direction: column;
}

.account-address-item .address-item_content {
    display: grid;
    gap: 16px;
}

.account-address-item .address-item_action {
    display: grid;
    gap: 12px;
}

.account-address-item .address-item_action>* {
    width: 100%;
}

.account-address-item .address-info {
    display: grid;
    gap: 8px;
}

@media (min-width: 576px) {
    .account-address-item {
        flex-direction: row;
        align-items: center;
        padding: 24px;
    }

    .account-address-item .address-item_action {
        min-width: 180px;
    }

    .account-address-item .address-item_content {
        gap: 24px;
        flex: 1;
        padding-right: 24px;
        border-right: 1px solid var(--line);
    }
}

.contact-list {
    display: grid;
    gap: 16px;
}

.contact-list li {
    display: flex;
    align-items: center;
    gap: 8px;
}

.contact-list .br-line {
    width: 1px;
    height: 16px;
    background-color: var(--line);
}

@media (max-width: 991px) {
    .grid-photo {
        gap: 12px;
    }
}

.wg-real-image {
    position: relative;
}

.wg-real-image img {
    aspect-ratio: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wg-real-image .box-icon {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: var(--black);
}

@media (min-width: 1200px) {
    .wg-real-image .box-icon {
        top: 16px;
        right: 16px;
        width: 56px;
        height: 56px;
    }
}

.sect-border {
    border: 1px solid var(--line);
    padding-bottom: 40px;
}

.sect-border .s-head {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: -26px;
    margin-bottom: 40px;
}

.sect-border .s-title {
    display: flex;
    padding: 8px 30px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background-color: var(--white);
}

@media (min-width: 1200px) {
    .sect-border {
        padding-bottom: 48px;
    }

    .sect-border .s-head {
        margin-top: -34px;
        margin-bottom: 63px;
    }

    .sect-border .s-title {
        padding: 12px 48px;
    }
}

.s-banner-header {
    padding-top: 34px;
    padding-bottom: 34px;
}

.s-banner-header .image {
    margin-bottom: 24px;
}

.s-banner-header .bot {
    display: flex;
    align-items: center;
    gap: 30px;
}

.s-banner-header .btn-open_search {
    display: flex;
    align-items: center;
    gap: 12px;
}

.s-banner-header .btn-open_search .icon {
    font-size: 24px;
}

@media (min-width: 992px) {
    .s-banner-header .image {
        margin-bottom: 40px;
    }
}

@media (min-width: 1200px) {
    .s-banner-header {
        padding-top: 63px;
    }

    .s-banner-header .image {
        margin-bottom: 68px;
    }

    .s-banner-header .bot {
        gap: 56px;
        white-space: nowrap;
    }
}

.s-banner-shop .product-info-name {
    margin-bottom: 4px;
}

.s-banner-shop .tf-prduct-desc {
    margin-bottom: 32px;
}

.s-banner-shop .tf-product-variant .variant-picker-label {
    margin-bottom: 24px;
}

.s-banner-shop .variant-color .variant-picker-values {
    gap: 8px;
}

.s-banner-shop .tf-product-info-wrap {
    margin-top: 40px;
}

.tf-lookbook-hover .bundle-pin-item {
    cursor: pointer;
}

.tf-lookbook-hover .bundle-hover-item {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-lookbook-hover .bundle-hover-item.no-hover {
    opacity: 0.3;
}

.wrap-lookbook_hover {
    position: relative;
}

.wrap-lookbook_hover .pst1 {
    position: absolute;
    top: 50%;
    left: 50%;
}

.wrap-lookbook_hover .pst2 {
    position: absolute;
    top: 70%;
    left: 70%;
}

.wg-copy {
    border-radius: 16px;
    padding: 8px;
    background-color: var(--primary);
}

.wg-copy .content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 16px;
    border: 1px dashed var(--line-9);
    padding: 20px 8px;
    gap: 5px;
}

.wg-copy .btn-coppy-text {
    cursor: pointer;
}

@media (min-width: 1200px) {
    .wg-copy .content {
        padding: 23px 31px;
    }
}

@media (min-width: 992px) {
    .wg-copy .btn-coppy-text {
        padding: 16px 32px;
    }
}

@media (max-width: 575px) {
    .wg-copy .content {
        flex-direction: column;
        justify-content: center;
        align-content: center;
        text-align: center;
        gap: 16px;
    }
}

.has-overlay-50 {
    position: relative;
}

.has-overlay-50::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background-color: rgba(0, 0, 0, 0.5019607843);
}

.has-overlay_left {
    position: relative;
}

.has-overlay_left::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background: linear-gradient(-90deg, rgba(241, 242, 244, 0) 38.38%, #F1F2F4 66.3%);
}

.body-lv-2 {
    padding-bottom: 40px;
}

.body-lv-2>* {
    padding: 32px;
    border-radius: 16px;
    background-color: var(--white);
    max-width: 1504px;
    width: 100%;
    margin: 0 auto;
}

.body-lv-2>* .container {
    padding: 0;
}

.body-lv-2>*:not(:last-child) {
    margin-bottom: 40px;
}

@media (max-width: 1199px) {
    .body-lv-2>* {
        padding: 32px 16px;
    }
}

.body-lv-2 .footer-body {
    margin-top: 56px;
    border-top: 1px solid var(--line);
    padding-top: 57px;
}

.grid-layout-product .item-grid-1 {
    margin-bottom: 24px;
}

@media (min-width: 1200px) {
    .grid-layout-product {
        display: flex;
        justify-content: space-between;
    }

    .grid-layout-product .tf-swiper {
        width: 100%;
    }

    .grid-layout-product .tf-swiper .swiper-wrapper {
        position: relative;
        width: 100%;
        height: 100%;
        z-index: 1;
        display: unset;
        transition-property: unset;
        transition-timing-function: unset;
        box-sizing: unset;
        display: grid;
        gap: 24px;
    }

    .grid-layout-product .tf-swiper .swiper-slide {
        width: 100% !important;
        margin: 0 !important;
    }

    .grid-layout-product .item-grid-1 {
        width: calc(66.388888% - 12px);
        margin-bottom: 0;
    }

    .grid-layout-product .item-grid-2 {
        width: calc(33.61111111% - 12px);
    }
}

.grid-layout-product-2 .item-grid-1 {
    margin-bottom: 4px;
}

@media (min-width: 1200px) {
    .grid-layout-product-2 {
        display: flex;
        gap: 4px;
    }

    .grid-layout-product-2 .item-grid-1 {
        width: calc(30.972222222% - 2px);
        margin-bottom: 0;
    }

    .grid-layout-product-2 .item-grid-1>* {
        height: 100%;
    }

    .grid-layout-product-2 .item-grid-2 {
        width: calc(69.02777777% - 2px);
    }

    .grid-layout-product-2 .item-grid-2>* {
        height: 100%;
    }
}

.banner-card_product {
    display: flex;
    align-items: center;
    gap: 24px;
    background-color: var(--white);
    padding: 16px;
    border-radius: 16px;
    height: 100%;
}

.banner-card_product>* {
    width: calc(50% - 24px);
}

.banner-card_product .product-image {
    border-radius: 16px;
    overflow: hidden;
}

.banner-card_product .product-image img {
    aspect-ratio: 0.8212927757;
}

.banner-card_product.style-column {
    flex-direction: column;
    gap: 24px;
}

.banner-card_product.style-column>* {
    width: 100%;
}

.banner-card_product.style-2 {
    padding: 16px 16px 24px;
    background-color: #FAFAFA;
}

@media (min-width: 1440px) {
    .banner-card_product {
        gap: 48px;
    }

    .banner-card_product .product-content {
        padding-right: 24px;
    }
}

@media (max-width: 767px) {
    .banner-card_product {
        flex-direction: column;
    }

    .banner-card_product>* {
        width: 100%;
    }
}

.product-detail_info_mini {
    display: grid;
    gap: 24px;
}

.product-detail_info_mini .info-cate {
    margin-bottom: 4px;
    display: block;
}

.product-detail_info_mini .info-name {
    margin-bottom: 8px;
}

.product-detail_info_mini .product_count_buy {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--primary);
}

.product-detail_info_mini .product_count_buy .icon {
    font-size: 18px;
}

.product-detail_info_mini .prd-title {
    margin-bottom: 16px;
}

.product-detail_info_mini .product_action {
    display: flex;
    gap: 16px;
}

@media (min-width: 1200px) {
    .product-detail_info_mini .wg-quantity {
        min-width: 140px;
    }
}

@media (max-width: 767px) {
    .product-detail_info_mini .wg-quantity {
        min-width: 140px;
    }
}

@media (max-width: 575px) {
    .product-detail_info_mini .product_action {
        flex-direction: column;
    }
}

.wg-brand {
    display: flex;
    border: 1px solid var(--line);
    position: relative;
}

.wg-brand img {
    width: 100%;
    object-fit: cover;
    aspect-ratio: 1.8181818182;
}

.wg-brand::after {
    position: absolute;
    content: "";
    width: 0%;
    height: 1px;
    top: 0;
    left: 0;
    background-color: var(--black);
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

.wg-brand::before {
    position: absolute;
    content: "";
    height: 0%;
    width: 1px;
    bottom: 0;
    left: 0;
    background-color: var(--black);
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

.wg-brand .tf-overlay {
    position: absolute;
    inset: 0;
    z-index: -1;
}

.wg-brand .tf-overlay::after {
    position: absolute;
    content: "";
    width: 0%;
    height: 1px;
    right: 0;
    bottom: 0;
    background-color: var(--black);
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

.wg-brand .tf-overlay::before {
    position: absolute;
    content: "";
    height: 0%;
    width: 1px;
    right: 0;
    top: 0;
    background-color: var(--black);
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

.wg-brand:hover::after {
    width: 100%;
    transition-delay: 0.1s;
}

.wg-brand:hover::before {
    height: 100%;
    transition-delay: 0.4s;
}

.wg-brand:hover .tf-overlay::after {
    width: 100%;
    transition-delay: 0.1s;
}

.wg-brand:hover .tf-overlay::before {
    height: 100%;
    transition-delay: 0.4s;
}

.banner-parallax .card-product {
    margin-left: auto;
    max-width: 496px;
    width: 100%;
}

@media (min-width: 992px) {
    .banner-parallax .card-product {
        padding: 48px;
    }
}

.watch-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: auto auto;
    gap: 12px;
    grid-template-areas: "aa bb bb ee" "aa cc dd ee";
}

.watch-grid .aa {
    grid-area: aa;
}

.watch-grid .bb {
    grid-area: bb;
}

.watch-grid .cc {
    grid-area: cc;
}

.watch-grid .dd {
    grid-area: dd;
}

.watch-grid .ee {
    grid-area: ee;
}

@media (min-width: 1600px) {
    .watch-grid {
        grid-template-columns: 391px 1fr 1fr 391px;
        gap: 24px;
    }
}

@media (max-width: 1199px) {
    .watch-grid {
        grid-template-columns: 1fr 1fr;
        grid-template-areas: "aa ee" "aa ee" "bb bb" "cc dd";
    }

    .watch-grid .box-image_category img {
        max-height: 500px;
    }
}

@media (max-width: 575px) {
    .watch-grid {
        grid-template-columns: 1fr;
        grid-template-areas: "aa" "bb" "cc" "dd" "ee";
    }

    .watch-grid .box-image_category img {
        height: 300px;
    }
}

@media (max-width: 1199px) {
    .watch-grid_2 img {
        max-height: 500px;
    }
}

@media (max-width: 575px) {
    .watch-grid_2 img {
        max-height: 300px;
    }

    .watch-grid_2 .box-image_V02 .box-image_content {
        left: 16px;
        right: 16px;
    }
}

.text-linear {
    background: linear-gradient(90deg, #fdb79e 0%, #fdd1b1 25%, #feeacd 50%, #fdd1b1 75%, #fdb79e 100%);
    background-size: 200% 100%;
    background-position: 200% 0;
    animation: bgMove 3s linear infinite;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}

.wg-map {
    padding: 0px 15px;
    margin-bottom: 30px;
}

@media (min-width: 1200px) {
    .wg-map {
        margin-bottom: 70px;
        padding: 0px 30px;
    }
}

.s-contact-us .title,
.s-contact-us .sub-title {
    margin-bottom: 16px;
}

.s-contact-us .store-info-list {
    margin-bottom: 20px;
}

.s-contact-us .left-col {
    margin-bottom: 30px;
}

@media (min-width: 1200px) {

    .s-contact-us .title,
    .s-contact-us .sub-title {
        margin-bottom: 32px;
    }

    .s-contact-us .store-info-list {
        margin-bottom: 39px;
        gap: 16px;
    }
}

@media (min-width: 1025px) {
    .s-contact-us {
        padding-top: 80px;
    }
}

.store-info-list {
    display: grid;
    gap: 8px;
}

.s-contact-information .image {
    width: 100%;
    margin-bottom: 40px;
}

.s-contact-information .image img {
    width: 100%;
    object-fit: cover;
}

.s-contact-information .title {
    margin-bottom: 30px;
}

.s-contact-information .infor-store {
    display: grid;
    gap: 20px;
}

.s-contact-information .caption {
    margin-bottom: 8px;
}

@media (min-width: 1200px) {
    .s-contact-information .title {
        margin-bottom: 40px;
    }

    .s-contact-information .infor-store {
        gap: 30px;
    }
}

@media (min-width: 1440px) {
    .s-contact-information .title {
        margin-bottom: 56px;
    }

    .s-contact-information .infor-store {
        display: grid;
        gap: 40px;
    }
}

@media (max-width: 767px) {
    .s-contact-information:last-child .content {
        padding-bottom: 0px;
    }
}

.s-map {
    height: 700px;
}

@media (max-width: 1199px) {
    .s-map {
        height: 450px;
    }
}

/*-------------- RTL ----------------- */
/* ---------------------------------------------------------
    * Name: Ochaka - Multipurpose eCommerce HTML Template
    * Version: 1.0.2
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * accordion
        * animation
        * blog
        * box icon
        * button
        * carousel
        * avatar
        * form
        * hover
        * nice select
        * popup
        * product
        * shop
        * slider
        * testimonial
        * zoom

    * Section
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
.toggle-rtl {
    padding: 0;
    position: fixed;
    top: 50%;
    right: 15px;
    width: 40px;
    height: 40px;
    min-width: 30px;
    text-transform: uppercase;
    z-index: 999;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 3px;
}

.rtl {
    /* START -- RTL EDIT CSS BOOSTRAP */
    /* END -- RTL EDIT CSS BOOSTRAP */
    /* Responsive */
}

.rtl .toggle-rtl {
    left: 15px;
    right: auto;
}

.rtl .modal.fullRight .modal-dialog {
    transform: translate(-100%, 0) !important;
    transition: all 0.3s !important;
}

.rtl .modal.fullRight .modal-dialog .modal-content {
    left: 0;
    right: unset;
}

.rtl .modal.fullRight.show .modal-dialog {
    transform: translate(0, 0) !important;
}

.rtl .offcanvas.offcanvas-end {
    left: 0;
    right: unset;
    transform: translateX(-100%);
}

.rtl .offcanvas.offcanvas-start {
    right: 0;
    left: unset;
    transform: translateX(100%);
}

.rtl .offcanvas.show:not(.hiding),
.rtl .offcanvas.showing {
    transform: none;
}

.rtl .offcanvas.hiding,
.rtl .offcanvas.show,
.rtl .offcanvas.showing {
    visibility: visible;
}

.rtl .ms-auto {
    margin-left: unset !important;
    margin-right: auto;
}

@media (min-width: 576px) {
    .rtl .ms-sm-auto {
        margin-left: unset !important;
        margin-right: auto;
    }

    .rtl .offset-sm-1 {
        margin-left: unset;
        margin-right: 8.33333333%;
    }
}

@media (min-width: 992px) {
    .rtl .offset-lg-2 {
        margin-left: unset;
        margin-right: 16.66666667%;
    }
}

@media (min-width: 768px) {
    .rtl .offset-md-2 {
        margin-left: unset;
        margin-right: 16.66666667%;
    }
}

.rtl .tf-marquee {
    direction: ltr;
}

.rtl .tf-slideshow .slider-wrap,
.rtl .tf-slideshow-2 .slider-wrap {
    direction: rtl;
}

.rtl .tf-slideshow .sld_image,
.rtl .tf-slideshow-2 .sld_image {
    transform: rotateY(180deg);
}

.rtl .card-product {
    direction: rtl;
}

.rtl .marquee-wrapper {
    animation: infiniteScrollRight 7s linear infinite;
}

.rtl .product-badge_list {
    right: 8px;
    left: auto;
}

.rtl .product-action_list {
    left: 8px;
    right: auto;
}

.rtl .product-action_list.style-row {
    top: 0;
    left: auto;
}

@media (min-width: 1200px) {
    .rtl .product-action_list {
        left: 16px;
    }

    .rtl .product-action_list li {
        transform: translateX(-20px);
    }
}

.rtl .product-action_list .hover-tooltip.tooltip-left .tooltip {
    right: auto;
    left: 100%;
    bottom: auto;
    transform: translateX(0px);
}

.rtl .product-action_list .hover-tooltip.tooltip-left .tooltip::before {
    top: 50%;
    right: auto;
    transform: translateY(-50%) rotate(45deg);
    left: -4px;
}

.rtl .product-action_list .hover-tooltip.tooltip-left:hover .tooltip {
    transform: translateX(8px);
}

.rtl .testimonial-V01,
.rtl .testimonial-V02,
.rtl .testimonial-V03,
.rtl .product-thumbs,
.rtl .testimonial-V04 {
    direction: rtl;
}

.rtl .article-blog {
    direction: rtl;
}

.rtl .article-blog .entry_tag {
    left: auto;
    right: 10px;
}

@media (min-width: 1200px) {
    .rtl .article-blog {
        right: 16px;
        left: auto;
    }
}

.rtl .article-blog.type-space-2 .entry_tag {
    right: 0;
}

.rtl .form-search.style-2 button {
    right: auto;
    left: 24px;
}

.rtl .box-image_V02 .box-image_image {
    transform: rotateY(180deg);
}

.rtl .box-image_V02 .box-image_content {
    left: auto;
    right: 30px;
}

@media (min-width: 1200px) {
    .rtl .box-image_V02 .box-image_content {
        left: auto;
        right: 48px;
    }
}

.rtl .box-image_V05 .box-image_image {
    transform: rotateY(180deg);
}

.rtl .box-image_V05 .box-image_content {
    left: auto;
    right: 32px;
}

.rtl .banner-lookbook .lookbook-product .content {
    text-align: start;
}

.rtl .tf-select::after {
    left: 24px;
    right: auto;
}

.rtl .tf-dropdown-select.style-default>.dropdown-toggle {
    padding-right: 0;
    padding-left: 22px;
}

.rtl .tf-dropdown-select.style-default>.dropdown-toggle::after {
    right: auto;
    left: 0;
}

.rtl .canvas-mb .icon-close-popup {
    left: 0;
    right: auto;
}

.rtl .form_search-product .btn-submit {
    border-radius: 999px 0px 0px 999px;
    right: auto;
    left: -1px;
}

.rtl .box-nav-category {
    left: auto;
    right: 0;
}

@media (min-width: 1440px) {
    .rtl .box-nav-category {
        left: auto;
        right: -25px;
    }
}

.rtl .box-image_V05.type-space-2 .box-image_content {
    direction: rtl;
}

.rtl .btn-sidebar-mb {
    left: auto;
    right: 0;
}

.rtl .banner-V03 .banner_img img {
    transform: rotateY(180deg);
}

.rtl .box-image_V02 .box-image_content {
    left: auto;
    right: 30px;
    direction: rtl;
}

.rtl .form_search-product .btn-submit-2 {
    right: unset;
    left: 4px;
}

.rtl .box-image_V06 .box-image_image {
    transform: rotateY(180deg);
}

.rtl .box-image_V06 .box-image_content {
    left: auto;
    right: 16px;
    direction: rtl;
}

.rtl .product-badge_item.flash-sale {
    direction: rtl;
}

.rtl .box-image_V06.has-overlay::after {
    transform: rotateY(180deg);
}

.rtl .product-countdown .countdown__timer {
    direction: ltr;
}

.rtl .box-image_V01.type-3 .box-image_image {
    transform: rotateY(180deg);
}

.rtl .box-image_V01.type-3 .box-image_content {
    left: auto;
    right: 16px;
}

.rtl .widget-price .price-box {
    direction: ltr;
}

.rtl .box-nav-category.type-2 {
    left: auto;
    right: 0;
}

.rtl .slider-wrap.has-overlay::after {
    background: linear-gradient(90deg, rgba(41, 27, 27, 0) 32.95%, #291B1B 80.78%);
}

.rtl .tf-btn-swiper-main.pst-5 .band-swiper {
    left: 24px;
    right: auto;
}

.rtl .sb-banner .content {
    right: 24px;
    left: auto;
}

.rtl .noUi-horizontal .noUi-handle {
    right: -8px;
    left: auto;
}

.rtl .product-size_list .size-item:not(:last-child) {
    padding-right: unset;
    border-right: unset;
    padding-left: 12px;
    border-left: 1px solid var(--line);
}

.rtl .s-page-title.style-2 .content {
    text-align: right;
}

.rtl .tf-zoom-main .drift-zoom-pane img {
    left: 0;
}

.rtl .volume-discount-thumbnail-item .tags-save {
    right: 0;
    left: auto;
}

.rtl .widget-size .tow-bar-block .progress-size {
    right: 0;
    left: auto;
}

.rtl .modal-heading .icon-close-popup {
    left: 0;
    right: unset;
}

.rtl .modal-share .btn-coppy-text {
    left: 5px;
    right: auto;
}

.rtl .flat-animate-tab .menu-tab-3 {
    border-left: unset;
    border-right: 1px solid var(--line);
}

.rtl .flat-animate-tab .menu-tab-3 .tab-link {
    padding: 16px 21px 16px 0px;
}

.rtl .flat-animate-tab .menu-tab-3 .tab-link::before {
    right: -1px;
    left: auto;
}

.rtl .page-title-image .page_image {
    transform: rotateY(180deg);
}

.rtl form.style-btn-abs-end .btn-submit {
    left: 24px;
    right: auto;
}

.rtl form.style-btn-abs-end input {
    padding-left: 48px;
    padding-right: 24px;
}

.rtl .acount-order_stats .order-box {
    direction: rtl;
}

.rtl .acount-order_stats .order_info {
    padding-left: unset;
    border-left: unset;
    padding-right: 25px;
    border-right: 1px solid var(--line);
}

.rtl .table-my_order td:first-child {
    border-left: unset;
    border-right: 1px solid var(--line);
}

.rtl .table-my_order td:last-child {
    border-left: 1px solid var(--line);
    border-right: unset;
}

.rtl .password-wrapper .toggle-pass {
    left: 16px;
    right: auto;
}

.rtl .page-title-blog .bg-image {
    transform: rotateY(180deg);
}

.rtl .page-title-blog .bg-image .parallaxie {
    background-position: center !important;
}

.rtl .modal-newletter .icon-close-popup {
    left: 8px;
}

.rtl .sub-nav-menu {
    padding-left: 0;
    margin-left: 0;
    border-left: 0;
    padding-right: 16px;
    margin-right: 16px;
    border-right: 1px solid var(--line);
}

.rtl .group-btn-slider {
    direction: ltr;
}

.rtl #sib-form .entry__choice label {
    text-align: start;
}

.rtl .s-banner-header .btn-open_search {
    direction: ltr;
}

@media (min-width: 576px) {
    .rtl .account-address-item .address-item_content {
        padding-right: 0;
        border-right: unset;
        padding-left: 24px;
        border-left: 1px solid var(--line);
    }
}

@media (min-width: 768px) {
    .rtl .store-list .content.type-right {
        margin-right: unset;
    }

    .rtl .store-list .content {
        margin-right: auto;
        margin-left: unset;
    }
}

@media (min-width: 1200px) {
    .rtl .product-action_list.style-row li {
        transform: translateY(-16px);
    }

    .rtl .box-image_V02.type-space-5 .box-image_content {
        left: auto;
        right: 32px;
    }

    .rtl .box-image_V02 .box-image_content {
        left: auto;
        right: 48px;
    }

    .rtl .box-image_V06 .box-image_content {
        left: auto;
        right: 24px;
    }

    .rtl .box-image_V01.type-3 .box-image_content {
        left: auto;
        right: 32px;
    }

    .rtl .s-about .content-blog {
        padding-left: 0;
        padding-right: 24px;
    }

    .rtl .s-about .content-blog .box-intro {
        text-align: start;
    }

    .rtl .store-list .content.type-right {
        padding-left: unset;
        padding-right: 40px;
    }
}

@media (min-width: 1440px) {
    .rtl .store-list .content.type-right {
        padding-right: 80px;
        padding-left: 16px;
    }

    .rtl .banner-card_product .product-content {
        padding-left: 24px;
        padding-right: 0;
    }
}

@media (min-width: 1600px) {
    .rtl .tf-header.style-5 .header-right {
        margin-left: 0;
        margin-right: -48px;
    }

    .rtl .slideshow-container.width-2 {
        margin-left: unset;
        margin-right: auto;
    }

    .rtl .slideshow-container.width-3 {
        margin-left: unset;
        margin-right: auto;
    }
}

@media (max-width: 1199px) {
    .rtl .box-image_V01.type-3::after {
        background: linear-gradient(90deg, rgba(255, 255, 255, 0) 24.38%, #FFFfff 69.3%);
    }
}

@media (max-width: 575px) {
    .rtl .footer-heading-mobile {
        padding-right: 0px;
        padding-left: 20px;
    }

    .rtl .footer-heading-mobile::after {
        right: auto;
        left: 0;
    }

    .rtl .footer-heading-mobile::before {
        right: auto;
        left: 7px;
    }
}

#footer-logo {
    width: 120px;
    height: 100px;
}

.whatsapp-float {
    position: fixed;
    bottom: 220px;
    right: 20px;
    background: #25d366;
    color: #fff;
    font-size: 20px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 999;
}

.call-float {
    position: fixed;
    bottom: 150px;
    /* slightly above WhatsApp */
    right: 20px;
    background: #007bff;
    color: #fff;
    font-size: 15px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 999;
}

#top-logo {
    width: 60px;
    height: 50px;
    border-radius: 20px;
}

.call-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #d4af37;
    color: #fff;
    transition: 0.3s;
}

.call-btn:hover {
    background: #000;
    color: #fff;
}




@font-face {
    font-family: swiper-icons;
    src: url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

:host {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    z-index: 1
}

.swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
    display: block
}

.swiper-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    box-sizing: content-box
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
    transform: translate3d(0px, 0, 0)
}

.swiper-horizontal {
    touch-action: pan-y
}

.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform;
    display: block
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-3d {
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide {
    transform-style: preserve-3d
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper {
    scroll-snap-type: y mandatory
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
    scroll-snap-type: none
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: none
}

.swiper-css-mode.swiper-centered>.swiper-wrapper::before {
    content: '';
    flex-shrink: 0;
    order: 9999
}

.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper::before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper::before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after)
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
    0% {
        transform: rotate(0deg)
    }

    100% {
        transform: rotate(360deg)
    }
}

.swiper-virtual .swiper-slide {
    -webkit-backface-visibility: hidden;
    transform: translateZ(0)
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
    height: 1px;
    width: var(--swiper-virtual-size)
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
    width: 1px;
    height: var(--swiper-virtual-size)
}

:root {
    --swiper-navigation-size: 44px
}

.swiper-button-next,
.swiper-button-prev {
    position: absolute;
    top: var(--swiper-navigation-top-offset, 50%);
    width: calc(var(--swiper-navigation-size)/ 44 * 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0px - (var(--swiper-navigation-size)/ 2));
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color))
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-next.swiper-button-hidden,
.swiper-button-prev.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none
}

.swiper-navigation-disabled .swiper-button-next,
.swiper-navigation-disabled .swiper-button-prev {
    display: none !important
}

.swiper-button-next svg,
.swiper-button-prev svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform-origin: center
}

.swiper-rtl .swiper-button-next svg,
.swiper-rtl .swiper-button-prev svg {
    transform: rotate(180deg)
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 10px);
    right: auto
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 10px);
    left: auto
}

.swiper-button-lock {
    display: none
}

.swiper-button-next:after,
.swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none !important;
    letter-spacing: 0;
    font-variant: initial;
    line-height: 1
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
    content: 'prev'
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 10px);
    left: auto
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
    content: 'next'
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: .3s opacity;
    transform: translate3d(0, 0, 0);
    z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-pagination-disabled>.swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
    display: none !important
}

.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: var(--swiper-pagination-bottom, 8px);
    top: var(--swiper-pagination-top, auto);
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(.33);
    position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(.33)
}

.swiper-pagination-bullet {
    width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
    height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
    display: inline-block;
    border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
    background: var(--swiper-pagination-bullet-inactive-color, #000);
    opacity: var(--swiper-pagination-bullet-inactive-opacity, .2)
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet:only-child {
    display: none !important
}

.swiper-pagination-bullet-active {
    opacity: var(--swiper-pagination-bullet-opacity, 1);
    background: var(--swiper-pagination-color, var(--swiper-theme-color))
}

.swiper-pagination-vertical.swiper-pagination-bullets,
.swiper-vertical>.swiper-pagination-bullets {
    right: var(--swiper-pagination-right, 8px);
    left: var(--swiper-pagination-left, auto);
    top: 50%;
    transform: translate3d(0px, -50%, 0)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: .2s transform, .2s top
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px)
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: .2s transform, .2s left
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: .2s transform, .2s right
}

.swiper-pagination-fraction {
    color: var(--swiper-pagination-fraction-color, inherit)
}

.swiper-pagination-progressbar {
    background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}

.swiper-horizontal>.swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-vertical>.swiper-pagination-progressbar {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    position: relative;
    touch-action: none;
    background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, .1))
}

.swiper-scrollbar-disabled>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
    display: none !important
}

.swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
    position: absolute;
    left: var(--swiper-scrollbar-sides-offset, 1%);
    bottom: var(--swiper-scrollbar-bottom, 4px);
    top: var(--swiper-scrollbar-top, auto);
    z-index: 50;
    height: var(--swiper-scrollbar-size, 4px);
    width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%))
}

.swiper-scrollbar.swiper-scrollbar-vertical,
.swiper-vertical>.swiper-scrollbar {
    position: absolute;
    left: var(--swiper-scrollbar-left, auto);
    right: var(--swiper-scrollbar-right, 4px);
    top: var(--swiper-scrollbar-sides-offset, 1%);
    z-index: 50;
    width: var(--swiper-scrollbar-size, 4px);
    height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%))
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, .5));
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    left: 0;
    top: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center
}

.swiper-zoom-container>canvas,
.swiper-zoom-container>img,
.swiper-zoom-container>svg {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain
}

.swiper-slide-zoomed {
    cursor: move;
    touch-action: none
}

.swiper .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-free-mode>.swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-grid>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-grid-column>.swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column
}

.swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active {
    pointer-events: auto
}

.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube {
    overflow: visible
}

.swiper-cube .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

.swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-cube.swiper-rtl .swiper-slide {
    transform-origin: 100% 0
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 100%;
    opacity: .6;
    z-index: 0
}

.swiper-cube .swiper-cube-shadow:before {
    content: '';
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    filter: blur(50px)
}

.swiper-cube .swiper-slide-next+.swiper-slide {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-flip {
    overflow: visible
}

.swiper-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1
}

.swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-creative .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height
}

.swiper-cards {
    overflow: visible
}

.swiper-cards .swiper-slide {
    transform-origin: center bottom;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden
}

.modal-content {
    border-radius: 12px;
}

@media (max-width:768px) {
    .modal-content {
        border-radius: 6px;
    }
}


.modal-content {
    position: relative;
    overflow: hidden;
}

.gf {
    position: absolute;
    color: #C9A84C;
    opacity: 0;
    pointer-events: none;
    animation: gFloat 4s ease-in-out infinite;
}

.gf1 {
    bottom: 40px;
    left: 18px;
    animation-delay: 0s;
    font-size: 8px;
}

.gf2 {
    bottom: 60px;
    right: 22px;
    animation-delay: 1.4s;
    font-size: 11px;
}

.gf3 {
    bottom: 20px;
    left: 50%;
    animation-delay: 2.6s;
    font-size: 7px;
}

@keyframes gFloat {
    0% {
        opacity: 0;
        transform: translateY(0) rotate(0deg);
    }

    30% {
        opacity: 0.45;
    }

    100% {
        opacity: 0;
        transform: translateY(-55px) rotate(180deg);
    }
}

/* title row */
.modal-title-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* coin pulse */
.gold-icon {
    font-size: 22px;
    display: inline-block;
    animation: coinPulse 2.4s ease-in-out infinite;
}

@keyframes coinPulse {

    0%,
    100% {
        transform: scale(1) rotate(-4deg);
    }

    50% {
        transform: scale(1.15) rotate(4deg);
    }
}

/* gold divider */
.modal-header {
    position: relative;
}

.modal-header::after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 28px;
    right: 28px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(201, 168, 76, 0.5), transparent);
}

.live-update-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.live-indicator {
    display: flex;
    align-items: center;
    gap: 6px;
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.4);
    border-radius: 20px;
    padding: 4px 10px;
}

.live-dot {
    width: 9px;
    height: 9px;
    background-color: #22c55e;
    border-radius: 50%;
    display: inline-block;
    position: relative;
    animation: livePulse 1.5s ease-in-out infinite;
}

.live-dot::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background-color: #22c55e;
    animation: liveRipple 1.5s ease-out infinite;
}

.live-text {
    font-size: 11px;
    font-weight: 700;
    color: #22c55e;
    letter-spacing: 1.5px;
}

@keyframes livePulse {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
    }
}

@keyframes liveRipple {
    0% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 0.8;
    }

    100% {
        transform: translate(-50%, -50%) scale(2.8);
        opacity: 0;
    }
}

.mrg-wcu-section {
    padding: 48px 0;
    background: #fff;
}

.mrg-wcu-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

@media (max-width: 991px) {
    .mrg-wcu-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .mrg-wcu-grid {
        grid-template-columns: repeat(1, 1fr);
    }
}

.mrg-wcu-card {
    border: 1px solid rgba(212, 175, 55, 0.18);
    border-radius: 14px;
    padding: 26px 16px 22px;
    text-align: center;
    background: #fff;
    position: relative;
    box-shadow:
        0 2px 10px rgba(180, 140, 20, 0.07),
        0 5px 18px rgba(180, 140, 20, 0.05);
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
    overflow: hidden;
}

.mrg-wcu-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #d4af37, transparent);
    opacity: 0;
    transition: opacity 0.28s ease;
}

.mrg-wcu-card:hover {
    transform: translateY(-5px);
    border-color: rgba(212, 175, 55, 0.35);
    box-shadow:
        0 8px 24px rgba(180, 140, 20, 0.13),
        0 16px 40px rgba(180, 140, 20, 0.08);
}

.mrg-wcu-card:hover::before {
    opacity: 1;
}

/* icon circle */
.mrg-wcu-icon {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: linear-gradient(145deg, #fffdf0, #faefc4);
    border: 1px solid rgba(212, 175, 55, 0.30);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 12px;
    box-shadow:
        0 4px 14px rgba(212, 175, 55, 0.18),
        0 0 0 5px rgba(212, 175, 55, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.9);
    transition: background 0.28s ease, transform 0.28s ease, box-shadow 0.28s ease;
}

.mrg-wcu-card:hover .mrg-wcu-icon {
    background: linear-gradient(145deg, #fff8d0, #fde98a);
    transform: scale(1.08) translateY(-2px);
    box-shadow:
        0 8px 22px rgba(212, 175, 55, 0.28),
        0 0 0 7px rgba(212, 175, 55, 0.07),
        inset 0 1px 0 rgba(255, 255, 255, 0.95);
}

.mrg-wcu-icon svg {
    width: 28px;
    height: 28px;
    transition: transform 0.28s ease;
}

.mrg-wcu-card:hover .mrg-wcu-icon svg {
    transform: scale(1.1);
}

.mrg-wcu-title {

    color: #1a1200;
    margin: 0;
    line-height: 1.3;
}

.service-icon-wrap {
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #fff8e1, #f5d76e);
    border-radius: 50%;
    width: 100px !important;
    height: 100px !important;
    margin: 0 auto 18px;
    border: 2px solid #e6c45a;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
    transition: all .35s ease;
}

.service-icon {
    font-size: 34px;
    transition: transform .35s ease;
}

/* card hover */

.widget-collection {
    display: block;
    text-align: center;
    padding: 20px 15px;
    border-radius: 12px;
    transition: all .35s ease;
}

.widget-collection:hover {
    background: #fff;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.12);
    transform: translateY(-6px);
}

/* icon hover */

.widget-collection:hover .service-icon-wrap {
    background: linear-gradient(135deg, #ffe082, #f4c542);
    box-shadow: 0 10px 30px rgba(212, 175, 55, 0.35);
}

.widget-collection:hover .service-icon {
    transform: scale(1.15);
}

/* text */

.collection_name {
    font-weight: 600;
    margin-top: 10px;
}

.collection_count {
    font-size: 14px;
    line-height: 1.6;
}

#blog {
    background: #fff;
}

/* ── Card ── */
.mrg-blog-card {
    background: #fff;
    border-radius: 12px;
    border: 1px solid rgba(212, 175, 55, 0.16);
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(180, 140, 20, 0.07), 0 4px 16px rgba(180, 140, 20, 0.05);
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
    position: relative;
    cursor: pointer;
}

.mrg-blog-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #d4af37, transparent);
    opacity: 0;
    transition: opacity 0.28s ease;
    z-index: 2;
}

.mrg-blog-card:hover {
    transform: translateY(-6px);
    border-color: rgba(212, 175, 55, 0.32);
    box-shadow: 0 8px 22px rgba(180, 140, 20, 0.12), 0 16px 36px rgba(180, 140, 20, 0.07);
}

.mrg-blog-card:hover::before {
    opacity: 1;
}

/* ── Image ── */
.mrg-blog-img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 8;
    overflow: hidden;
    position: relative;
    background: #f5edd0;
}

.mrg-blog-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.45s ease;
}

.mrg-blog-card:hover .mrg-blog-img img {
    transform: scale(1.05);
}

/* date float */
.mrg-blog-date {
    position: absolute;
    bottom: 10px;
    left: 12px;
    background: rgba(10, 8, 0, 0.68);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border: 1px solid rgba(212, 175, 55, 0.32);
    border-radius: 5px;
    padding: 3px 9px;
    font-size: 10px;
    font-weight: 700;
    color: #d4af37;
    letter-spacing: 0.8px;
    z-index: 2;
}

/* ── Body ── */
.mrg-blog-body {
    padding: 14px 16px 16px;
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.mrg-blog-tag {
    display: inline-block;

    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #b8860b;
    background: rgba(212, 175, 55, 0.10);
    border: 1px solid rgba(212, 175, 55, 0.22);
    border-radius: 20px;
    padding: 2px 9px;
    width: fit-content;
}

.mrg-blog-title {

    font-weight: 700 !important;
    color: #1a1200 !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.25s ease;
}

.mrg-blog-card:hover .mrg-blog-title {
    color: #b8860b !important;
}

.mrg-blog-desc {

    color: #7a6535 !important;
    line-height: 1.6 !important;
    margin: 0 !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* read more */
.mrg-blog-link {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 700;
    color: #b8860b;
    letter-spacing: 0.5px;
    text-decoration: none;
    text-transform: uppercase;
    border-bottom: 1.5px solid rgba(180, 130, 0, 0.25);
    padding-bottom: 1px;
    width: fit-content;
    transition: gap 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}

.mrg-blog-link:hover {
    gap: 8px;
    color: #8a6200;
    border-color: #b8860b;
    text-decoration: none;
}

/* ── Pagination ── */
#blog .swiper-pagination-bullet {
    background: rgba(180, 140, 20, 0.25) !important;
    opacity: 1 !important;
    width: 7px !important;
    height: 7px !important;
}

#blog .swiper-pagination-bullet-active {
    background: #d4af37 !important;
    width: 22px !important;
    border-radius: 4px !important;
    transition: width 0.3s ease !important;
}