/*! PhotoSwipe main CSS by Dmytro Semenov | photoswipe.com */

.pswp {
    --pswp-bg: #000;
    --pswp-placeholder-bg: #222;


    --pswp-root-z-index: 100000;

    --pswp-preloader-color: rgba(79, 79, 79, 0.4);
    --pswp-preloader-color-secondary: rgba(255, 255, 255, 0.9);

    /* defined via js:
    --pswp-transition-duration: 333ms; */

    --pswp-icon-color: #fff;
    --pswp-icon-color-secondary: #4f4f4f;
    --pswp-icon-stroke-color: #4f4f4f;
    --pswp-icon-stroke-width: 2px;

    --pswp-error-text-color: var(--pswp-icon-color);
}


/*
	Styles for basic PhotoSwipe (pswp) functionality (sliding area, open/close transitions)
*/

.pswp {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: var(--pswp-root-z-index);
    display: none;
    touch-action: none;
    outline: 0;
    opacity: 0.003;
    contain: layout style size;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* Prevents focus outline on the root element,
  (it may be focused initially) */
.pswp:focus {
    outline: 0;
}

.pswp * {
    box-sizing: border-box;
}

.pswp img {
    max-width: none;
}

.pswp--open {
    display: block;
}

.pswp,
.pswp__bg {
    transform: translateZ(0);
    will-change: opacity;
}

.pswp__bg {
    opacity: 0.005;
    background: var(--pswp-bg);
}

.pswp,
.pswp__scroll-wrap {
    overflow: hidden;
}

.pswp__scroll-wrap,
.pswp__bg,
.pswp__container,
.pswp__item,
.pswp__content,
.pswp__img,
.pswp__zoom-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.pswp__img,
.pswp__zoom-wrap {
    width: auto;
    height: auto;
}

.pswp--click-to-zoom.pswp--zoom-allowed .pswp__img {
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
    cursor: zoom-in;
}

.pswp--click-to-zoom.pswp--zoomed-in .pswp__img {
    cursor: move;
    cursor: -webkit-grab;
    cursor: -moz-grab;
    cursor: grab;
}

.pswp--click-to-zoom.pswp--zoomed-in .pswp__img:active {
    cursor: -webkit-grabbing;
    cursor: -moz-grabbing;
    cursor: grabbing;
}

/* :active to override grabbing cursor */
.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img,
.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img:active,
.pswp__img {
    cursor: -webkit-zoom-out;
    cursor: -moz-zoom-out;
    cursor: zoom-out;
}


/* Prevent selection and tap highlights */
.pswp__container,
.pswp__img,
.pswp__button,
.pswp__counter {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.pswp__item {
    /* z-index for fade transition */
    z-index: 1;
    overflow: hidden;
}

.pswp__hidden {
    display: none !important;
}

/* Allow to click through pswp__content element, but not its children */
.pswp__content {
    pointer-events: none;
}
.pswp__content > * {
    pointer-events: auto;
}


/*

  PhotoSwipe UI

*/

/*
	Error message appears when image is not loaded
	(JS option errorMsg controls markup)
*/
.pswp__error-msg-container {
    display: grid;
}
.pswp__error-msg {
    margin: auto;
    font-size: 1em;
    line-height: 1;
    color: var(--pswp-error-text-color);
}

/*
class pswp__hide-on-close is applied to elements that
should hide (for example fade out) when PhotoSwipe is closed
and show (for example fade in) when PhotoSwipe is opened
 */
.pswp .pswp__hide-on-close {
    opacity: 0.005;
    will-change: opacity;
    transition: opacity var(--pswp-transition-duration) cubic-bezier(0.4, 0, 0.22, 1);
    z-index: 10; /* always overlap slide content */
    pointer-events: none; /* hidden elements should not be clickable */
}

/* class pswp--ui-visible is added when opening or closing transition starts */
.pswp--ui-visible .pswp__hide-on-close {
    opacity: 1;
    pointer-events: auto;
}

/* <button> styles, including css reset */
.pswp__button {
    position: relative;
    display: block;
    width: 50px;
    height: 60px;
    padding: 0;
    margin: 0;
    overflow: hidden;
    cursor: pointer;
    background: none;
    border: 0;
    box-shadow: none;
    opacity: 0.85;
    -webkit-appearance: none;
    -webkit-touch-callout: none;
}

.pswp__button:hover,
.pswp__button:active,
.pswp__button:focus {
    transition: none;
    padding: 0;
    background: none;
    border: 0;
    box-shadow: none;
    opacity: 1;
}

.pswp__button:disabled {
    opacity: 0.3;
    cursor: auto;
}

.pswp__icn {
    fill: var(--pswp-icon-color);
    color: var(--pswp-icon-color-secondary);
}

.pswp__icn {
    position: absolute;
    top: 14px;
    left: 9px;
    width: 32px;
    height: 32px;
    overflow: hidden;
    pointer-events: none;
}

.pswp__icn-shadow {
    stroke: var(--pswp-icon-stroke-color);
    stroke-width: var(--pswp-icon-stroke-width);
    fill: none;
}

.pswp__icn:focus {
    outline: 0;
}

/*
	div element that matches size of large image,
	large image loads on top of it,
	used when msrc is not provided
*/
div.pswp__img--placeholder,
.pswp__img--with-bg {
    background: var(--pswp-placeholder-bg);
}

.pswp__top-bar {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 60px;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    z-index: 10;

    /* allow events to pass through top bar itself */
    pointer-events: none !important;
}
.pswp__top-bar > * {
    pointer-events: auto;
    /* this makes transition significantly more smooth,
       even though inner elements are not animated */
    will-change: opacity;
}


/*

  Close button

*/
.pswp__button--close {
    margin-right: 6px;
}


/*

  Arrow buttons

*/
.pswp__button--arrow {
    position: absolute;
    top: 0;
    width: 75px;
    height: 100px;
    top: 50%;
    margin-top: -50px;
}

.pswp__button--arrow:disabled {
    display: none;
    cursor: default;
}

.pswp__button--arrow .pswp__icn {
    top: 50%;
    margin-top: -30px;
    width: 60px;
    height: 60px;
    background: none;
    border-radius: 0;
}

.pswp--one-slide .pswp__button--arrow {
    display: none;
}

/* hide arrows on touch screens */
.pswp--touch .pswp__button--arrow {
    visibility: hidden;
}

/* show arrows only after mouse was used */
.pswp--has_mouse .pswp__button--arrow {
    visibility: visible;
}

.pswp__button--arrow--prev {
    right: auto;
    left: 0px;
}

.pswp__button--arrow--next {
    right: 0px;
}
.pswp__button--arrow--next .pswp__icn {
    left: auto;
    right: 14px;
    /* flip horizontally */
    transform: scale(-1, 1);
}

/*

  Zoom button

*/
.pswp__button--zoom {
    display: none;
}

.pswp--zoom-allowed .pswp__button--zoom {
    display: block;
}

/* "+" => "-" */
.pswp--zoomed-in .pswp__zoom-icn-bar-v {
    display: none;
}


/*

  Loading indicator

*/
.pswp__preloader {
    position: relative;
    overflow: hidden;
    width: 50px;
    height: 60px;
    margin-right: auto;
}

.pswp__preloader .pswp__icn {
    opacity: 0;
    transition: opacity 0.2s linear;
    animation: pswp-clockwise 600ms linear infinite;
}

.pswp__preloader--active .pswp__icn {
    opacity: 0.85;
}

@keyframes pswp-clockwise {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}


/*

  "1 of 10" counter

*/
.pswp__counter {
    height: 30px;
    margin-top: 15px;
    margin-inline-start: 20px;
    font-size: 14px;
    line-height: 30px;
    color: var(--pswp-icon-color);
    text-shadow: 1px 1px 3px var(--pswp-icon-color-secondary);
    opacity: 0.85;
}

.pswp--one-slide .pswp__counter {
    display: none;
}
@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
@import url("https://fonts.cdnfonts.com/css/helvetica-neue-55");
/*!
 * Bootstrap-select v1.13.14 (https://developer.snapappointments.com/bootstrap-select)
 *
 * Copyright 2012-2020 SnapAppointments, LLC
 * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE)
 */
@-webkit-keyframes bs-notify-fadeOut {
    0% {
        opacity: 0.9;
    }

    100% {
        opacity: 0;
    }
}
@-o-keyframes bs-notify-fadeOut {
    0% {
        opacity: 0.9;
    }

    100% {
        opacity: 0;
    }
}
@keyframes bs-notify-fadeOut {
    0% {
        opacity: 0.9;
    }

    100% {
        opacity: 0;
    }
}
.bootstrap-select > select.bs-select-hidden,
select.bs-select-hidden,
select.selectpicker {
    display: none !important;
}
.bootstrap-select {
    width: 220px;
    vertical-align: middle;
}
.bootstrap-select > .dropdown-toggle {
    position: relative;
    width: 100%;
    text-align: right;
    white-space: nowrap;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.bootstrap-select > .dropdown-toggle:after {
    margin-top: -1px;
}
.bootstrap-select > .dropdown-toggle.bs-placeholder,
.bootstrap-select > .dropdown-toggle.bs-placeholder:active,
.bootstrap-select > .dropdown-toggle.bs-placeholder:focus,
.bootstrap-select > .dropdown-toggle.bs-placeholder:hover {
    color: #999;
}
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-danger,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-danger:active,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-danger:focus,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-danger:hover,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-dark,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-dark:active,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-dark:focus,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-dark:hover,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-info,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-info:active,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-info:focus,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-info:hover,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-primary,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-primary:active,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-primary:focus,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-primary:hover,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-secondary,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-secondary:active,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-secondary:focus,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-secondary:hover,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-success,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-success:active,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-success:focus,
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-success:hover {
    color: rgba(255, 255, 255, 0.5);
}
.bootstrap-select > select {
    position: absolute !important;
    bottom: 0;
    left: 50%;
    display: block !important;
    width: 0.5px !important;
    height: 100% !important;
    padding: 0 !important;
    opacity: 0 !important;
    border: none;
    z-index: 0 !important;
}
.bootstrap-select > select.mobile-device {
    top: 0;
    left: 0;
    display: block !important;
    width: 100% !important;
    z-index: 2 !important;
}
.bootstrap-select.is-invalid .dropdown-toggle,
.error .bootstrap-select .dropdown-toggle,
.has-error .bootstrap-select .dropdown-toggle,
.was-validated .bootstrap-select select:invalid + .dropdown-toggle {
    border-color: #b94a48;
}
.bootstrap-select.is-valid .dropdown-toggle,
.was-validated .bootstrap-select select:valid + .dropdown-toggle {
    border-color: #28a745;
}
.bootstrap-select.fit-width {
    width: auto !important;
}
.bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
    width: 220px;
}
.bootstrap-select .dropdown-toggle:focus,
.bootstrap-select > select.mobile-device:focus + .dropdown-toggle {
    outline: thin dotted #333 !important;
    outline: 5px auto -webkit-focus-ring-color !important;
    outline-offset: -2px;
}
.bootstrap-select.form-control {
    margin-bottom: 0;
    padding: 0;
    border: none;
    height: auto;
}
:not(.input-group) > .bootstrap-select.form-control:not([class*="col-"]) {
    width: 100%;
}
.bootstrap-select.form-control.input-group-btn {
    float: none;
    z-index: auto;
}
.form-inline .bootstrap-select,
.form-inline .bootstrap-select.form-control:not([class*="col-"]) {
    width: auto;
}
.bootstrap-select:not(.input-group-btn),
.bootstrap-select[class*="col-"] {
    float: none;
    display: inline-block;
    margin-left: 0;
}
.bootstrap-select.dropdown-menu-right,
.bootstrap-select[class*="col-"].dropdown-menu-right,
.row .bootstrap-select[class*="col-"].dropdown-menu-right {
    float: right;
}
.form-group .bootstrap-select,
.form-horizontal .bootstrap-select,
.form-inline .bootstrap-select {
    margin-bottom: 0;
}
.form-group-lg .bootstrap-select.form-control,
.form-group-sm .bootstrap-select.form-control {
    padding: 0;
}
.form-group-lg .bootstrap-select.form-control .dropdown-toggle,
.form-group-sm .bootstrap-select.form-control .dropdown-toggle {
    height: 100%;
    font-size: inherit;
    line-height: inherit;
    border-radius: inherit;
}
.bootstrap-select.form-control-lg .dropdown-toggle,
.bootstrap-select.form-control-sm .dropdown-toggle {
    font-size: inherit;
    line-height: inherit;
    border-radius: inherit;
}
.bootstrap-select.form-control-sm .dropdown-toggle {
    padding: 0.25rem 0.5rem;
}
.bootstrap-select.form-control-lg .dropdown-toggle {
    padding: 0.5rem 1rem;
}
.form-inline .bootstrap-select .form-control {
    width: 100%;
}
.bootstrap-select.disabled,
.bootstrap-select > .disabled {
    cursor: not-allowed;
}
.bootstrap-select.disabled:focus,
.bootstrap-select > .disabled:focus {
    outline: 0 !important;
}
.bootstrap-select.bs-container {
    position: absolute;
    top: 0;
    left: 0;
    height: 0 !important;
    padding: 0 !important;
}
.bootstrap-select.bs-container .dropdown-menu {
    z-index: 1060;
}
.bootstrap-select .dropdown-toggle .filter-option {
    position: static;
    top: 0;
    left: 0;
    float: left;
    height: 100%;
    width: 100%;
    text-align: left;
    overflow: hidden;
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
}
.bs3.bootstrap-select .dropdown-toggle .filter-option {
    padding-right: inherit;
}
.input-group .bs3-has-addon.bootstrap-select .dropdown-toggle .filter-option {
    position: absolute;
    padding-top: inherit;
    padding-bottom: inherit;
    padding-left: inherit;
    float: none;
}
.input-group .bs3-has-addon.bootstrap-select .dropdown-toggle .filter-option .filter-option-inner {
    padding-right: inherit;
}
.bootstrap-select .dropdown-toggle .filter-option-inner-inner {
    overflow: hidden;
}
.bootstrap-select .dropdown-toggle .filter-expand {
    width: 0 !important;
    float: left;
    opacity: 0 !important;
    overflow: hidden;
}
.bootstrap-select .dropdown-toggle .caret {
    position: absolute;
    top: 50%;
    right: 12px;
    margin-top: -2px;
    vertical-align: middle;
}
.input-group .bootstrap-select.form-control .dropdown-toggle {
    border-radius: inherit;
}
.bootstrap-select[class*="col-"] .dropdown-toggle {
    width: 100%;
}
.bootstrap-select .dropdown-menu {
    min-width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.bootstrap-select .dropdown-menu > .inner:focus {
    outline: 0 !important;
}
.bootstrap-select .dropdown-menu.inner {
    position: static;
    float: none;
    border: 0;
    padding: 0;
    margin: 0;
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.bootstrap-select .dropdown-menu li {
    position: relative;
}
.bootstrap-select .dropdown-menu li.active small {
    color: rgba(255, 255, 255, 0.5) !important;
}
.bootstrap-select .dropdown-menu li.disabled a {
    cursor: not-allowed;
}
.bootstrap-select .dropdown-menu li a {
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.bootstrap-select .dropdown-menu li a.opt {
    position: relative;
    padding-left: 2.25em;
}
.bootstrap-select .dropdown-menu li a span.check-mark {
    display: none;
}
.bootstrap-select .dropdown-menu li a span.text {
    display: inline-block;
}
.bootstrap-select .dropdown-menu li small {
    padding-left: 0.5em;
}
.bootstrap-select .dropdown-menu .notify {
    position: absolute;
    bottom: 5px;
    width: 96%;
    margin: 0 2%;
    min-height: 26px;
    padding: 3px 5px;
    background: #f5f5f5;
    border: 1px solid #e3e3e3;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
    pointer-events: none;
    opacity: 0.9;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.bootstrap-select .dropdown-menu .notify.fadeOut {
    -webkit-animation: 0.3s linear 750ms forwards bs-notify-fadeOut;
    -o-animation: 0.3s linear 750ms forwards bs-notify-fadeOut;
    animation: 0.3s linear 750ms forwards bs-notify-fadeOut;
}
.bootstrap-select .no-results {
    padding: 3px;
    background: #f5f5f5;
    margin: 0 5px;
    white-space: nowrap;
}
.bootstrap-select.fit-width .dropdown-toggle .filter-option {
    position: static;
    display: inline;
    padding: 0;
}
.bootstrap-select.fit-width .dropdown-toggle .filter-option-inner,
.bootstrap-select.fit-width .dropdown-toggle .filter-option-inner-inner {
    display: inline;
}
.bootstrap-select.fit-width .dropdown-toggle .bs-caret:before {
    content: "\00a0";
}
.bootstrap-select.fit-width .dropdown-toggle .caret {
    position: static;
    top: auto;
    margin-top: -1px;
}
.bootstrap-select.show-tick .dropdown-menu .selected span.check-mark {
    position: absolute;
    display: inline-block;
    right: 15px;
    top: 5px;
}
.bootstrap-select.show-tick .dropdown-menu li a span.text {
    margin-right: 34px;
}
.bootstrap-select .bs-ok-default:after {
    content: "";
    display: block;
    width: 0.5em;
    height: 1em;
    border-style: solid;
    border-width: 0 0.26em 0.26em 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}
.bootstrap-select.show-menu-arrow.open > .dropdown-toggle,
.bootstrap-select.show-menu-arrow.show > .dropdown-toggle {
    z-index: 1061;
}
.bootstrap-select.show-menu-arrow .dropdown-toggle .filter-option:before {
    content: "";
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-bottom: 7px solid rgba(204, 204, 204, 0.2);
    position: absolute;
    bottom: -4px;
    left: 9px;
    display: none;
}
.bootstrap-select.show-menu-arrow .dropdown-toggle .filter-option:after {
    content: "";
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #fff;
    position: absolute;
    bottom: -4px;
    left: 10px;
    display: none;
}
.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle .filter-option:before {
    bottom: auto;
    top: -4px;
    border-top: 7px solid rgba(204, 204, 204, 0.2);
    border-bottom: 0;
}
.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle .filter-option:after {
    bottom: auto;
    top: -4px;
    border-top: 6px solid #fff;
    border-bottom: 0;
}
.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle .filter-option:before {
    right: 12px;
    left: auto;
}
.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle .filter-option:after {
    right: 13px;
    left: auto;
}
.bootstrap-select.show-menu-arrow.open > .dropdown-toggle .filter-option:after,
.bootstrap-select.show-menu-arrow.open > .dropdown-toggle .filter-option:before,
.bootstrap-select.show-menu-arrow.show > .dropdown-toggle .filter-option:after,
.bootstrap-select.show-menu-arrow.show > .dropdown-toggle .filter-option:before {
    display: block;
}
.bs-actionsbox,
.bs-donebutton,
.bs-searchbox {
    padding: 4px 8px;
}
.bs-actionsbox {
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.bs-actionsbox .btn-group button {
    width: 50%;
}
.bs-donebutton {
    float: left;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.bs-donebutton .btn-group button {
    width: 100%;
}
.bs-searchbox + .bs-actionsbox {
    padding: 0 8px 4px;
}
.bs-searchbox .form-control {
    margin-bottom: 0;
    width: 100%;
    float: none;
}
@font-face {
    font-family: "MADE Outer";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("outer-regular.otf");
}
@font-face {
    font-family: "MADE Outer";
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("outer-medium.otf");
}
@font-face {
    font-family: "MADE Outer";
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("outer-bold.otf");
}
@font-face {
    font-family: "MADE Outer";
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url("outer-light.otf");
}
@font-face {
    font-family: "MADE Outer";
    font-style: normal;
    font-weight: 200;
    font-display: swap;
    src: url("outer-thin.otf");
}
/* UTM */
@font-face {
    font-family: "UTM Banque";
    font-style: normal;
    font-weight: normal;
    font-display: swap;
    src: url("UTM-BanqueRegular.ttf");
}
@font-face {
    font-family: "UTM Banque";
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("UTM-BanqueMedium.ttf");
}
/* Helvetica Neue  ultr-light thin light roman medium bold heavy black*/
/* @font-face {
    font-family: "Helvetica Neue";
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url("HelveticaNeueUltraLight.otf");
}
@font-face {
    font-family: "Helvetica Neue";
    font-style: normal;
    font-weight: 200;
    font-display: swap;
    src: url("HelveticaNeueThin.otf");
}
@font-face {
    font-family: "Helvetica Neue";
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url("HelveticaNeueLight.otf");
}
@font-face {
    font-family: "Helvetica Neue";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("HelveticaNeueRoman.otf");
}
@font-face {
    font-family: "Helvetica Neue";
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("HelveticaNeueMedium.otf");
}
@font-face {
    font-family: "Helvetica Neue";
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url("HelveticaNeueBold.otf");
}
@font-face {
    font-family: "Helvetica Neue";
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("HelveticaNeueHeavy.otf");
}
@font-face {
    font-family: "Helvetica Neue";
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url("HelveticaNeueBlack.otf");
} */
@font-face {
    font-family: "icomoon";
    src: url("../icons/icomoon/fonts/icomoon.eot?amwch6");
    src: url("../icons/icomoon/fonts/icomoon.eot?amwch6#iefix") format("embedded-opentype"), url("../icons/icomoon/fonts/icomoon.ttf?amwch6") format("truetype"), url("../icons/icomoon/fonts/icomoon.woff?amwch6") format("woff"), url("../icons/icomoon/fonts/icomoon.svg?amwch6#icomoon") format("svg");
    font-weight: normal;
    font-style: normal;
    font-display: block;
}
[class^=icon-],
[class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: "icomoon" !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.icon-arrow-right1:before {
    content: "\e93d";
}
.icon-sidebar:before {
    content: "\e928";
}
.icon-x:before {
    content: "\e943";
}
.icon-compare1:before {
    content: "\e956";
}
.icon-heart2:before {
    content: "\e957";
}
.icon-view:before {
    content: "\e958";
}
.icon-cart2:before {
    content: "\e959";
}
.icon-trash:before {
    content: "\e975";
}
.icon-close:before {
    content: "\e91d";
}
.icon-user-3:before {
    content: "\e944";
    color: #73787d;
}
.icon-user-21:before {
    content: "\e942";
}
.icon-list-2:before {
    content: "\e93e";
}
.icon-list-1:before {
    content: "\e93f";
}
.icon-dot-line:before {
    content: "\e940";
}
.icon-sort:before {
    content: "\e941";
}
.icon-circle-chevron-right:before {
    content: "\e939";
}
.icon-shop-cart-2:before {
    content: "\e93a";
}
.icon-shop-cart-1:before {
    content: "\e93b";
}
.icon-shop-cart-3:before {
    content: "\e93c";
}
.icon-quote:before {
    content: "\e938";
}
.icon-minus:before {
    content: "\e937";
}
.icon-cart-2:before {
    content: "\e933";
}
.icon-check:before {
    content: "\e934";
}
.icon-plus:before {
    content: "\e935";
}
.icon-star:before {
    content: "\e936";
}
.icon-check-3:before {
    content: "\e91e";
}
.icon-delivery-2:before {
    content: "\e91f";
}
.icon-headphone-2:before {
    content: "\e920";
}
.icon-hearth:before {
    content: "\e921";
}
.icon-jewelry:before {
    content: "\e922";
}
.icon-machine:before {
    content: "\e923";
}
.icon-payment:before {
    content: "\e924";
}
.icon-reliable:before {
    content: "\e925";
}
.icon-sofa:before {
    content: "\e926";
}
.icon-support-2:before {
    content: "\e927";
}
.icon-tool:before {
    content: "\e929";
}
.icon-user-2:before {
    content: "\e92a";
}
.icon-arrow-right-circle:before {
    content: "\e92b";
}
.icon-automative:before {
    content: "\e92c";
}
.icon-beauti:before {
    content: "\e92d";
}
.icon-best-seller:before {
    content: "\e92e";
}
.icon-clothing:before {
    content: "\e92f";
}
.icon-compare:before {
    content: "\e930";
}
.icon-computer:before {
    content: "\e931";
}
.icon-computer-wifi:before {
    content: "\e932";
}
.icon-menu-dots:before {
    content: "\e91c";
}
.icon-facebook-2:before {
    content: "\e91a";
}
.icon-google:before {
    content: "\e91b";
}
.icon-folder:before {
    content: "\e900";
}
.icon-arrow-left-lg:before {
    content: "\e901";
}
.icon-fire:before {
    content: "\e902";
}
.icon-arrow-right-lg:before {
    content: "\e903";
}
.icon-budget:before {
    content: "\e904";
}
.icon-cart:before {
    content: "\e905";
}
.icon-clock:before {
    content: "\e906";
}
.icon-check-2:before {
    content: "\e907";
}
.icon-delivery:before {
    content: "\e908";
}
.icon-direction:before {
    content: "\e909";
}
.icon-facebook:before {
    content: "\e90a";
}
.icon-global:before {
    content: "\e90b";
}
.icon-headphone:before {
    content: "\e90c";
}
.icon-instagram:before {
    content: "\e90d";
}
.icon-linkin:before {
    content: "\e90e";
}
.icon-location:before {
    content: "\e90f";
}
.icon-money-bag:before {
    content: "\e910";
}
.icon-phone:before {
    content: "\e911";
}
.icon-search:before {
    content: "\e912";
}
.icon-shield:before {
    content: "\e913";
}
.icon-twitter:before {
    content: "\e914";
}
.icon-user:before {
    content: "\e915";
}
.icon-whatapp:before {
    content: "\e916";
}
.icon-accept:before {
    content: "\e917";
}
.icon-arrow-down:before {
    content: "\e918";
}
.icon-arrow-right:before {
    content: "\e919";
}
/*!
* Bootstrap  v5.3.3 (https://getbootstrap.com/)
* Copyright 2011-2024 The Bootstrap Authors
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
*/
: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;
}
[data-bs-theme=dark] {
    color-scheme: dark;
    --bs-body-color: #dee2e6;
    --bs-body-color-rgb: 222, 226, 230;
    --bs-body-bg: #212529;
    --bs-body-bg-rgb: 33, 37, 41;
    --bs-emphasis-color: #fff;
    --bs-emphasis-color-rgb: 255, 255, 255;
    --bs-secondary-color: rgba(222, 226, 230, 0.75);
    --bs-secondary-color-rgb: 222, 226, 230;
    --bs-secondary-bg: #343a40;
    --bs-secondary-bg-rgb: 52, 58, 64;
    --bs-tertiary-color: rgba(222, 226, 230, 0.5);
    --bs-tertiary-color-rgb: 222, 226, 230;
    --bs-tertiary-bg: #2b3035;
    --bs-tertiary-bg-rgb: 43, 48, 53;
    --bs-primary-text-emphasis: #6ea8fe;
    --bs-secondary-text-emphasis: #a7acb1;
    --bs-success-text-emphasis: #75b798;
    --bs-info-text-emphasis: #6edff6;
    --bs-warning-text-emphasis: #ffda6a;
    --bs-danger-text-emphasis: #ea868f;
    --bs-light-text-emphasis: #f8f9fa;
    --bs-dark-text-emphasis: #dee2e6;
    --bs-primary-bg-subtle: #031633;
    --bs-secondary-bg-subtle: #161719;
    --bs-success-bg-subtle: #051b11;
    --bs-info-bg-subtle: #032830;
    --bs-warning-bg-subtle: #332701;
    --bs-danger-bg-subtle: #2c0b0e;
    --bs-light-bg-subtle: #343a40;
    --bs-dark-bg-subtle: #1a1d20;
    --bs-primary-border-subtle: #084298;
    --bs-secondary-border-subtle: #41464b;
    --bs-success-border-subtle: #0f5132;
    --bs-info-border-subtle: #087990;
    --bs-warning-border-subtle: #997404;
    --bs-danger-border-subtle: #842029;
    --bs-light-border-subtle: #495057;
    --bs-dark-border-subtle: #343a40;
    --bs-heading-color: inherit;
    --bs-link-color: #6ea8fe;
    --bs-link-hover-color: #8bb9fe;
    --bs-link-color-rgb: 110, 168, 254;
    --bs-link-hover-color-rgb: 139, 185, 254;
    --bs-code-color: #e685b5;
    --bs-highlight-color: #dee2e6;
    --bs-highlight-bg: #664d03;
    --bs-border-color: #495057;
    --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
    --bs-form-valid-color: #75b798;
    --bs-form-valid-border-color: #75b798;
    --bs-form-invalid-color: #ea868f;
    --bs-form-invalid-border-color: #ea868f;
}
*,
::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;
}
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;
}
dt {
    font-weight: 700;
}
dd {
    margin-bottom: 0.5rem;
    margin-left: 0;
}
blockquote {
    margin: 0 0 1rem;
}
b,
strong {
    font-weight: bolder;
}
.small,
small {
    font-size: 0.875em;
}
.mark,
mark {
    padding: 0.1875em;
    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: 1400px) {
    .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: 1400px;
}
.row {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(-1 * var(--bs-gutter-y));
    margin-right: calc(-0.5 * var(--bs-gutter-x));
    margin-left: calc(-0.5 * var(--bs-gutter-x));
}
.row > * {
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    margin-top: var(--bs-gutter-y);
}
.col {
    flex: 1 0 0%;
}
.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: 1400px) {
    .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;
    }
}
.table {
    --bs-table-color-type: initial;
    --bs-table-bg-type: initial;
    --bs-table-color-state: initial;
    --bs-table-bg-state: initial;
    --bs-table-color: var(--bs-emphasis-color);
    --bs-table-bg: var(--bs-body-bg);
    --bs-table-border-color: var(--bs-border-color);
    --bs-table-accent-bg: transparent;
    --bs-table-striped-color: var(--bs-emphasis-color);
    --bs-table-striped-bg: rgba(var(--bs-emphasis-color-rgb), 0.05);
    --bs-table-active-color: var(--bs-emphasis-color);
    --bs-table-active-bg: rgba(var(--bs-emphasis-color-rgb), 0.1);
    --bs-table-hover-color: var(--bs-emphasis-color);
    --bs-table-hover-bg: rgba(var(--bs-emphasis-color-rgb), 0.075);
    width: 100%;
    margin-bottom: 1rem;
    vertical-align: top;
    border-color: var(--bs-table-border-color);
}
.table > :not(caption) > * > * {
    padding: 0.5rem 0.5rem;
    color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));
    background-color: var(--bs-table-bg);
    border-bottom-width: var(--bs-border-width);
    box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));
}
.table > tbody {
    vertical-align: inherit;
}
.table > thead {
    vertical-align: bottom;
}
.table-group-divider {
    border-top: calc(var(--bs-border-width) * 2) solid currentcolor;
}
.caption-top {
    caption-side: top;
}
.table-sm > :not(caption) > * > * {
    padding: 0.25rem 0.25rem;
}
.table-bordered > :not(caption) > * {
    border-width: var(--bs-border-width) 0;
}
.table-bordered > :not(caption) > * > * {
    border-width: 0 var(--bs-border-width);
}
.table-borderless > :not(caption) > * > * {
    border-bottom-width: 0;
}
.table-borderless > :not(:first-child) {
    border-top-width: 0;
}
.table-striped > tbody > tr:nth-of-type(odd) > * {
    --bs-table-color-type: var(--bs-table-striped-color);
    --bs-table-bg-type: var(--bs-table-striped-bg);
}
.table-striped-columns > :not(caption) > tr > :nth-child(2n) {
    --bs-table-color-type: var(--bs-table-striped-color);
    --bs-table-bg-type: var(--bs-table-striped-bg);
}
.table-active {
    --bs-table-color-state: var(--bs-table-active-color);
    --bs-table-bg-state: var(--bs-table-active-bg);
}
.table-hover > tbody > tr:hover > * {
    --bs-table-color-state: var(--bs-table-hover-color);
    --bs-table-bg-state: var(--bs-table-hover-bg);
}
.table-primary {
    --bs-table-color: #000;
    --bs-table-bg: #cfe2ff;
    --bs-table-border-color: #a6b5cc;
    --bs-table-striped-bg: #c5d7f2;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #bacbe6;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #bfd1ec;
    --bs-table-hover-color: #000;
    color: var(--bs-table-color);
    border-color: var(--bs-table-border-color);
}
.table-secondary {
    --bs-table-color: #000;
    --bs-table-bg: #e2e3e5;
    --bs-table-border-color: #b5b6b7;
    --bs-table-striped-bg: #d7d8da;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #cbccce;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #d1d2d4;
    --bs-table-hover-color: #000;
    color: var(--bs-table-color);
    border-color: var(--bs-table-border-color);
}
.table-success {
    --bs-table-color: #000;
    --bs-table-bg: #d1e7dd;
    --bs-table-border-color: #a7b9b1;
    --bs-table-striped-bg: #c7dbd2;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #bcd0c7;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #c1d6cc;
    --bs-table-hover-color: #000;
    color: var(--bs-table-color);
    border-color: var(--bs-table-border-color);
}
.table-info {
    --bs-table-color: #000;
    --bs-table-bg: #cff4fc;
    --bs-table-border-color: #a6c3ca;
    --bs-table-striped-bg: #c5e8ef;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #badce3;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #bfe2e9;
    --bs-table-hover-color: #000;
    color: var(--bs-table-color);
    border-color: var(--bs-table-border-color);
}
.table-warning {
    --bs-table-color: #000;
    --bs-table-bg: #fff3cd;
    --bs-table-border-color: #ccc2a4;
    --bs-table-striped-bg: #f2e7c3;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #e6dbb9;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #ece1be;
    --bs-table-hover-color: #000;
    color: var(--bs-table-color);
    border-color: var(--bs-table-border-color);
}
.table-danger {
    --bs-table-color: #000;
    --bs-table-bg: #f8d7da;
    --bs-table-border-color: #c6acae;
    --bs-table-striped-bg: #eccccf;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #dfc2c4;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #e5c7ca;
    --bs-table-hover-color: #000;
    color: var(--bs-table-color);
    border-color: var(--bs-table-border-color);
}
.table-light {
    --bs-table-color: #000;
    --bs-table-bg: #f8f9fa;
    --bs-table-border-color: #c6c7c8;
    --bs-table-striped-bg: #ecedee;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #dfe0e1;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #e5e6e7;
    --bs-table-hover-color: #000;
    color: var(--bs-table-color);
    border-color: var(--bs-table-border-color);
}
.table-dark {
    --bs-table-color: #fff;
    --bs-table-bg: #212529;
    --bs-table-border-color: #4d5154;
    --bs-table-striped-bg: #2c3034;
    --bs-table-striped-color: #fff;
    --bs-table-active-bg: #373b3e;
    --bs-table-active-color: #fff;
    --bs-table-hover-bg: #323539;
    --bs-table-hover-color: #fff;
    color: var(--bs-table-color);
    border-color: var(--bs-table-border-color);
}
.table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
@media (max-width: 575.98px) {
    .table-responsive-sm {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}
@media (max-width: 767.98px) {
    .table-responsive-md {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}
@media (max-width: 991.98px) {
    .table-responsive-lg {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}
@media (max-width: 1199.98px) {
    .table-responsive-xl {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}
@media (max-width: 1399.98px) {
    .table-responsive-xxl {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}
.form-label {
    margin-bottom: 0.5rem;
}
.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 + 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 + 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 + var(--bs-border-width) * 2);
}
textarea.form-control-sm {
    min-height: calc(1.5em + 0.5rem + var(--bs-border-width) * 2);
}
textarea.form-control-lg {
    min-height: calc(1.5em + 1rem + var(--bs-border-width) * 2);
}
.form-control-color {
    width: 3rem;
    height: calc(1.5em + 0.75rem + 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 + var(--bs-border-width) * 2);
}
.form-control-color.form-control-lg {
    height: calc(1.5em + 1rem + 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 + var(--bs-border-width) * 2);
    min-height: calc(3.5rem + 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 + 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 + 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-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-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-check:checked:focus-visible + .btn {
    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-outline-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: 1400px) {
    .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='none' stroke='%23212529' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%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='none' stroke='%23052c65' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e");
    --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;
    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-header .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-header .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-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-header .accordion-button,
.accordion-flush > .accordion-item > .accordion-header .accordion-button.collapsed {
    border-radius: 0;
}
.accordion-flush > .accordion-item > .accordion-collapse {
    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, "/");
}
.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: 1400px) {
    .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;
    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: 1400px) {
    .offcanvas-xxl {
        --bs-offcanvas-height: auto;
        --bs-offcanvas-border-width: 0;
        background-color: transparent !important;
    }
    .offcanvas-xxl .offcanvas-header {
        display: none;
    }
    .offcanvas-xxl .offcanvas-body {
        display: flex;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
        background-color: transparent !important;
    }
}
.offcanvas {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
}
@media (prefers-reduced-motion: reduce) {
    .offcanvas {
        transition: none;
    }
}
.offcanvas.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
}
.offcanvas.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
}
.offcanvas.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
}
.offcanvas.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
}
.offcanvas.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;
    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: calc(-0.5 * var(--bs-offcanvas-padding-y)) calc(-0.5 * var(--bs-offcanvas-padding-x)) calc(-0.5 * var(--bs-offcanvas-padding-y)) auto;
}
.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: 1400px) {
    .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;
    }
}
/**
 * Swiper 11.0.5
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2023 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: November 22, 2023
 */
@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, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 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, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 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, 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: 0.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: 0.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(0.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(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(0.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, 0.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: 0.2s transform, 0.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: 0.2s transform, 0.2s left;
}
.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: 0.2s transform, 0.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, 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, 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, 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: 0.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;
}
.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}
.animated.hinge {
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
}
@-webkit-keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}
@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -webkit-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -webkit-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}
.bounce {
    -webkit-animation-name: bounce;
    animation-name: bounce;
}
@-webkit-keyframes flash {
    0%, 50%, 100% {
        opacity: 1;
    }
    25%, 75% {
        opacity: 0;
    }
}
@keyframes flash {
    0%, 50%, 100% {
        opacity: 1;
    }
    25%, 75% {
        opacity: 0;
    }
}
.flash {
    -webkit-animation-name: flash;
    animation-name: flash;
}
@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    50% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
@keyframes pulse {
    0% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }
    50% {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1);
    }
    100% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }
}
.pulse {
    -webkit-animation-name: pulse;
    animation-name: pulse;
}
@-webkit-keyframes shake {
    0%, 100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    10%, 30%, 50%, 70%, 90% {
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    20%, 40%, 60%, 80% {
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
    }
}
@keyframes shake {
    0%, 100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
    10%, 30%, 50%, 70%, 90% {
        -webkit-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    20%, 40%, 60%, 80% {
        -webkit-transform: translateX(10px);
        -ms-transform: translateX(10px);
        transform: translateX(10px);
    }
}
.shake {
    -webkit-animation-name: shake;
    animation-name: shake;
}
@-webkit-keyframes swing {
    20% {
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg);
    }
    40% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }
    60% {
        -webkit-transform: rotate(5deg);
        transform: rotate(5deg);
    }
    80% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg);
    }
    100% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }
}
@keyframes swing {
    20% {
        -webkit-transform: rotate(15deg);
        -ms-transform: rotate(15deg);
        transform: rotate(15deg);
    }
    40% {
        -webkit-transform: rotate(-10deg);
        -ms-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }
    60% {
        -webkit-transform: rotate(5deg);
        -ms-transform: rotate(5deg);
        transform: rotate(5deg);
    }
    80% {
        -webkit-transform: rotate(-5deg);
        -ms-transform: rotate(-5deg);
        transform: rotate(-5deg);
    }
    100% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
    }
}
.swing {
    -webkit-transform-origin: top center;
    -ms-transform-origin: top center;
    transform-origin: top center;
    -webkit-animation-name: swing;
    animation-name: swing;
}
@-webkit-keyframes tada {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    10%, 20% {
        -webkit-transform: scale(0.9) rotate(-3deg);
        transform: scale(0.9) rotate(-3deg);
    }
    30%, 50%, 70%, 90% {
        -webkit-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    40%, 60%, 80% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    100% {
        -webkit-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0);
    }
}
@keyframes tada {
    0% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }
    10%, 20% {
        -webkit-transform: scale(0.9) rotate(-3deg);
        -ms-transform: scale(0.9) rotate(-3deg);
        transform: scale(0.9) rotate(-3deg);
    }
    30%, 50%, 70%, 90% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    40%, 60%, 80% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    100% {
        -webkit-transform: scale(1) rotate(0);
        -ms-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0);
    }
}
.tada {
    -webkit-animation-name: tada;
    animation-name: tada;
}
@-webkit-keyframes wobble {
    0% {
        -webkit-transform: translateX(0%);
        transform: translateX(0%);
    }
    15% {
        -webkit-transform: translateX(-25%) rotate(-5deg);
        transform: translateX(-25%) rotate(-5deg);
    }
    30% {
        -webkit-transform: translateX(20%) rotate(3deg);
        transform: translateX(20%) rotate(3deg);
    }
    45% {
        -webkit-transform: translateX(-15%) rotate(-3deg);
        transform: translateX(-15%) rotate(-3deg);
    }
    60% {
        -webkit-transform: translateX(10%) rotate(2deg);
        transform: translateX(10%) rotate(2deg);
    }
    75% {
        -webkit-transform: translateX(-5%) rotate(-1deg);
        transform: translateX(-5%) rotate(-1deg);
    }
    100% {
        -webkit-transform: translateX(0%);
        transform: translateX(0%);
    }
}
@keyframes wobble {
    0% {
        -webkit-transform: translateX(0%);
        -ms-transform: translateX(0%);
        transform: translateX(0%);
    }
    15% {
        -webkit-transform: translateX(-25%) rotate(-5deg);
        -ms-transform: translateX(-25%) rotate(-5deg);
        transform: translateX(-25%) rotate(-5deg);
    }
    30% {
        -webkit-transform: translateX(20%) rotate(3deg);
        -ms-transform: translateX(20%) rotate(3deg);
        transform: translateX(20%) rotate(3deg);
    }
    45% {
        -webkit-transform: translateX(-15%) rotate(-3deg);
        -ms-transform: translateX(-15%) rotate(-3deg);
        transform: translateX(-15%) rotate(-3deg);
    }
    60% {
        -webkit-transform: translateX(10%) rotate(2deg);
        -ms-transform: translateX(10%) rotate(2deg);
        transform: translateX(10%) rotate(2deg);
    }
    75% {
        -webkit-transform: translateX(-5%) rotate(-1deg);
        -ms-transform: translateX(-5%) rotate(-1deg);
        transform: translateX(-5%) rotate(-1deg);
    }
    100% {
        -webkit-transform: translateX(0%);
        -ms-transform: translateX(0%);
        transform: translateX(0%);
    }
}
.wobble {
    -webkit-animation-name: wobble;
    animation-name: wobble;
}
@-webkit-keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        transform: scale(0.3);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
    70% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
@keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        -ms-transform: scale(0.3);
        transform: scale(0.3);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
        transform: scale(1.05);
    }
    70% {
        -webkit-transform: scale(0.9);
        -ms-transform: scale(0.9);
        transform: scale(0.9);
    }
    100% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }
}
.bounceIn {
    -webkit-animation-name: bounceIn;
    animation-name: bounceIn;
}
@-webkit-keyframes bounceInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(30px);
        transform: translateY(30px);
    }
    80% {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
@keyframes bounceInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(30px);
        -ms-transform: translateY(30px);
        transform: translateY(30px);
    }
    80% {
        -webkit-transform: translateY(-10px);
        -ms-transform: translateY(-10px);
        transform: translateY(-10px);
    }
    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}
.bounceInDown {
    -webkit-animation-name: bounceInDown;
    animation-name: bounceInDown;
}
@-webkit-keyframes bounceInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(30px);
        transform: translateX(30px);
    }
    80% {
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
@keyframes bounceInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(30px);
        -ms-transform: translateX(30px);
        transform: translateX(30px);
    }
    80% {
        -webkit-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}
.bounceInLeft {
    -webkit-animation-name: bounceInLeft;
    animation-name: bounceInLeft;
}
@-webkit-keyframes bounceInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(-30px);
        transform: translateX(-30px);
    }
    80% {
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
@keyframes bounceInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(-30px);
        -ms-transform: translateX(-30px);
        transform: translateX(-30px);
    }
    80% {
        -webkit-transform: translateX(10px);
        -ms-transform: translateX(10px);
        transform: translateX(10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}
.bounceInRight {
    -webkit-animation-name: bounceInRight;
    animation-name: bounceInRight;
}
@-webkit-keyframes bounceInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    80% {
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
@keyframes bounceInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    80% {
        -webkit-transform: translateY(10px);
        -ms-transform: translateY(10px);
        transform: translateY(10px);
    }
    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}
.bounceInUp {
    -webkit-animation-name: bounceInUp;
    animation-name: bounceInUp;
}
@-webkit-keyframes bounceOut {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    25% {
        -webkit-transform: scale(0.95);
        transform: scale(0.95);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        transform: scale(0.3);
    }
}
@keyframes bounceOut {
    0% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }
    25% {
        -webkit-transform: scale(0.95);
        -ms-transform: scale(0.95);
        transform: scale(0.95);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        -ms-transform: scale(0.3);
        transform: scale(0.3);
    }
}
.bounceOut {
    -webkit-animation-name: bounceOut;
    animation-name: bounceOut;
}
@-webkit-keyframes bounceOutDown {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}
@keyframes bounceOutDown {
    0% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}
.bounceOutDown {
    -webkit-animation-name: bounceOutDown;
    animation-name: bounceOutDown;
}
@-webkit-keyframes bounceOutLeft {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(20px);
        transform: translateX(20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}
@keyframes bounceOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}
.bounceOutLeft {
    -webkit-animation-name: bounceOutLeft;
    animation-name: bounceOutLeft;
}
@-webkit-keyframes bounceOutRight {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}
@keyframes bounceOutRight {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}
.bounceOutRight {
    -webkit-animation-name: bounceOutRight;
    animation-name: bounceOutRight;
}
@-webkit-keyframes bounceOutUp {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}
@keyframes bounceOutUp {
    0% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}
.bounceOutUp {
    -webkit-animation-name: bounceOutUp;
    animation-name: bounceOutUp;
}
@-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
.fadeIn {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
}
@-webkit-keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
@keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}
.fadeInDown {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown;
}
@-webkit-keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
@keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}
.fadeInDownBig {
    -webkit-animation-name: fadeInDownBig;
    animation-name: fadeInDownBig;
}
@-webkit-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
@keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}
.fadeInLeft {
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft;
}
@-webkit-keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
@keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}
.fadeInLeftBig {
    -webkit-animation-name: fadeInLeftBig;
    animation-name: fadeInLeftBig;
}
@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        transform: translateX(20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
@keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}
.fadeInRight {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight;
}
@-webkit-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
@keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}
.fadeInRightBig {
    -webkit-animation-name: fadeInRightBig;
    animation-name: fadeInRightBig;
}
@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
@keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}
.fadeInUp {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
}
@-webkit-keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
@keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}
.fadeInUpBig {
    -webkit-animation-name: fadeInUpBig;
    animation-name: fadeInUpBig;
}
@-webkit-keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
@keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
.fadeOut {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut;
}
@-webkit-keyframes fadeOutDown {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
}
@keyframes fadeOutDown {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px);
    }
}
.fadeOutDown {
    -webkit-animation-name: fadeOutDown;
    animation-name: fadeOutDown;
}
@-webkit-keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}
@keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}
.fadeOutDownBig {
    -webkit-animation-name: fadeOutDownBig;
    animation-name: fadeOutDownBig;
}
@-webkit-keyframes fadeOutLeft {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px);
    }
}
@keyframes fadeOutLeft {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px);
    }
}
.fadeOutLeft {
    -webkit-animation-name: fadeOutLeft;
    animation-name: fadeOutLeft;
}
@-webkit-keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}
@keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}
.fadeOutLeftBig {
    -webkit-animation-name: fadeOutLeftBig;
    animation-name: fadeOutLeftBig;
}
@-webkit-keyframes fadeOutRight {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        transform: translateX(20px);
    }
}
@keyframes fadeOutRight {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px);
    }
}
.fadeOutRight {
    -webkit-animation-name: fadeOutRight;
    animation-name: fadeOutRight;
}
@-webkit-keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}
@keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}
.fadeOutRightBig {
    -webkit-animation-name: fadeOutRightBig;
    animation-name: fadeOutRightBig;
}
@-webkit-keyframes fadeOutUp {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
    }
}
@keyframes fadeOutUp {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px);
    }
}
.fadeOutUp {
    -webkit-animation-name: fadeOutUp;
    animation-name: fadeOutUp;
}
@-webkit-keyframes fadeOutUpBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}
@keyframes fadeOutUpBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}
.fadeOutUpBig {
    -webkit-animation-name: fadeOutUpBig;
    animation-name: fadeOutUpBig;
}
@-webkit-keyframes flip {
    0% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
    }
    0%, 40% {
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    40% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
    }
    50% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    80% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(0.95);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(0.95);
    }
    80%, 100% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    100% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
    }
}
@keyframes flip {
    0% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        -ms-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
    }
    0%, 40% {
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    40% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
    }
    50% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    80% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(0.95);
        -ms-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(0.95);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(0.95);
    }
    80%, 100% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    100% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        -ms-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
    }
}
.animated.flip {
    -webkit-backface-visibility: visible;
    -ms-backface-visibility: visible;
    backface-visibility: visible;
    -webkit-animation-name: flip;
    animation-name: flip;
}
@-webkit-keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
        transform: perspective(400px) rotateX(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(0);
        transform: perspective(400px) rotateX(0);
        opacity: 1;
    }
}
@keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
        -ms-transform: perspective(400px) rotateX(-10deg);
        transform: perspective(400px) rotateX(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        -ms-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(0);
        -ms-transform: perspective(400px) rotateX(0);
        transform: perspective(400px) rotateX(0);
        opacity: 1;
    }
}
.flipInX {
    -webkit-backface-visibility: visible !important;
    -ms-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInX;
    animation-name: flipInX;
}
@-webkit-keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
        transform: perspective(400px) rotateY(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(0);
        transform: perspective(400px) rotateY(0);
        opacity: 1;
    }
}
@keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
        -ms-transform: perspective(400px) rotateY(-10deg);
        transform: perspective(400px) rotateY(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        -ms-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(0);
        -ms-transform: perspective(400px) rotateY(0);
        transform: perspective(400px) rotateY(0);
        opacity: 1;
    }
}
.flipInY {
    -webkit-backface-visibility: visible !important;
    -ms-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInY;
    animation-name: flipInY;
}
@-webkit-keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0);
        transform: perspective(400px) rotateX(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
}
@keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0);
        -ms-transform: perspective(400px) rotateX(0);
        transform: perspective(400px) rotateX(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
}
.flipOutX {
    -webkit-animation-name: flipOutX;
    animation-name: flipOutX;
    -webkit-backface-visibility: visible !important;
    -ms-backface-visibility: visible !important;
    backface-visibility: visible !important;
}
@-webkit-keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0);
        transform: perspective(400px) rotateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
}
@keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0);
        -ms-transform: perspective(400px) rotateY(0);
        transform: perspective(400px) rotateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
}
.flipOutY {
    -webkit-backface-visibility: visible !important;
    -ms-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipOutY;
    animation-name: flipOutY;
}
@-webkit-keyframes lightSpeedIn {
    0% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }
    60% {
        -webkit-transform: translateX(-20%) skewX(30deg);
        transform: translateX(-20%) skewX(30deg);
        opacity: 1;
    }
    80% {
        -webkit-transform: translateX(0%) skewX(-15deg);
        transform: translateX(0%) skewX(-15deg);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0%) skewX(0);
        transform: translateX(0%) skewX(0);
        opacity: 1;
    }
}
@keyframes lightSpeedIn {
    0% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }
    60% {
        -webkit-transform: translateX(-20%) skewX(30deg);
        -ms-transform: translateX(-20%) skewX(30deg);
        transform: translateX(-20%) skewX(30deg);
        opacity: 1;
    }
    80% {
        -webkit-transform: translateX(0%) skewX(-15deg);
        -ms-transform: translateX(0%) skewX(-15deg);
        transform: translateX(0%) skewX(-15deg);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0%) skewX(0);
        -ms-transform: translateX(0%) skewX(0);
        transform: translateX(0%) skewX(0);
        opacity: 1;
    }
}
.lightSpeedIn {
    -webkit-animation-name: lightSpeedIn;
    animation-name: lightSpeedIn;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
}
@-webkit-keyframes lightSpeedOut {
    0% {
        -webkit-transform: translateX(0%) skewX(0);
        transform: translateX(0%) skewX(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }
}
@keyframes lightSpeedOut {
    0% {
        -webkit-transform: translateX(0%) skewX(0);
        -ms-transform: translateX(0%) skewX(0);
        transform: translateX(0%) skewX(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }
}
.lightSpeedOut {
    -webkit-animation-name: lightSpeedOut;
    animation-name: lightSpeedOut;
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
}
@-webkit-keyframes rotateIn {
    0% {
        -webkit-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0;
    }
    0%, 100% {
        -webkit-transform-origin: center center;
        transform-origin: center center;
    }
    100% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}
@keyframes rotateIn {
    0% {
        -webkit-transform: rotate(-200deg);
        -ms-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0;
    }
    0%, 100% {
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
    }
    100% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}
.rotateIn {
    -webkit-animation-name: rotateIn;
    animation-name: rotateIn;
}
@-webkit-keyframes rotateInDownLeft {
    0% {
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    0%, 100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
    }
    100% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}
@keyframes rotateInDownLeft {
    0% {
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    0%, 100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
    }
    100% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}
.rotateInDownLeft {
    -webkit-animation-name: rotateInDownLeft;
    animation-name: rotateInDownLeft;
}
@-webkit-keyframes rotateInDownRight {
    0% {
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
    0%, 100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
    }
    100% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}
@keyframes rotateInDownRight {
    0% {
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
    0%, 100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
    }
    100% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}
.rotateInDownRight {
    -webkit-animation-name: rotateInDownRight;
    animation-name: rotateInDownRight;
}
@-webkit-keyframes rotateInUpLeft {
    0% {
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
    0%, 100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
    }
    100% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}
@keyframes rotateInUpLeft {
    0% {
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
    0%, 100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
    }
    100% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}
.rotateInUpLeft {
    -webkit-animation-name: rotateInUpLeft;
    animation-name: rotateInUpLeft;
}
@-webkit-keyframes rotateInUpRight {
    0% {
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    0%, 100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
    }
    100% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}
@keyframes rotateInUpRight {
    0% {
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    0%, 100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
    }
    100% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}
.rotateInUpRight {
    -webkit-animation-name: rotateInUpRight;
    animation-name: rotateInUpRight;
}
@-webkit-keyframes rotateOut {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    0%, 100% {
        -webkit-transform-origin: center center;
        transform-origin: center center;
    }
    100% {
        -webkit-transform: rotate(200deg);
        transform: rotate(200deg);
        opacity: 0;
    }
}
@keyframes rotateOut {
    0% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    0%, 100% {
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
    }
    100% {
        -webkit-transform: rotate(200deg);
        -ms-transform: rotate(200deg);
        transform: rotate(200deg);
        opacity: 0;
    }
}
.rotateOut {
    -webkit-animation-name: rotateOut;
    animation-name: rotateOut;
}
@-webkit-keyframes rotateOutDownLeft {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    0%, 100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
    }
    100% {
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}
@keyframes rotateOutDownLeft {
    0% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    0%, 100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
    }
    100% {
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}
.rotateOutDownLeft {
    -webkit-animation-name: rotateOutDownLeft;
    animation-name: rotateOutDownLeft;
}
@-webkit-keyframes rotateOutDownRight {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    0%, 100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
    }
    100% {
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}
@keyframes rotateOutDownRight {
    0% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    0%, 100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
    }
    100% {
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}
.rotateOutDownRight {
    -webkit-animation-name: rotateOutDownRight;
    animation-name: rotateOutDownRight;
}
@-webkit-keyframes rotateOutUpLeft {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    0%, 100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
    }
    100% {
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}
@keyframes rotateOutUpLeft {
    0% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    0%, 100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
    }
    100% {
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}
.rotateOutUpLeft {
    -webkit-animation-name: rotateOutUpLeft;
    animation-name: rotateOutUpLeft;
}
@-webkit-keyframes rotateOutUpRight {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    0%, 100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
    }
    100% {
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}
@keyframes rotateOutUpRight {
    0% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    0%, 100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
    }
    100% {
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}
.rotateOutUpRight {
    -webkit-animation-name: rotateOutUpRight;
    animation-name: rotateOutUpRight;
}
@-webkit-keyframes slideInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
@keyframes slideInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}
.slideInDown {
    -webkit-animation-name: slideInDown;
    animation-name: slideInDown;
}
@-webkit-keyframes slideInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
@keyframes slideInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}
.slideInLeft {
    -webkit-animation-name: slideInLeft;
    animation-name: slideInLeft;
}
@-webkit-keyframes slideInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
@keyframes slideInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}
.slideInRight {
    -webkit-animation-name: slideInRight;
    animation-name: slideInRight;
}
@-webkit-keyframes slideOutLeft {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}
@keyframes slideOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}
.slideOutLeft {
    -webkit-animation-name: slideOutLeft;
    animation-name: slideOutLeft;
}
@-webkit-keyframes slideOutRight {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}
@keyframes slideOutRight {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}
.slideOutRight {
    -webkit-animation-name: slideOutRight;
    animation-name: slideOutRight;
}
@-webkit-keyframes slideOutUp {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}
@keyframes slideOutUp {
    0% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}
.slideOutUp {
    -webkit-animation-name: slideOutUp;
    animation-name: slideOutUp;
}
@-webkit-keyframes hinge {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }
    0%, 20%, 60% {
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    20%, 60% {
        -webkit-transform: rotate(80deg);
        transform: rotate(80deg);
    }
    40% {
        -webkit-transform: rotate(60deg);
        transform: rotate(60deg);
    }
    40%, 80% {
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    80% {
        -webkit-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(700px);
        transform: translateY(700px);
        opacity: 0;
    }
}
@keyframes hinge {
    0% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
    }
    0%, 20%, 60% {
        -webkit-transform-origin: top left;
        -ms-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    20%, 60% {
        -webkit-transform: rotate(80deg);
        -ms-transform: rotate(80deg);
        transform: rotate(80deg);
    }
    40% {
        -webkit-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
        transform: rotate(60deg);
    }
    40%, 80% {
        -webkit-transform-origin: top left;
        -ms-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    80% {
        -webkit-transform: rotate(60deg) translateY(0);
        -ms-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(700px);
        -ms-transform: translateY(700px);
        transform: translateY(700px);
        opacity: 0;
    }
}
.hinge {
    -webkit-animation-name: hinge;
    animation-name: hinge;
}
@-webkit-keyframes rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0) rotate(0);
        transform: translateX(0) rotate(0);
    }
}
@keyframes rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        -ms-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0) rotate(0);
        -ms-transform: translateX(0) rotate(0);
        transform: translateX(0) rotate(0);
    }
}
.rollIn {
    -webkit-animation-name: rollIn;
    animation-name: rollIn;
}
@-webkit-keyframes rollOut {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0) rotate(0);
        transform: translateX(0) rotate(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(100%) rotate(120deg);
        transform: translateX(100%) rotate(120deg);
    }
}
@keyframes rollOut {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0) rotate(0);
        -ms-transform: translateX(0) rotate(0);
        transform: translateX(0) rotate(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(100%) rotate(120deg);
        -ms-transform: translateX(100%) rotate(120deg);
        transform: translateX(100%) rotate(120deg);
    }
}
.rollOut {
    -webkit-animation-name: rollOut;
    animation-name: rollOut;
}
/* --------------------------------------- custom ------------------------------------ */
@keyframes infiniteScroll {
    0% {
        transform: translateX(0%);
    }
    100% {
        transform: translateX(-100%);
    }
}
@keyframes infiniteScrollRight {
    0% {
        transform: translateX(-100%);
    }
    100% {
        transform: translateX(0%);
    }
}
@-webkit-keyframes tf-ani-flash {
    50%, from, to {
        opacity: 1;
    }
    25%, 75% {
        opacity: 0;
    }
}
@keyframes tf-ani-flash {
    50%, from, to {
        opacity: 1;
    }
    25%, 75% {
        opacity: 0;
    }
}
@keyframes rotate-360 {
    from {
        transform: rotate(0deg) scale(1);
    }
    to {
        transform: rotate(360deg);
    }
}
@keyframes tf-ani-flash {
    50%, from, to {
        opacity: 1;
    }
    25%, 75% {
        opacity: 0;
    }
}
@keyframes link-icon {
    0% {
        transform: translateX(0);
        opacity: 1;
    }
    49% {
        transform: translateX(20px);
        opacity: 0;
    }
    50% {
        transform: translateX(-20px);
        opacity: 0;
    }
    100% {
        transform: translateX(0);
        opacity: 1;
    }
}
@-webkit-keyframes tf-ani-tada {
    from, to {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    10%, 20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    }
    30%, 50%, 70%, 90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    }
    40%, 60%, 80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    }
}
@keyframes tf-ani-tada {
    from, to {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    10%, 20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    }
    30%, 50%, 70%, 90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    }
    40%, 60%, 80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    }
}
.tf-ani-tada {
    -webkit-animation: tf-ani-tada 2s infinite;
    animation: tf-ani-tada 2s infinite;
}
@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 1;
    }
    50% {
        transform: scale(1.05);
        opacity: 0.9;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}
@keyframes spin {
    from {
        transform: translate(-50%, -50%) rotate(0deg);
    }
    to {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}
/* ---------------------------------------------------------
    * Name: Onsus - Multipurpose eCommerce
    * Version: 1.0.0
    * Author: Themesflat
    * Author URI: http://themesflat.com

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * tabs
        * button
        * form
        * drop down
        * carousel
        * box icon
        * hover
        * product
        * blog
        * accordion
        * zoom
        * shop
        * nice select

    * section

    * Responsive
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
:root {
    --white: #ffffff;
    --black: #000000;
    --text: #909090;
    --text-2: #505050;
    --text-3: #333333;
    --text-4: #40484E;
    --text-5: #2C3135;
    --text-7: #FDFEFE;
    --gray: #333e48;
    --gray-2: #73787d;
    --gray-4: #e1e1e1;
    --gray-5: #ebebeb;
    --gray-6: #f5f5f5;
    --primary: #ff3d3d;
    --primary-2: #D80027;
    --secondary: #004ec3;
    --third: #FCB500;
    --third-2: #FFE604;
    --third-3: #FFDC00;
    --third-4: #FFDF8B;
    --line: #e1e1e1;
    --line-2: #ececec;
    --line-3: #4f4f4f;
    --line-4: #BFC6CC;
    --bg: #fafafa;
    --bg-2: #F8F8F8;
    --bg-3: #F6F6F6;
    --price: #FFEAB6;
}
/*---------- Reset css styles ----------- */
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: "Inter", serif;
    font-size: 15px;
    line-height: 24px;
    font-weight: 400;
    background-color: var(--white);
    font-style: normal;
    color: var(--gray);
    overflow-x: hidden;
}
body::-webkit-scrollbar {
    width: 3px;
}
body::-webkit-scrollbar-thumb {
    background-color: var(--primary);
    border-radius: 5px;
    cursor: grab;
}
body.no-scroll {
    overflow: hidden;
}
img {
    max-width: 100%;
    height: auto;
    transform: scale(1);
    vertical-align: middle;
    -ms-interpolation-mode: bicubic;
}
.row {
    margin-right: -15px;
    margin-left: -15px;
}
.row > * {
    padding-left: 15px;
    padding-right: 15px;
}
ul,
li {
    list-style-type: none;
    margin-bottom: 0;
    padding-left: 0;
    list-style: none;
}
.container {
    max-width: 1520px;
    padding-right: 15px;
    padding-left: 15px;
}
.container-full {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: 0px 15px;
}
svg path {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
textarea {
    resize: none;
}
select {
    outline: 0;
}
/* Placeholder color */
::-webkit-input-placeholder {
    color: var(--text-3);
}
:-moz-placeholder {
    color: var(--text-3);
}
::-moz-placeholder {
    color: var(--text-3);
    opacity: 1;
}
button:focus-within,
button:focus-visible,
button:focus {
    outline: none;
}
/* Since FF19 lowers the opacity of the placeholder by default */
:-ms-input-placeholder {
    color: var(--secondary-2);
}
/* Typography
-------------------------------------------------------------- */
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Inter", serif;
    text-rendering: optimizeLegibility;
    color: var(--grey-1);
    font-weight: 500;
    margin-bottom: 0;
}
h1,
.h1 {
    font-size: 60px;
    line-height: 80px;
}
h2,
.h2 {
    font-size: 50px;
    line-height: 61px;
}
h3,
.h3 {
    font-size: 40px;
    line-height: 60px;
}
h4,
.h4 {
    font-size: 30px;
    line-height: 36px;
}
h5,
.main-title,
.title-normal {
    font-size: 22px;
    line-height: 25px;
}
h6,
.product-title {
    font-size: 18px;
    line-height: 24px;
}
.text-xl {
    font-size: 48px;
    line-height: 50px;
}
.main-title-2 {
    font-size: 25px;
    line-height: 38px;
}
.main-title-3 {
    font-size: 24px;
    line-height: 33px;
}
.product-title-2 {
    font-size: 18px;
    line-height: 27px;
}
.price-text {
    font-size: 20px;
    line-height: 22px;
}
.price-text-2 {
    font-size: 19px;
    line-height: 29px;
}
.title-sidebar {
    font-size: 16px;
    line-height: 18px;
}
.title-sidebar-2 {
    font-size: 16px;
    line-height: 24px;
}
.body-md-2 {
    font-size: 14px;
    line-height: 22px;
}
.body-text-3 {
    font-size: 14px;
    line-height: 20px;
}
.body-small {
    font-size: 13px;
    line-height: 25px;
}
.caption {
    font-size: 12px;
    line-height: 22px;
}
.small-text {
    font-size: 10px;
    line-height: 15px;
}
.font-main {
    font-family: "Inter", serif;
}
.font-2 {
    font-family: "Poppins", serif;
}
.font-3 {
    font-family: "MADE Outer";
}
.font-4 {
    font-family: "UTM Banque";
}
.font-5 {
    font-family: "Helvetica Neue", sans-serif;
}
b,
strong {
    font-weight: bolder;
}
video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.text-main {
    color: var(--gray) !important;
}
.text-main-2 {
    color: var(--gray-2);
}
.text-main-4 {
    color: var(--gray-4) !important;
}
.text-cl-1 {
    color: var(--text);
}
.text-cl-2 {
    color: var(--text-2);
}
.text-cl-3 {
    color: var(--text-3);
}
.text-cl-4 {
    color: var(--text-4);
}
.text-cl-5 {
    color: var(--text-5);
}
.text-cl-7 {
    color: var(--text-7);
}
.text-primary {
    color: var(--primary) !important;
}
.text-primary-2 {
    color: var(--primary-2) !important;
}
.text-secondary {
    color: var(--secondary) !important;
}
.text-third {
    color: var(--third) !important;
}
.text-third-2 {
    color: var(--third-2) !important;
}
.text-third-3 {
    color: var(--third-3) !important;
}
.text-third-4 {
    color: var(--third-4) !important;
}
.text-price {
    color: var(--price) !important;
}
a {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    text-decoration: none;
    cursor: pointer;
    display: inline-block;
    color: var(--gray);
}
a:focus, a:hover {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    text-decoration: none;
    outline: 0;
}
.link {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.link:hover {
    color: var(--primary) !important;
}
.link-svg svg,
.link-svg path {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.link-svg:hover svg,
.link-svg:hover path {
    stroke: var(--primary);
}
.link-fill svg,
.link-fill path {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    stroke: unset !important;
}
.link-fill:hover path {
    fill: var(--primary);
}
.link-svg-fill svg,
.link-svg-fill path {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.link-svg-fill:hover path {
    stroke: var(--primary);
    fill: var(--primary);
}
.link-secondary {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.link-secondary:hover {
    color: var(--secondary) !important;
}
.link-main {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.link-main:hover {
    color: var(--gray) !important;
}
.line {
    border: 1px solid var(--line);
}
.line-2 {
    border: 1px solid var(--line-2);
}
.line-bt {
    border-bottom: 1px solid var(--gray-5) !important;
}
.line-bt-2 {
    border-bottom: 1px solid rgba(255, 255, 255, 0.0588235294) !important;
}
.line-tp {
    border-top: 1px solid var(--gray-5) !important;
}
.gap-36 {
    gap: 36px;
}
.gap-12 {
    gap: 12px !important;
}
.gap-30 {
    gap: 30px;
}
.gap-10 {
    gap: 10px !important;
}
.gap-8 {
    gap: 8px !important;
}
.px_15 {
    padding-left: 15px;
    padding-right: 15px;
}
.py-4 {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
}
.pt-24 {
    padding-top: 24px;
}
.box-center {
    position: absolute;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
}
[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);
}
.tf-row-flex {
    display: flex;
    flex-direction: row;
    column-gap: 30px;
    row-gap: 30px;
}
.tf-grid-layout {
    display: grid;
    column-gap: 30px;
    row-gap: 30px;
}
.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 .wg-pagination {
    grid-column: 1/-1;
    width: 100%;
}
.tf-grid-layout .wd-load {
    grid-column: 1/-1;
}
.cursor-not-allowed {
    cursor: not-allowed;
}
.cursor-auto {
    cursor: auto;
}
.text-highlight {
    -webkit-text-stroke: 1px #000;
    color: transparent !important;
    flex-direction: row-reverse;
}
.text-line-clamp-1 {
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    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;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}
.text-line-clamp-4 {
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}
.aspect-ratio-1 {
    aspect-ratio: 1/1;
}
.aspect-ratio-0 {
    aspect-ratio: 0 !important;
}
.initial-child-container {
    flex: 0 0 auto;
    display: flex;
    min-width: auto;
    flex-direction: row;
    align-items: center;
}
.line-top-container {
    position: relative;
}
.line-top-container::before {
    position: absolute;
    content: "";
    top: 0;
    left: 50%;
    background-color: var(--line);
    height: 1px;
    width: 100%;
    max-width: 1320px;
    transform: translateX(-50%);
}
.line-bottom-container {
    position: relative;
}
.line-bottom-container::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 50%;
    background-color: var(--line);
    height: 1px;
    width: 100%;
    max-width: 1320px;
    transform: translateX(-50%);
}
#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(--dark);
    border: 0;
    bottom: 92px;
    right: 20px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
#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(--gray);
    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);
    }
}
.tf-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.fs-8 {
    font-size: 8px !important;
}
.fs-10 {
    font-size: 10px !important;
}
.fs-12 {
    font-size: 12px !important;
}
.fs-14 {
    font-size: 14px !important;
}
.fs-16 {
    font-size: 16px !important;
}
.fs-20 {
    font-size: 20px !important;
}
.fs-24 {
    font-size: 24px !important;
}
.fs-26 {
    font-size: 26px !important;
}
.fs-28 {
    font-size: 28px !important;
}
.fs-42 {
    font-size: 42px !important;
}
.lh-19 {
    line-height: 19px !important;
}
.lh-20 {
    line-height: 20px !important;
}
.lh-24 {
    line-height: 24px !important;
}
.lh-26 {
    line-height: 26px !important;
}
.lh-12 {
    line-height: 12px !important;
}
.lh-14 {
    line-height: 14px !important;
}
.lh-15 {
    line-height: 15px !important;
}
.lh-16 {
    line-height: 16px !important;
}
.radius-16 {
    border-radius: 16px !important;
}
.radius-8 {
    border-radius: 8px !important;
}
.relative {
    position: relative !important;
}
.absolute {
    position: absolute;
}
#goTop {
    position: fixed;
    padding: 0;
    bottom: 90px;
    right: 40px;
    width: 38px;
    height: 38px;
    background: var(--white);
    color: black;
    font-size: 20px;
    text-align: center;
    line-height: 50px;
    cursor: pointer;
    border: none;
    border-radius: 3px;
    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;
}
#goTop .border-progress {
    position: absolute;
    top: -1px;
    left: -1px;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    border-radius: 3px;
    border: 1px solid #000000;
    mask-image: conic-gradient(#000000 var(--progress-angle, 0deg), transparent 0);
    -webkit-mask-image: conic-gradient(#000000 var(--progress-angle, 0deg), transparent 0);
    content: "";
    z-index: 1;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
#goTop.show {
    opacity: 1;
    visibility: visible;
}
#goTop .icon {
    font-size: 12px;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
#goTop .icon-arrow-right {
    transform: rotate(-90deg);
}
.simpleParallax {
    height: 100%;
    width: 100%;
}
.simpleParallax img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.bg-3 {
    background-color: var(--bg-3) !important;
}
.bg-line {
    background-color: var(--line);
}
.bg-line-3 {
    background-color: var(--line-3);
}
.bg-gray {
    background-color: var(--gray) !important;
}
.bg-gray-2 {
    background-color: var(--gray-2) !important;
}
.bg-gray-5 {
    background-color: var(--gray-5) !important;
}
.bg-primary {
    background-color: var(--primary) !important;
}
.br-line {
    display: inline-flex;
    width: 100%;
    height: 1px;
}
.br-line.type-vertical {
    height: 16px;
    width: 1px;
}
.br-line.type-vertical.h23 {
    height: 23px;
}
.tf-sp-1 {
    padding-top: 20px;
    padding-bottom: 50px;
}
.tf-sp-2 {
    padding-top: 50px;
    padding-bottom: 50px;
}
.tf-sp-3 {
    padding-top: 20px;
    padding-bottom: 20px;
}
.tf-sp-4 {
    padding-top: 40px;
    padding-bottom: 40px;
}
.tf-sp-5 {
    padding-top: 30px;
    padding-bottom: 30px;
}
.tf-sp-6 {
    padding-top: 100px;
    padding-bottom: 100px;
}
.tf-sp-7 {
    padding-top: 30px;
    padding-bottom: 50px;
}
.progress {
    height: 6px;
    border-radius: 999px;
}
.progress .progress-bar {
    border-radius: 999px;
    background-color: var(--primary);
}
.progress.style-2 {
    height: 9px;
    border-radius: 50px;
}
.progress.style-2 .progress-bar {
    border-radius: 50px;
}
.progress.style-3 {
    height: 12px;
    border-radius: 8px;
}
.progress.style-3 .progress-bar {
    border-radius: 8px;
}
.sticky-top {
    z-index: 50;
    top: 15px;
}
.cs-pointer {
    cursor: pointer;
}
.z-4 {
    z-index: 4;
}
.z-5 {
    z-index: 5;
}
.z-6 {
    z-index: 6;
}
.aspect-unset {
    aspect-ratio: unset !important;
}
.w-max-content {
    width: max-content !important;
}
.fw-1 {
    font-weight: 100;
}
.fw-2 {
    font-weight: 200;
}
.fw-3 {
    font-weight: 300 !important;
}
.fw-8 {
    font-weight: 800;
}
.fw-9 {
    font-weight: 900;
}
.mb-30 {
    margin-bottom: 30px !important;
}
.mb-20 {
    margin-bottom: 20px !important;
}
.mb-14 {
    margin-bottom: 14px !important;
}
.mb-6 {
    margin-bottom: 6px !important;
}
.mw-unset {
    max-width: unset !important;
}
.flat-container {
    max-width: 1490px;
    width: 100%;
    margin: auto;
    padding: 15px;
    border-radius: 8px;
}
.m-h-300 {
    min-height: 300px;
}
.letter-sp-s1 {
    letter-spacing: 10.8px;
}
.pb-8 {
    padding-bottom: 8px !important;
}
.pst-unset {
    position: unset !important;
}
.text-delivered {
    color: #008a00;
}
.text-on-the-way {
    color: #ff4848;
}
/*------------ Components ---------------- */
/*------------ header ---------------- */
.tf-topbar {
    padding: 5px 0px;
}
.topbar-left {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0px 40px;
    flex-wrap: wrap;
}
.topbar-right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 28px;
}
.topbar-right > li:not(:last-child) {
    padding-right: 28px;
    position: relative;
}
.topbar-right > li:not(:last-child)::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 16px;
    background-color: var(--gray-2);
}
header {
    position: sticky;
    position: -webkit-sticky;
    left: 0;
    right: 0;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    z-index: 888;
    background-color: var(--white);
}
header:not(.style-2, .style-3, .style-4, .style-5) {
    border-bottom: 1px solid var(--gray-5);
}
header.header-type-stc {
    box-shadow: 0px 4px 10px #ececec;
}
.tf-header .logo-site {
    max-width: 185px;
    width: 100%;
}
.tf-header .nav-icon {
    display: flex;
    justify-content: flex-end;
    gap: 20px;
}
.tf-header .nav-icon.style-2 {
    gap: 17px;
    align-items: center;
}
.tf-header .nav-icon.style-2 li .infor {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.tf-header .nav-icon.style-2 li > a {
    position: relative;
}
.tf-header .nav-icon.style-2 li > a i,
.tf-header .nav-icon.style-2 li > a svg {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.tf-header .nav-icon.style-2 li > a:hover path {
    stroke: var(--primary);
}
.tf-header .nav-icon.style-2 li > a:hover i {
    color: var(--primary);
}
.tf-header .nav-icon.style-2 li > a .count-box {
    top: -8px;
    right: -6px;
}
.tf-header .nav-icon.style-3 {
    gap: 20px;
}
.tf-header .nav-icon.style-3 li:not(:last-child) {
    padding-right: 20px;
    border-right: 1px solid var(--gray-5);
}
.tf-header .nav-icon.style-3 .nav-icon-item {
    display: flex;
    align-items: center;
    flex-direction: row;
    gap: 14px;
}
.tf-header .nav-icon.style-3 .nav-icon-item .infor {
    display: flex;
    flex-direction: column;
    gap: 3px;
}
.tf-header .nav-icon.style-3 .nav-icon-item .icon {
    padding-top: 6px;
    padding-right: 17px;
}
.tf-header .nav-icon.style-3 .nav-icon-item .count-box {
    width: 26px;
    height: 26px;
    font-size: 14px;
    line-height: 22px;
}
.tf-header .nav-icon.style-3 .nav-icon-item i {
    font-size: 34px;
}
.tf-header .nav-icon.style-3 .nav-icon-item i,
.tf-header .nav-icon.style-3 .nav-icon-item svg,
.tf-header .nav-icon.style-3 .nav-icon-item .number-item {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.tf-header .nav-icon.style-3 .nav-icon-item:hover .number-item {
    color: var(--primary);
}
.tf-header .nav-icon.style-3 .nav-icon-item:hover svg path {
    stroke: var(--primary);
}
.tf-header .nav-icon.style-3 .nav-icon-item:hover i {
    color: var(--primary);
}
.tf-header .nav-icon.style-4 a {
    position: relative;
    color: var(--white);
    display: flex;
    align-items: center;
    gap: 4px;
}
.tf-header .nav-icon.style-4 .count-box {
    position: unset;
    background-color: var(--white);
    color: var(--gray);
    width: 20px;
    height: 20px;
    font-weight: 400;
    font-size: 13px;
    line-height: 25px;
}
.tf-header .nav-icon .count-box {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--primary);
    border-radius: 50%;
    color: var(--white);
    font-weight: 600;
    font-size: 10px;
    line-height: 15px;
    width: 18px;
    height: 18px;
    top: 0;
    right: 0;
}
.tf-header .nav-icon .count-box.style-default {
    background-color: unset;
    border-radius: 0;
    display: unset;
    color: var(--white);
    width: unset;
    height: unset;
}
.tf-header .nav-icon .count-box.style-pst-2 {
    top: -4px;
    right: 5px;
}
.tf-header .nav-icon-item {
    display: flex;
    text-align: center;
    flex-direction: column;
}
.tf-header .nav-icon-item .icon {
    font-size: 26px;
}
.tf-header .nav-icon-item .icon.icon-user {
    font-size: 28px;
}
.tf-header .hover-shopcart {
    position: relative;
}
.tf-header .hover-shopcart:hover .dropdown-shopcart {
    opacity: 1;
    visibility: visible;
    transform: translateY(0px);
    pointer-events: all;
}
.tf-header .hover-shopcart:hover .progress-bar {
    width: 70%;
}
.tf-header .hover-shopcart .dropdown-shopcart {
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    position: absolute;
    min-width: 414px;
    right: 0;
    top: 100%;
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.0509803922);
    padding: 30px;
    border-radius: 8px;
    background-color: var(--white);
    display: flex;
    flex-direction: column;
    gap: 20px;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.tf-header .hover-shopcart .subtotal {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.tf-header .hover-shopcart .box-btn {
    display: flex;
    gap: 10px;
}
.tf-header .hover-shopcart .box-btn > * {
    width: 100%;
}
.tf-header .inner-header {
    padding: 15px 0px;
}
.tf-header.style-2 .header-center {
    display: flex;
    gap: 20px;
}
.tf-header.style-2 .btn-open-nav {
    font-size: 20px;
}
.tf-header.style-3 .header-center {
    display: flex;
    flex-direction: column;
    gap: 4px;
    justify-content: center;
}
.tf-header.style-3 .inner-header {
    padding: 19px 0px;
    position: relative;
    z-index: 2;
}
.tf-header.style-3 .header-bottom {
    position: relative;
}
.tf-header.style-3 .header-bottom::before {
    content: "";
    position: absolute;
    height: 100%;
    width: 40%;
    background-color: var(--gray);
    z-index: 0;
}
.tf-header.style-3 .header-bottom.bg-gray::before {
    background-color: var(--primary);
}
.tf-header.style-3 .header-bottom.bg-gray .nav-category-wrap {
    background-color: var(--primary);
}
.tf-header.style-3 .header-bottom.bg-gray .nav-category-wrap::after {
    border-left: 10px solid var(--primary);
    background-color: var(--gray);
}
.tf-header.style-3 .header-bottom.bg-gray .nav-title:hover i,
.tf-header.style-3 .header-bottom.bg-gray .nav-title:hover .title {
    color: var(--secondary);
}
.tf-header.style-3 .header-bottom.bg-gray .nav-title.active i,
.tf-header.style-3 .header-bottom.bg-gray .nav-title.active .title {
    color: var(--secondary) !important;
}
.tf-header.style-3 .header-bottom.bg-gray .box-navigation .item-link:hover {
    color: var(--primary);
}
.tf-header.style-3 .header-bottom.type-bg-gray {
    background-color: var(--gray);
}
.tf-header.style-4 .inner-header {
    position: relative;
    z-index: 2;
}
.tf-header.style-4 .header-bottom {
    position: relative;
    z-index: 1;
}
.tf-header.style-4 .header-left {
    display: flex;
    align-items: center;
    gap: 0px 40px;
    flex-wrap: wrap;
}
.tf-header.style-5 .inner-header {
    padding: 12px 0px;
}
.tf-header.style-5 .header-center {
    position: relative;
    z-index: 1;
}
.tf-header.style-5 .header-right {
    position: relative;
    z-index: 2;
}
.header-center {
    display: flex;
    align-items: center;
    height: 100%;
}
.header-bt-left {
    display: flex;
    align-items: center;
    gap: 20px;
}
.header-bt-right {
    display: flex;
    align-items: center;
    gap: 8px;
}
.header-inner-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}
.nav-category-wrap {
    position: relative;
}
.nav-category-wrap.style-white .nav-title i {
    color: var(--white);
}
.nav-category-wrap.style-white h6 {
    color: var(--white);
}
.nav-category-wrap .nav-title {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
}
.nav-category-wrap .nav-title.hover-gray.active i,
.nav-category-wrap .nav-title.hover-gray.active .title {
    color: var(--gray) !important;
}
.nav-category-wrap .nav-title.hover-gray:hover i,
.nav-category-wrap .nav-title.hover-gray:hover .title {
    color: var(--gray);
}
.nav-category-wrap .nav-title i {
    position: relative;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    top: -1px;
}
.nav-category-wrap .nav-title.active i {
    color: var(--primary) !important;
}
.nav-category-wrap .nav-title.active .title {
    color: var(--primary) !important;
}
.nav-category-wrap .nav-title .title {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    line-height: 50px;
}
.nav-category-wrap .nav-title:hover i {
    color: var(--primary);
}
.nav-category-wrap .nav-title:hover .title {
    color: var(--primary);
}
.nav-category-wrap.style-2 {
    background-color: var(--gray);
}
.nav-category-wrap.style-2::after {
    content: "";
    width: 0;
    height: 0;
    border-top: 25px solid transparent;
    border-bottom: 25px solid transparent;
    border-left: 10px solid var(--gray);
    right: -9px;
    top: 0;
    position: absolute;
}
.nav-category-wrap.style-2 .nav-title {
    padding-right: 48px;
}
.nav-category-wrap.style-2 .nav-title i,
.nav-category-wrap.style-2 .nav-title .title {
    color: var(--white);
}
.nav-category-wrap.style-2 .nav-title:hover i,
.nav-category-wrap.style-2 .nav-title:hover .title {
    color: var(--primary);
}
.category-menu {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    min-width: 285px;
    z-index: 99;
    background: #fff;
    border: 1px solid #ebebeb;
    width: calc(100% - 35px);
    transform: translateY(10px);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    visibility: hidden;
}
.category-menu.active {
    opacity: 1;
    visibility: visible;
    transform: translateX(0px);
}
.category-menu ul {
    margin: 0;
    padding: 0 15px;
}
.category-menu ul li {
    box-shadow: inset 0px -1px 0px #ececec;
}
.category-menu ul a {
    height: 100%;
    display: flex;
    align-items: center;
    text-decoration: none;
    width: 100%;
    gap: 6px;
    font-size: 14px;
    line-height: 20px;
    padding-top: 10px;
    padding-bottom: 10px;
}
.category-menu ul a svg path {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.category-menu ul a:hover {
    padding-left: 10px;
    color: var(--primary);
}
.category-menu ul a:hover svg path {
    stroke: var(--primary);
}
.box-navigation.style-white .item-link {
    color: var(--white);
}
.box-navigation.style-white .item-link:hover {
    color: var(--gray);
}
.box-navigation.style-white .item-link.has-icon .icon {
    background-color: var(--white);
}
.box-navigation.style-white .item-link.has-icon .icon i {
    color: var(--primary);
}
.box-navigation.style-white .item-link.has-icon:hover .icon {
    background-color: var(--gray);
}
.box-navigation .box-nav-menu {
    display: flex;
    align-items: center;
    gap: 20px;
}
.box-navigation .item-link {
    line-height: 50px;
}
.box-navigation .item-link.has-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.box-navigation .item-link.has-icon .icon {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: var(--primary);
    color: var(--white);
}
.box-navigation .item-link.has-icon .icon i {
    font-size: 12px;
}
.box-navigation.style-2 .menu-item:not(:last-child) .item-link {
    position: relative;
    padding-right: 20px;
}
.box-navigation.style-2 .menu-item:not(:last-child) .item-link::after {
    content: "";
    position: absolute;
    right: 0px;
    top: 50%;
    width: 1px;
    height: 16px;
    transform: translateY(-50%);
    background-color: var(--gray-2);
}
.mobile-button {
    position: relative;
    width: 26px;
    height: 26px;
    background-color: transparent;
    cursor: pointer;
    display: block;
}
.mobile-button span {
    position: absolute;
    width: 100%;
    height: 2px;
    left: 0;
    top: 12px;
    background-color: var(--primary);
    border-radius: 10px;
}
.mobile-button::before {
    content: "";
    position: absolute;
    top: 5px;
    height: 2px;
    width: 100%;
    left: 0;
    background-color: var(--primary);
    border-radius: 10px;
}
.mobile-button::after {
    content: "";
    position: absolute;
    bottom: 5px;
    height: 2px;
    width: 100%;
    left: 0;
    background-color: var(--primary);
    border-radius: 10px;
}
.support-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
}
.delivery-progress {
    display: grid;
    gap: 10px;
}
.delivery-progress .progress-bar {
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    width: 0%;
    transition-delay: 0.1s;
}
.delivery-progress p {
    display: flex;
    align-items: center;
    gap: 8px;
}
/* Start Open Nav Mobile */
.canvas-mb {
    border: unset !important;
}
.canvas-mb .tab-pane:not(.active) .collapse {
    display: none;
}
.canvas-mb .logo-site {
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 100;
    max-width: 130px;
}
.canvas-mb .mb-body {
    padding-right: 20px;
    padding-left: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--line);
    overscroll-behavior-y: contain;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.canvas-mb .mb-body::-webkit-scrollbar-thumb {
    background-color: var(--primary);
    border-radius: 5px;
}
.canvas-mb .mb-body::-webkit-scrollbar {
    width: 3px;
}
.canvas-mb .mb-bottom {
    padding-right: 15px;
    padding-left: 15px;
}
.canvas-mb .mb-bottom .btn-select {
    padding: 10px 0px;
}
.canvas-mb .btn-close-mb {
    position: absolute;
    right: 20px;
    top: 20px;
    cursor: pointer;
    color: var(--black);
    z-index: 100;
}
.canvas-mb .mb-canvas-content {
    padding-top: 70px;
    min-width: 100%;
    max-width: min(90%, 320px);
    grid-auto-rows: minmax(0, 1fr) auto;
    isolation: isolate;
    height: 100%;
    width: 100%;
    display: grid;
    align-content: flex-start;
}
.nav-ul-mb {
    margin-bottom: 30px;
}
.nav-ul-mb .sub-nav-menu {
    padding-left: 10px;
    margin-bottom: 15px;
}
.nav-ul-mb .sub-nav-menu.sub-menu-level-2 {
    margin-bottom: 5px;
}
.nav-ul-mb .btn-open-sub {
    position: relative;
    width: 20px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.nav-ul-mb .btn-open-sub:after, .nav-ul-mb .btn-open-sub::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: var(--black);
    transition: 0.4s ease 0.1s;
    margin: auto;
}
.nav-ul-mb .btn-open-sub::before {
    width: 2px;
    height: 12px;
}
.nav-ul-mb .btn-open-sub::after {
    width: 12px;
    height: 2px;
}
.nav-ul-mb .nav-mb-item {
    padding: 2px 0px;
}
.nav-ul-mb .nav-mb-item:not(:last-child) {
    border-bottom: 1px solid var(--line);
}
.nav-ul-mb .nav-mb-item .mb-menu-link {
    min-height: 40px;
    font-weight: 600;
    font-size: 14px;
    line-height: 40px;
    color: var(--black);
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.nav-ul-mb .nav-mb-item .mb-menu-link:not(.collapsed) .btn-open-sub::before {
    transform: rotate(90deg);
}
.nav-ul-mb .nav-mb-item.active .mb-menu-link {
    color: var(--primary);
}
.nav-ul-mb .nav-mb-item.active .mb-menu-link .btn-open-sub::after, .nav-ul-mb .nav-mb-item.active .mb-menu-link .btn-open-sub::before {
    background-color: var(--primary);
}
.nav-ul-mb .nav-mb-item.active .sub-nav-link.active {
    color: var(--primary);
}
.nav-ul-mb .nav-mb-item.active .sub-nav-link.active .btn-open-sub::after, .nav-ul-mb .nav-mb-item.active .sub-nav-link.active .btn-open-sub::before {
    background-color: var(--primary);
}
.nav-ul-mb .sub-nav-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 32px;
    line-height: 32px;
    font-size: 14px;
    font-weight: 500;
    color: var(--dark);
}
.nav-ul-mb .sub-nav-link:not(.collapsed) .btn-open-sub::before {
    transform: rotate(90deg);
}
.nav-ul-mb .sub-nav-link .btn-open-sub::after, .nav-ul-mb .sub-nav-link .btn-open-sub::before {
    background-color: var(--black);
}
/* -- End Open Nav Mobile -- */
.tf-nav-menu .title {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 13px 18px;
    background-color: var(--primary);
    color: var(--white);
    border-radius: 10px 10px 0px 0px;
    overflow: hidden;
}
.tf-nav-menu .menu-category-list {
    border: 1px solid var(--gray-5);
    border-top: unset;
    border-radius: 0px 0px 10px 10px;
    position: relative;
}
.tf-nav-menu .menu-item {
    position: relative;
}
.tf-nav-menu .sub-menu-container {
    position: absolute;
    top: 0;
    left: 100%;
    width: max-content;
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.0509803922);
    border: 1px solid var(--gray-5);
    border-radius: 10px;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    transform: translateY(10px);
    z-index: 1;
    background-color: var(--white);
}
.tf-nav-menu .sub-menu-list {
    padding: 30px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.tf-nav-menu .sub-menu-list .sub-menu-item {
    display: inline-flex;
}
.tf-nav-menu .item-link {
    padding: 0px 18px;
    position: relative;
    display: flex;
}
.tf-nav-menu .item-link > span {
    padding: 15px 0px 14px;
    display: flex;
    gap: 6px;
    align-items: center;
    width: 100%;
    position: relative;
}
.tf-nav-menu .item-link > span::after {
    content: none;
    position: absolute;
    width: 0%;
    height: 1px;
    bottom: 0;
    left: auto;
    right: 0;
    background-color: var(--primary);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.tf-nav-menu .item-link::after {
    content: "\e919";
    position: absolute;
    font-family: "icomoon";
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
}
.tf-nav-menu .menu-item .icon {
    font-size: 20px;
}
.tf-nav-menu .menu-item:not(:last-child) .item-link > span {
    border-bottom: 1px solid var(--line-2);
}
.tf-nav-menu .menu-item:hover .item-link {
    color: var(--primary);
}
.tf-nav-menu .menu-item:hover .item-link svg path {
    stroke: var(--primary);
}
.tf-nav-menu .menu-item:hover .item-link > span::after {
    width: 100%;
    left: 0;
    right: auto;
}
.tf-nav-menu .menu-item:hover .sub-menu-container {
    transform: translateY(0px);
    opacity: 1;
    visibility: visible;
    pointer-events: all;
}
.main-nav-menu .nav-list {
    display: flex;
    align-items: center;
    gap: 30px;
}
.main-nav-menu .item-link {
    display: flex;
    align-items: center;
    gap: 3px;
    line-height: 50px;
    color: var(--text-2);
    position: relative;
}
.main-nav-menu .item-link i {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    color: var(--text-2);
}
.main-nav-menu .item-link::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: var(--primary);
    transform: scale(0);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.main-nav-menu .item-link::before {
    content: "";
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: calc(100% + 0px);
    width: calc(100% + 60px);
    display: none;
}
.main-nav-menu .sub-menu-container {
    position: absolute;
    background-color: var(--white);
    z-index: 999;
    top: 100%;
    left: 0;
    border-radius: 5px;
    box-shadow: 0px 4px 9px 0px rgba(0, 64, 193, 0.2);
    transform: translateY(10px);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    padding: 5px 0px;
}
.main-nav-menu .sub-menu-container.mega-menu {
    padding: 30px;
}
.main-nav-menu .sub-menu-container.mega-menu.mega-home {
    padding-top: 32px;
    padding-bottom: 36px;
}
.main-nav-menu .sub-menu-list {
    min-width: 200px;
}
.main-nav-menu .sub-menu-list li:not(:last-child) a span {
    border-bottom: 1px solid var(--gray-5);
}
.main-nav-menu .sub-menu-list li a {
    padding: 0px 20px;
    display: block;
}
.main-nav-menu .sub-menu-list li a span {
    padding: 10px 0px;
    display: block;
    position: relative;
}
.main-nav-menu .sub-menu-list li.active a {
    color: var(--primary);
}
.main-nav-menu .nav-item {
    position: relative;
}
.main-nav-menu .nav-item:hover .item-link {
    color: var(--primary);
}
.main-nav-menu .nav-item:hover .item-link .icon {
    transform: rotate(180deg);
    color: var(--primary);
}
.main-nav-menu .nav-item:hover .item-link::after {
    transform: scale(1);
}
.main-nav-menu .nav-item:hover .item-link::before {
    display: block;
}
.main-nav-menu .nav-item:hover .sub-menu-container {
    transform: translateY(0px);
    opacity: 1;
    visibility: visible;
    pointer-events: all;
}
.main-nav-menu .nav-item.active .item-link {
    color: var(--primary);
}
.main-nav-menu .nav-item.active .item-link .icon {
    color: var(--primary);
}
.main-nav-menu.style-white .item-link {
    color: var(--white);
}
.main-nav-menu.style-white .item-link .icon {
    color: var(--white);
}
.main-nav-menu.style-white .item-link::after {
    background-color: var(--black);
}
.main-nav-menu.style-white .nav-item:hover .item-link, .main-nav-menu.style-white .nav-item.active .item-link {
    color: var(--black);
}
.main-nav-menu.style-white .nav-item:hover .item-link .icon, .main-nav-menu.style-white .nav-item.active .item-link .icon {
    color: var(--black);
}
.main-nav-menu.style-white-2 .item-link {
    color: var(--white);
}
.main-nav-menu.style-white-2 .item-link .icon {
    color: var(--white);
}
.main-nav-menu.style-white-2 .item-link::after {
    background-color: var(--primary);
}
.mega-menu {
    width: auto;
    overflow: auto;
}
.mega-menu .view-all-demo {
    margin-top: 28px;
}
.mega-menu.mega-home {
    max-width: unset;
    width: 100%;
}
.mega-menu.here {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: all !important;
}
.mega-menu .wrapper-sub-menu {
    max-width: 1490px;
    margin: auto;
}
.row-demo {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 20px;
    overflow-y: auto;
    padding-right: 15px;
    margin-right: -15px;
}
.row-demo::-webkit-scrollbar {
    width: 5px;
}
.row-demo::-webkit-scrollbar-thumb {
    background-color: var(--primary);
    border-radius: 5px;
}
.row-demo .demo-item {
    border-radius: 8px;
    background-color: #f7f7f7;
    padding: 8px 8px 0px;
    border: solid 1px var(--gray-4);
    transition: border 0.4s;
    margin-bottom: 1px;
    display: inline-flex;
    position: relative;
}
.row-demo .demo-item > a {
    display: flex;
    flex-direction: column;
}
.row-demo .demo-item .demo-name {
    font-size: 14px;
    line-height: 42px;
    display: block;
    text-wrap: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    text-align: center;
    font-weight: 600;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    color: var(--text-main);
}
.row-demo .demo-item:hover, .row-demo .demo-item.active {
    border-color: var(--primary);
}
.row-demo .demo-item:hover .demo-name, .row-demo .demo-item.active .demo-name {
    color: var(--primary);
}
.demo-label {
    position: absolute;
    top: 9px;
    right: 7px;
    gap: 5px;
    display: flex;
}
.demo-label span {
    font-size: 10px;
    line-height: 19px;
    padding: 0 8px;
    background-color: rgb(131, 183, 53);
    color: var(--white);
    border-radius: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.demo-label .demo-new {
    background-color: rgb(72, 212, 187);
}
.demo-label .demo-hot {
    background-color: rgb(252, 87, 50);
}
.wrapper-sub-menu {
    display: flex;
    gap: 30px;
}
.mega-menu-item {
    min-width: 140px;
}
.mega-menu-item .menu-heading {
    font-weight: 600;
    padding-bottom: 10px;
    margin-bottom: 15px;
    border-bottom: 1px solid var(--gray-4);
}
.mega-menu-item .menu-list li:not(:last-child) {
    margin-bottom: 10px;
}
.mega-menu-item .menu-list li.active a {
    color: var(--primary);
}
.bottom-bar-language {
    display: flex;
    align-items: center;
}
.bottom-bar-language > * {
    width: 100%;
    display: flex;
    justify-content: center;
}
.bottom-bar-language .tf-curs {
    border-right: 1px solid var(--gray-4);
}
.bottom-bar-language .tf-lans .filter-option-inner-inner {
    padding: 8px 20px;
}
.bottom-bar-language .tf-lans .dropdown-menu {
    padding: 7px 5px !important;
}
.bottom-bar-language .image-select .filter-option-inner-inner {
    padding: 10px 10px !important;
}
.bar-lang .image-select .dropdown-toggle .filter-option-inner {
    padding-right: 10px;
}
.bar-lang .image-select .dropdown-toggle::after {
    content: "\e918";
    margin: 0;
}
.bar-lang .image-select .filter-option-inner-inner {
    padding: 4px 10px;
}
.bar-lang .image-select > .dropdown-menu {
    min-width: 90px;
    padding: 15px 20px !important;
}
.bar-lang .image-select > .dropdown-menu > .inner {
    overflow-y: hidden !important;
}
.bar-lang .image-select > .dropdown-menu ul > li {
    width: 100%;
}
.bar-lang .image-select > .dropdown-menu .dropdown-item {
    width: 100%;
}
.bar-lang .image-select > .dropdown-menu .dropdown-item .text {
    justify-content: flex-start;
}
.bar-lang .tf-curs .image-select > .dropdown-menu {
    margin-left: -60px !important;
    width: 200px;
}
.bar-lang .tf-curs .filter-option-inner {
    padding-right: 17px !important;
}
.bar-lang .tf-curs .filter-option-inner-inner {
    width: 40px;
}
.tf-lans .dropdown-menu {
    padding: 10px 5px;
}
.tf-curs .inner {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.tf-curs .dropdown-menu {
    border-radius: 8px;
}
.tf-curs .dropdown-menu a .text img {
    border-radius: 50%;
    width: 20px !important;
}
.tf-curs .dropdown-menu li:not(:last-child) {
    margin-bottom: 5px;
}
/*------------ footer ---------------- */
.tf-footer .ft-body-inner {
    background-color: var(--bg);
    padding: 50px 0px;
}
.ft-inner {
    display: flex;
    gap: 30px;
}
.ft-inner .ft-logo {
    display: flex;
    flex-direction: column;
    gap: 15px;
    flex-shrink: 0;
}
.method-list {
    display: flex;
    gap: 20px;
}
.ft-link-wrap {
    gap: 30px;
}
.ft-link-wrap .footer-col-block {
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.ft-link-wrap .ft-menu-list {
    display: grid;
    gap: 12px;
}
.ft-link-wrap .ft-contact-list li {
    display: flex;
    gap: 15px;
    align-items: flex-start;
}
.ft-link-wrap .ft-contact-list .icon {
    display: block;
    position: relative;
    padding-right: 8px;
}
.ft-link-wrap .ft-contact-list .icon::after {
    content: "";
    position: absolute;
    right: 0;
    height: 16px;
    width: 1px;
    background-color: var(--line-3);
    top: 50%;
    transform: translateY(-50%);
    opacity: 0.2;
}
.ft-body-center .ft-center {
    padding: 18px 0px;
    gap: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}
.ft-body-center .ft-center .form-newsletter {
    max-width: 566px;
    width: 100%;
}
.ft-body-center .ft-center .form-newsletter fieldset {
    width: 100%;
}
.ft-body-center .ft-center .form-newsletter input {
    width: 100%;
}
.ft-body-center .notice {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 10px 30px;
    flex-wrap: wrap;
}
.ft-body-center .notice span {
    display: flex;
    align-items: center;
    gap: 10px;
}
.ft-bottom {
    padding: 50px 0px;
    display: grid;
    gap: 12px;
}
.ft-bottom .ft-menu-list-2 {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px 30px;
}
.social-list {
    display: flex;
    justify-content: center;
    gap: 10px;
}
.social-list a {
    width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid var(--gray-5);
    background-color: var(--white);
}
.social-list a:hover {
    background-color: var(--primary);
    border-color: var(--primary);
    color: var(--white);
}
.social-list.style-2 {
    gap: 10px;
}
.social-list.style-2 a {
    width: 36px;
    height: 36px;
}
/*------------ tabs ---------------- */
.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 .flat-title-tab-default .menu-tab-line {
    display: flex;
    align-items: center;
    gap: 30px;
}
.flat-animate-tab .flat-title-tab-default .tab-link.active {
    color: var(--primary);
}
.flat-title-tab-nav-mobile {
    margin-bottom: 20px;
}
.flat-title-tab-nav-mobile .menu-tab-line {
    display: flex;
    align-items: center;
    gap: 5px;
    border-radius: 999px;
    border: 1px solid var(--line);
    padding: 7px 10px;
}
.flat-title-tab-nav-mobile .nav-tab-item {
    text-align: center;
    width: 100%;
}
.flat-title-tab-nav-mobile .nav-tab-item a.active {
    color: var(--primary);
}
.flat-title-tab-product-des {
    border-radius: 6px;
    border: 1px solid var(--gray-5);
}
.flat-title-tab-product-des .flat-title-tab {
    background-color: var(--gray-6);
}
.flat-title-tab-product-des .menu-tab-line {
    padding: 13px 18px;
    display: flex;
    gap: 30px;
    align-items: center;
    white-space: nowrap;
    overflow: auto;
}
.flat-title-tab-product-des .menu-tab-line .tab-link:hover {
    color: var(--secondary);
}
.flat-title-tab-product-des .menu-tab-line .tab-link.active {
    color: var(--secondary);
}
.flat-title-tab-product-des .tab-main {
    padding: 30px;
}
.flat-title-tab-product-des .box-total-btn {
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: 200px;
    width: 100%;
}
.flat-title-tab-product-des .card-usually {
    max-width: 251px;
    width: 100%;
}
.list-feature > li {
    display: flex;
    align-items: center;
    gap: 20px;
}
.list-feature > li:not(:last-child) {
    padding-bottom: 4px;
    border-bottom: 1px solid var(--gray-5);
    margin-bottom: 4px;
}
.list-feature .name-feature {
    font-weight: 600;
    font-size: 14px;
    line-height: 22px;
    max-width: 236px;
    width: 100%;
    flex-grow: 2;
}
.list-feature .property {
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    width: 100%;
    flex-grow: 1;
}
.tab-usually {
    display: flex;
    gap: 20px 30px;
    align-items: center;
    flex-wrap: wrap;
}
.tab-des {
    display: flex;
    flex-direction: column;
    gap: 30px;
    align-items: center;
}
.tab-review {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}
.tab-review .tab-rating-wrap {
    width: 100%;
}
.tab-review .tab-review-wrap {
    width: 100%;
}
.tab-review .add-comment-wrap h5 {
    margin-bottom: 30px;
}
.tab-review.style-2 {
    gap: 30px;
}
.tab-review.style-2 .tab-rating-wrap {
    flex-wrap: wrap;
    padding-bottom: 30px;
    border-radius: unset;
    border-bottom: 1px solid var(--gray-5);
}
.tab-review.style-2 .tab-review-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px 40px;
}
.tab-rating-wrap {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.rating-progress-list {
    display: grid;
    gap: 10px;
}
.rating-progress-list p {
    flex-grow: 1;
}
.rating-progress-list li {
    display: flex;
    align-items: center;
    gap: 10px;
}
.rating-progress-list .rating-progress {
    width: 100%;
}
.rating-filter-wrap .title-sidebar {
    margin-bottom: 12px;
}
.rating-filter-list {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.rating-filter-list a {
    padding: 5px 20px;
    border-radius: 18px;
    background-color: var(--gray-6);
}
.rating-filter-list a:hover, .rating-filter-list a.active {
    background-color: var(--primary);
    color: var(--white);
}
.flat-title-tab-faq .tf-title {
    position: relative;
    padding-bottom: 28px;
    margin-bottom: 30px;
}
.flat-title-tab-faq .tf-title::after {
    content: "";
    bottom: 0;
    left: 0;
    position: absolute;
    max-width: 123px;
    width: 100%;
    height: 2px;
    background-color: var(--primary);
}
.flat-title-tab-faq .menu-tab-line {
    display: grid;
    gap: 16px;
}
.flat-title-tab-faq .tab-link.active, .flat-title-tab-faq .tab-link:hover {
    font-weight: 600;
    color: var(--primary);
}
/*------------ button ---------------- */
.tf-btn {
    font-weight: 600;
    font-size: 15px;
    line-height: 24px;
    text-align: center;
    padding: 10px 16px;
    border-radius: 8px;
    background-color: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.tf-btn:hover {
    background-color: var(--gray);
}
.tf-btn.hover-2:hover {
    background-color: var(--secondary) !important;
}
.tf-btn.btn-line {
    background-color: unset;
    border: 1px solid var(--gray-4);
    padding-top: 9px;
    padding-bottom: 9px;
}
.tf-btn.btn-line:hover {
    background-color: var(--gray);
    color: var(--white);
}
.tf-btn.btn-line-white {
    background-color: unset;
    border: 2px solid var(--white);
    color: var(--white);
    padding-top: 8px;
    padding-bottom: 8px;
}
.tf-btn.btn-line-white:hover {
    background-color: var(--primary);
    color: var(--white) !important;
    border-color: var(--primary);
}
.tf-btn.btn-gray {
    background-color: var(--gray);
}
.tf-btn.btn-gray:hover {
    background-color: var(--primary);
}
.tf-btn.btn-gray-2 {
    background-color: var(--gray-4);
    color: var(--gray-2);
}
.tf-btn.btn-gray-2:hover {
    background-color: var(--primary);
    color: var(--white);
}
.tf-btn.style-2 {
    gap: 6px;
    padding: 6px 12px;
    border: 1px solid rgba(255, 255, 255, 0.1019607843);
    background: rgba(255, 255, 255, 0.1019607843);
    border-radius: 100px;
}
.tf-btn.style-2:hover {
    background-color: var(--primary);
    color: var(--white);
}
.tf-btn.style-3 {
    display: inline-flex;
    border-radius: 100px;
    background-color: var(--secondary);
    color: var(--white);
    padding: 7px 15px 7px;
}
.tf-btn.btn-large {
    padding: 12px 32px 11px;
}
.tf-btn.btn-large-2 {
    padding: 10px 83.5px;
}
.tf-btn.btn-large-3 {
    padding: 14px 30px;
}
.tf-btn.btn-large-4 {
    padding: 14px 20px;
}
.tf-btn.btn-small {
    padding: 5px 19px;
}
.hover-shine {
    position: relative;
    overflow: hidden;
}
.hover-shine::after {
    content: "";
    position: absolute;
    width: 200%;
    height: 0%;
    left: 50%;
    top: 50%;
    background-color: rgba(255, 255, 255, 0.5);
    transform: translate(-50%, -50%) rotate(-45deg);
    z-index: 1;
    transition: all 0.6s ease;
}
.hover-shine:hover {
    background-color: var(--primary);
}
.hover-shine:hover::after {
    height: 350%;
    background-color: transparent;
}
.hover-shine:not(:hover)::after {
    transition: none;
}
.btn-direc {
    display: flex;
    gap: 20px;
}
.btn-direc .icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    border: 1px solid var(--gray-5);
    color: var(--gray);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.btn-direc:hover {
    color: var(--primary);
}
.btn-direc:hover .icon {
    border-color: var(--primary);
    color: var(--primary);
}
.tf-btn-icon {
    display: flex;
    align-items: center;
    gap: 5px;
    font-weight: 600;
    font-size: 14px;
    line-height: 17px;
    color: var(--black);
}
.tf-btn-icon i {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    color: var(--black);
}
.tf-btn-icon svg path {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.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);
}
.tf-btn-icon.type-2 {
    font-weight: 600;
    font-size: 20px;
    line-height: 25px;
}
.tf-btn-icon.type-2 i {
    font-size: 16px;
}
.tf-btn-icon.style-2 {
    gap: 4px;
    color: var(--secondary);
}
.tf-btn-icon.style-2 i {
    color: var(--primary);
}
.tf-btn-icon.style-2:hover {
    color: var(--primary);
}
.tf-btn-icon.style-2:hover svg path {
    stroke: var(--primary);
}
.tf-btn-icon.style-2.type-black {
    color: var(--black);
}
.tf-btn-icon.style-2.type-black:hover {
    color: var(--primary);
}
.hover-link-icon:hover .link-icon {
    animation: link-icon 0.3s linear;
}
@keyframes link-icon {
    0% {
        transform: translateX(0);
        opacity: 1;
    }
    49% {
        transform: translateX(10px);
        opacity: 0;
    }
    50% {
        transform: translateX(-10px);
        opacity: 0;
    }
    100% {
        transform: translateX(0);
        opacity: 1;
    }
}
.tf-btn-filter {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    border: 1px solid var(--gray-5);
    border-radius: 1000px;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.tf-btn-filter svg path {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.tf-btn-filter:hover {
    background-color: var(--primary);
    color: var(--white);
}
.tf-btn-filter:hover svg {
    fill: var(--white);
}
.tf-btn-filter:hover svg path {
    stroke: var(--white);
}
/*------------ form ---------------- */
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%;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    border-radius: 10px;
    color: var(--black);
    overflow: hidden;
    border: 1px solid var(--gray-4);
    padding: 12px 10px 12px 14px;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
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: 14px;
    line-height: 20px;
    color: var(--gray-2);
}
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(--primary);
}
form textarea:hover,
form input[type=text]:hover,
form input[type=password]:hover,
form input[type=datetime]:hover,
form input[type=datetime-local]:hover,
form input[type=date]:hover,
form input[type=month]:hover,
form input[type=time]:hover,
form input[type=week]:hover,
form input[type=number]:hover,
form input[type=email]:hover,
form input[type=url]:hover,
form input[type=search]:hover,
form input[type=tel]:hover,
form input[type=color]:hover {
    border-color: var(--primary);
}
form textarea.type-fs-2,
form input[type=text].type-fs-2,
form input[type=password].type-fs-2,
form input[type=datetime].type-fs-2,
form input[type=datetime-local].type-fs-2,
form input[type=date].type-fs-2,
form input[type=month].type-fs-2,
form input[type=time].type-fs-2,
form input[type=week].type-fs-2,
form input[type=number].type-fs-2,
form input[type=email].type-fs-2,
form input[type=url].type-fs-2,
form input[type=search].type-fs-2,
form input[type=tel].type-fs-2,
form input[type=color].type-fs-2 {
    font-size: 13px;
    line-height: 25px;
}
form textarea.type-fs-2::placeholder,
form input[type=text].type-fs-2::placeholder,
form input[type=password].type-fs-2::placeholder,
form input[type=datetime].type-fs-2::placeholder,
form input[type=datetime-local].type-fs-2::placeholder,
form input[type=date].type-fs-2::placeholder,
form input[type=month].type-fs-2::placeholder,
form input[type=time].type-fs-2::placeholder,
form input[type=week].type-fs-2::placeholder,
form input[type=number].type-fs-2::placeholder,
form input[type=email].type-fs-2::placeholder,
form input[type=url].type-fs-2::placeholder,
form input[type=search].type-fs-2::placeholder,
form input[type=tel].type-fs-2::placeholder,
form input[type=color].type-fs-2::placeholder {
    font-size: 13px;
    line-height: 25px;
}
form textarea.def,
form input[type=text].def,
form input[type=password].def,
form input[type=datetime].def,
form input[type=datetime-local].def,
form input[type=date].def,
form input[type=month].def,
form input[type=time].def,
form input[type=week].def,
form input[type=number].def,
form input[type=email].def,
form input[type=url].def,
form input[type=search].def,
form input[type=tel].def,
form input[type=color].def {
    padding: 11px 10px 11px 14px;
}
form button,
form input[type=button],
form input[type=reset],
form input[type=submit] {
    background-color: transparent;
    overflow: hidden;
    padding: 0;
}
form textarea {
    height: 124px;
}
form .cols {
    display: flex;
    gap: 20px;
}
form .cols > * {
    width: 100%;
}
form .cols.gap-17 {
    gap: 17px;
}
form .tf-select {
    position: relative;
}
form .tf-select select {
    appearance: unset;
    border: unset;
    width: 100%;
    padding: 11px 24px;
    border-radius: 8px;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    border: 1px solid var(--gray-4);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    cursor: pointer;
}
form .tf-select select:hover, form .tf-select select:focus {
    border-color: var(--primary);
}
form .tf-select::after {
    position: absolute;
    content: "\e918";
    font-family: "icomoon";
    font-size: 14px;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--gray-2);
}
form.def {
    display: grid;
    gap: 20px;
}
form.def fieldset label {
    font-weight: 600;
    font-size: 14px;
    line-height: 22px;
    margin-bottom: 6px;
}
form.def textarea {
    height: 130px;
}
button {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    border: unset;
}
.form-search-product {
    border: 2px solid var(--primary);
    border-radius: 100px;
    display: flex;
    gap: 15px;
    align-items: center;
    max-width: 760px;
    width: 100%;
    padding: 0px 22px;
    position: relative;
}
.form-search-product fieldset {
    max-width: 500px;
    width: 100%;
}
.form-search-product fieldset input {
    border: unset;
    border-radius: unset;
    padding: 8px 0px;
    font-size: 13px;
    line-height: 25px;
}
.form-search-product fieldset input::placeholder {
    font-size: 13px;
    line-height: 25px;
}
.form-search-product .btn-submit-form {
    position: absolute;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background-color: var(--primary);
    border: unset;
    color: var(--white);
    right: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.form-search-product .btn-submit-form:hover {
    background-color: var(--gray);
}
.form-search-product.style-2 {
    border: 1px solid var(--gray-4);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    max-width: 716px;
}
.form-search-product.style-2:hover {
    border-color: var(--primary);
}
.form-search-product.style-2 input {
    padding: 9px 0px;
}
.form-search-product.style-3 {
    border: 1px solid var(--gray-4);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    max-width: 760px;
    width: 100%;
}
.form-search-product.style-3:hover {
    border-color: var(--primary);
}
.form-search-product.style-3 input {
    padding: 9px 0px;
}
.form-log {
    display: grid;
    gap: 18px;
}
.form-log .form-content {
    display: grid;
    gap: 16px;
}
.form-log fieldset label {
    margin-bottom: 6px;
}
.form-search {
    position: relative;
}
.form-search .button-submit {
    display: flex;
    align-items: center;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
}
.form-search .button-submit i {
    color: var(--black);
    font-size: 20px;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.form-search .button-submit:hover i {
    color: var(--primary);
}
.form-search-2 {
    position: relative;
    max-width: 331px;
    width: 100%;
}
.form-search-2 fieldset input {
    border-radius: unset;
    border-color: transparent;
    background-color: transparent;
    color: var(--white);
    padding-right: 80px;
}
.form-search-2 fieldset input::placeholder {
    color: var(--white);
}
.form-search-2 fieldset input:focus {
    border-color: var(--white);
}
.form-search-2 fieldset input:hover {
    border-color: var(--white);
}
.form-search-2 .box-btn {
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
}
.form-search-2 .box-btn button {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--white);
}
.form-search-2 .box-btn button:hover {
    color: var(--gray);
}
.form-search-3 fieldset input {
    padding: 13px 40px 13px 14px;
}
.form-search-3 .button-submit {
    display: flex;
    align-items: center;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
}
.form-search-3 .button-submit i {
    color: var(--black);
    font-size: 20px;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.form-search-3 .button-submit:hover i {
    color: var(--primary);
}
.form-newsletter .subscribe-content {
    display: flex;
    gap: 12px;
    align-items: center;
}
.form-newsletter .subscribe-content input {
    border-radius: 1000px;
    padding: 10px 22px;
    border: unset;
}
.form-newsletter .subscribe-button {
    border-radius: 1000px;
}
.form-add-comment {
    display: grid;
    gap: 16px;
}
.form-add-comment fieldset {
    display: flex;
    flex-direction: column;
    gap: 10px 20px;
}
.form-add-comment label {
    font-size: 14px;
    line-height: 20px;
}
.form-add-comment .btn-submit {
    margin: auto;
}
.checkbox-item-wrap {
    position: relative;
    display: flex;
    align-items: center;
}
.checkbox-item-wrap label {
    cursor: pointer;
    position: relative;
    height: 24px;
    width: 24px;
}
.checkbox-item-wrap label .checkbox-item {
    position: absolute;
    opacity: 0;
    left: 0;
    top: 50%;
    border-radius: 50%;
    transform: translate(0, -50%);
}
.checkbox-item-wrap label .checkbox-item:checked ~ .btn-checkbox:after {
    display: flex;
    justify-content: center;
    align-items: center;
}
.checkbox-item-wrap label .checkbox-item:checked ~ .btn-radio:after {
    display: block;
}
.checkbox-item-wrap .btn-checkbox {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 4px;
    width: 100%;
    height: 100%;
    background-color: var(--white);
    border: 1px solid var(--gray-4);
}
.checkbox-item-wrap .btn-checkbox:after {
    font-family: "icomoon";
    position: absolute;
    content: "\e934";
    color: var(--gray);
    border-radius: 4px;
    font-size: 20px;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background-color: var(--white);
    display: none;
}
.form-checkout-contact {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.radio-item {
    display: flex;
    align-items: center;
    gap: 5px;
}
.radio-item .tf-check-rounded {
    width: 20px;
    height: 20px;
    border-radius: 6px;
    border: 1px solid var(--gray-4);
    appearance: unset;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}
.radio-item .tf-check-rounded::after {
    content: "\e934";
    font-family: "icomoon";
    position: absolute;
    display: none;
}
.radio-item .tf-check-rounded:checked::after {
    display: block;
}
.tf-check {
    position: relative;
    background: transparent;
    cursor: pointer;
    outline: 0;
    -webkit-appearance: none;
    width: 16px;
    height: 16px;
    min-width: 16px;
    border: 1px solid var(--gray-4);
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 2px;
}
.tf-check:checked {
    border-color: var(--primary);
}
.tf-check:checked::before {
    opacity: 1;
    transform: scale(1);
}
.tf-check::before {
    width: 10px;
    height: 10px;
    font-weight: 500;
    content: "";
    position: absolute;
    background-color: var(--primary);
    border-radius: 1px;
    opacity: 0;
    transform: scale(0);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.form-filter-price {
    display: flex;
    gap: 12px;
    align-items: center;
}
.form-filter-price fieldset input {
    box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.1019607843) inset;
    border: 1px solid #E1E1E1;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    padding: 9px;
    border-radius: 3px;
}
.form-filter-price .cols {
    gap: 12px;
    align-items: center;
}
.form-filter-price .br-line {
    width: 6px;
    height: 2px;
    background-color: var(--gray-4);
}
.form-filter-price .btn-filter-price {
    border: 1px solid var(--gray-4);
    border-radius: 3px;
    padding: 6px 18px;
}
.tf-dropdown-sort .icon {
    font-size: 14px;
}
.tf-dropdown-sort .btn-select {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
}
.tf-dropdown-sort .btn-select {
    text-wrap: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.tf-dropdown-sort .dropdown-menu {
    border: 1px solid var(--gray-5);
    min-width: 204px;
    padding: 15px 5px;
    border-radius: 0;
    max-height: 68vh;
    isolation: isolate;
    overscroll-behavior-y: contain;
    overflow-y: auto;
}
.tf-dropdown-sort .dropdown-menu::-webkit-scrollbar {
    width: 5px;
}
.tf-dropdown-sort .dropdown-menu::-webkit-scrollbar-thumb {
    border-radius: 4px;
}
.tf-dropdown-sort .select-item {
    position: relative;
    font-size: 14px;
    font-weight: 500;
    color: var(--secondary);
    padding: 0 15px;
    line-height: 30px;
    width: 100%;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.tf-dropdown-sort .select-item.active {
    background-color: var(--gray-4);
    color: var(--black);
    padding: 0 15px !important;
    border: 0 !important;
}
.tf-dropdown-sort .select-item:hover {
    background-color: var(--gray-4);
    color: var(--black);
}
.tf-dropdown-sort:hover {
    border-color: var(--black);
}
.wd-form-address {
    padding: 32px;
    border: 1px solid var(--gray-4);
    border-radius: 16px;
}
.wd-form-address .form-content {
    display: grid;
    gap: 15px;
    margin-bottom: 20px;
}
.wd-form-address .form-content fieldset label {
    margin-bottom: 6px;
}
.wd-form-address .box-btn {
    display: flex;
    gap: 15px;
}
.tf-cart-checkbox {
    display: flex;
    align-items: center;
    gap: 10px;
}
.show-form-address,
.edit-form-address {
    display: none;
}
.edit-form-address {
    margin-top: 24px;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none !important;
    margin: 0;
}
.form-account-details .form-content {
    display: grid;
    gap: 20px;
}
/*------------ drop down ---------------- */
.select-category .dropdown_product_cat {
    display: none;
}
.select-category .close-option {
    cursor: pointer;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.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: 13px;
    font-style: normal;
    font-weight: 500;
    padding: 8px 10px;
    position: relative;
    cursor: pointer;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    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-size: 15px;
    font-weight: 500;
    padding-bottom: 20px;
    border-bottom: 1px solid #ededed;
    margin-bottom: 8px;
}
.tf-select-custom {
    display: block;
    cursor: pointer;
    width: 108px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: 15px;
    font-size: 13px;
    line-height: 25px;
    color: var(--text-2);
    position: relative;
    font-weight: 600;
}
.tf-select-custom::after {
    content: "\e918";
    position: absolute;
    font-family: "icomoon";
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.select-color {
    border: 1px solid var(--gray-4);
    padding: 11px 10px;
    border-radius: 8px;
    min-width: 216px;
    appearance: none;
    position: relative;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    cursor: pointer;
}
/*------------ carousel ---------------- */
.container-swiper {
    max-width: 542px;
    width: 100%;
    margin: auto;
}
.sw-dot-default {
    display: flex;
    gap: 10px;
    margin-top: 20px;
}
.sw-dot-default .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    background-color: var(--gray-4);
    position: relative;
    border-radius: 100px;
    opacity: 1;
    margin: 0 !important;
}
.sw-dot-default .swiper-pagination-bullet-active {
    width: 24px;
    background-color: var(--primary);
}
.swiper-pagination-lock {
    margin-top: 0px;
}
.box-btn-slide {
    display: flex;
    align-items: center;
    gap: 7px;
}
.nav-swiper {
    position: relative;
    color: var(--gray);
    width: unset;
    height: unset;
    top: unset;
    right: unset;
    bottom: unset;
    left: unset;
    margin-top: unset;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.nav-swiper:hover {
    color: var(--primary);
}
.nav-swiper.swiper-button-disabled {
    color: var(--gray-2);
}
.nav-swiper::after {
    font-size: 12px;
    content: none;
}
.box-btn-slide-item.hover-sw {
    position: relative;
}
.box-btn-slide-item.hover-sw svg {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.box-btn-slide-item.hover-sw svg rect {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.box-btn-slide-item.hover-sw .nav-swiper {
    max-width: 50px;
    width: 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: none;
}
.box-btn-slide-item.hover-sw .nav-swiper:hover svg rect {
    fill: var(--primary);
}
.box-btn-slide-item.hover-sw .swiper-button-prev {
    right: 100%;
}
.box-btn-slide-item.hover-sw .swiper-button-next {
    left: 100%;
}
.box-btn-slide-2 {
    position: relative;
}
.box-btn-slide-2.type-pst-2 .swiper {
    cursor: grab;
}
.box-btn-slide-2.sw-nav-effect .nav-swiper {
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.0784313725);
    background-color: var(--white);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.box-btn-slide-2.sw-nav-effect .nav-swiper i {
    font-size: 18px;
}
.box-btn-slide-2.sw-nav-effect .nav-swiper.nav-prev-products-2 {
    left: 15px;
}
.box-btn-slide-2.sw-nav-effect .nav-swiper.nav-next-products-2 {
    right: 15px;
}
.nav-swiper-2 {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: var(--white);
    color: var(--black);
    position: absolute;
    top: 50%;
    border: 1px solid var(--gray-4);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.nav-swiper-2::after {
    font-size: 15px;
}
.nav-swiper-2.swiper-button-prev {
    left: 5px;
}
.nav-swiper-2.swiper-button-next {
    right: 5px;
}
.nav-swiper-2:hover {
    background-color: var(--primary);
    border-color: var(--primary);
    color: var(--white);
}
/*------------ pop up ---------------- */
.modal::-webkit-scrollbar {
    width: 3px;
}
.modal::-webkit-scrollbar-thumb {
    background-color: var(--secondary);
    border-radius: 5px;
}
.offcanvas-backdrop {
    z-index: 2000;
    background-color: rgba(0, 0, 0, 0.6);
}
.offcanvas {
    z-index: 2001;
}
.modal-log .modal-log-wrap {
    padding: 30px;
    display: grid;
    gap: 30px;
}
.modal-log .modal-content .icon-close {
    position: absolute;
    top: 15px;
    right: 15px;
    cursor: pointer;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.modal-log .modal-content .icon-close:hover {
    color: var(--primary);
}
.modal-log .orther-log {
    position: relative;
}
.modal-log .orther-log .br-line {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.modal-log .orther-log p {
    display: inline-block;
    padding: 0px 10px;
    background-color: var(--white);
    position: relative;
    z-index: 5;
}
.modal-log .list-log {
    display: flex;
    gap: 10px;
}
.modal-log .list-log > * {
    width: 100%;
}
.canvas-sidebar .canvas-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
    padding-bottom: 10px;
    position: relative;
    text-transform: capitalize;
    font-size: 20px;
    line-height: 30px;
    font-weight: 500;
    color: var(--dark);
}
.canvas-sidebar .canvas-header .icon-close-popup {
    font-size: 12px;
    height: 32px;
    width: 32px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    cursor: pointer;
}
.canvas-sidebar .canvas-header::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 15px;
    right: 15px;
    height: 1px;
    background-color: var(--line);
}
.canvas-sidebar .canvas-body {
    overscroll-behavior-y: contain;
    overflow-y: auto;
    height: 100vh;
    padding: 15px 20px;
    background-color: var(--white);
    max-width: unset;
}
.canvas-sidebar .canvas-body::-webkit-scrollbar {
    width: 3px;
}
.canvas-sidebar .canvas-body::-webkit-scrollbar-thumb {
    background-color: var(--primary);
    border-radius: 5px;
    cursor: grab;
}
.gridLayout-wrapper {
    position: relative;
    min-height: 300px;
}
.gridLayout-wrapper.loading::after {
    content: "";
    position: absolute;
    top: 10%;
    left: 50%;
    width: 40px;
    height: 40px;
    border: 3px solid rgba(0, 0, 0, 0.2);
    border-top-color: #000;
    border-radius: 50%;
    animation: spin 0.3s linear infinite;
    transform: translate(-50%, -50%);
    z-index: 10000;
}
.canvas-filter-product {
    background-color: var(--white);
}
.canvas-filter-product .canvas-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
    padding-bottom: 10px;
    position: relative;
    text-transform: capitalize;
    font-size: 20px;
    line-height: 30px;
    font-weight: 500;
    box-shadow: 0px -5px 18px 5px rgba(64, 72, 87, 0.1490196078);
}
.canvas-filter-product .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-filter-product .canvas-body {
    height: unset;
}
.canvas-filter-product .canvas-bottom {
    box-shadow: 0px 5px 18px 5px rgba(64, 72, 87, 0.1490196078);
    padding: 15px;
    background-color: var(--white);
}
.popup-style {
    z-index: 3000;
    border: 0;
}
.popup-style .popup-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;
}
.popup-style .icon-close-popup {
    cursor: pointer;
}
.popup-style .popup-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 30px;
    padding-bottom: 20px;
    margin: 0px 20px;
    border-bottom: 1px solid var(--gray-4);
}
.popup-style .popup-body {
    overscroll-behavior-y: contain;
    overflow-y: auto;
    padding: 20px;
}
.popup-style .popup-body::-webkit-scrollbar {
    width: 3px;
}
.popup-style .popup-body::-webkit-scrollbar-thumb {
    background-color: var(--primary);
    border-radius: 5px;
    cursor: grab;
}
.popup-style .popup-footer {
    padding: 20px 20px 30px 20px;
}
.popup-shopping-cart .popup-footer {
    box-shadow: 0px 5px 13px 5px rgba(64, 72, 87, 0.1490196078);
    display: grid;
    gap: 15px;
}
.popup-shopping-cart .cart-total {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.popup-shopping-cart .box-btn {
    display: flex;
    gap: 10px;
    width: 100%;
}
.popup-shopping-cart .box-btn > * {
    width: 100%;
}
.popup-shopping-cart .card-product {
    flex-direction: row !important;
}
.popup-shopping-cart .card-product .card-product-wrapper {
    max-width: 122px !important;
    flex-shrink: 0;
}
.minicart-empty {
    padding: 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 30px;
}
.modal-def .icon-close-popup {
    position: absolute;
    right: 0px;
    top: 0px;
    cursor: pointer;
    z-index: 5;
    padding: 10px;
}
.modal-def .modal-content {
    border-radius: 8px;
    overflow: hidden;
}
.modal-quick-view .modal-dialog {
    max-width: 1200px;
    padding-left: 15px;
    padding-right: 15px;
    margin-left: auto;
    margin-right: auto;
}
.modal-quick-view .modal-content {
    display: flex;
}
.modal-quick-view .quickview-image {
    padding: 15px;
}
.modal-quick-view .quickview-image .tf-image-view {
    aspect-ratio: 450/500;
}
.modal-quick-view .quickview-image .tf-image-view img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.modal-quick-view .quickview-info-wrap {
    flex: 0 0 auto;
    max-width: 100%;
    flex-grow: 1;
    position: relative;
    margin: 0;
}
.modal-quick-view .quickview-info-inner {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 15px;
}
.modal-quick-view .quickview-info-inner::-webkit-scrollbar {
    width: 3px;
}
.modal-quick-view .quickview-info-inner::-webkit-scrollbar-thumb {
    background-color: var(--primary);
    border-radius: 5px;
}
.modal-quick-view .box-quantity-wrap {
    display: flex;
    gap: 20px;
    align-items: center;
}
.modal-quick-view .info-short-decs .title-decs {
    margin-bottom: 10px;
}
.modal-quick-view .info-short-decs > ul li {
    position: relative;
    padding-left: 13px;
}
.modal-quick-view .info-short-decs > ul li::after {
    content: "";
    left: 0;
    top: 9px;
    position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: var(--black);
}
.modal-quick-view .info-short-decs > ul li:not(:last-child) {
    margin-bottom: 5px;
}
.modal-quick-view .quickview-heading {
    display: grid;
    gap: 10px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--gray-5);
}
.tf-single-slide .item {
    aspect-ratio: 540/650;
}
.tf-single-slide .item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.offcanvas-compare {
    z-index: 2001;
    height: auto !important;
    overflow: auto;
}
.offcanvas-compare .icon-close-popup {
    position: absolute;
    top: 24px;
    right: 24px;
    font-size: 16px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f7f7f7;
    border-radius: 50%;
    cursor: pointer;
}
.offcanvas-compare .tf-compare-list {
    display: flex;
    align-items: center;
    gap: 40px;
    padding: 24px 0px;
}
.offcanvas-compare .tf-compare-wrap {
    display: flex;
    align-items: center;
    flex-grow: 1;
    overflow: auto hidden;
    gap: 48px;
    padding: 24px 0;
    margin: -24px 0;
    padding-right: 20px;
    margin-right: -20px;
    scroll-behavior: smooth;
}
.offcanvas-compare .tf-compare-wrap::-webkit-scrollbar {
    height: 3px;
}
.offcanvas-compare .tf-compare-wrap::-webkit-scrollbar-thumb {
    background-color: var(--primary);
    border-radius: 3px;
}
.offcanvas-compare .tf-compare-buttons {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 220px;
    flex-shrink: 0;
}
.offcanvas-compare .tf-compare-item {
    width: 263px;
    flex-shrink: 0;
    position: relative;
    padding: 11px;
    border-radius: 12px;
    border: 1px solid var(--gray-4);
    display: flex;
    align-items: center;
    gap: 16px;
}
.offcanvas-compare .tf-compare-item .image {
    aspect-ratio: 92/123;
    flex-shrink: 0;
    border-radius: 8px;
    overflow: hidden;
    max-width: 92px;
    width: 100%;
}
.offcanvas-compare .tf-compare-item .image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.offcanvas-compare .tf-compare-item .icon-close {
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(50%, -50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background-color: var(--primary);
    border-radius: 50%;
    font-size: 12px;
    color: var(--white);
    z-index: 5;
    cursor: pointer;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.offcanvas-compare .tf-compare-item .icon-close:hover {
    background-color: var(--gray-2);
}
.offcanvas-compare .tf-compare-item > .btns-repeat {
    position: absolute;
    top: 50%;
    right: -32px;
    transform: translateY(-50%);
    display: flex;
    cursor: pointer;
}
.offcanvas-compare .tf-compare-item .content {
    display: grid;
    gap: 15px;
}
.offcanvas-compare .tf-compare-item:last-child > .btns-repeat {
    display: none;
}
.offcanvas-compare .tf-compare-btn {
    display: grid;
    gap: 15px;
}
.offcanvas-compare .tf-compapre-button-clear-all {
    cursor: pointer;
}
.modal-newleter .modal-dialog {
    transform: unset !important;
}
.modal-newleter .modal-content {
    padding: 20px;
    display: grid;
    gap: 20px;
}
.modal-newleter .heading {
    display: grid;
    gap: 15px;
}
.modal-newleter .form-sub {
    display: grid;
    gap: 15px;
}
.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 15px;
    max-height: calc(100vh - 60px);
    border: 0;
    cursor: default;
    overflow: hidden;
}
.modalDemo .demo-title {
    margin-top: 50px;
    margin-bottom: 44px;
}
.modalDemo .icon-close-popup {
    position: absolute;
    top: 18px;
    right: 18px;
}
.modalDemo .demo-menu-list {
    padding: 0 32px;
    overscroll-behavior-y: contain;
    overflow-y: auto;
    height: max-content;
}
.modalDemo .row-demo {
    grid-template-columns: repeat(5, 1fr);
}
.tf-toolbar-bottom {
    display: flex;
    padding: 11px 15px 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 20px 0px rgba(163, 163, 163, 0.2784313725);
}
.tf-toolbar-bottom .toolbar-item {
    width: 100%;
    position: relative;
}
.tf-toolbar-bottom .toolbar-item a {
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
    gap: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.tf-toolbar-bottom .toolbar-item a .toolbar-icon {
    width: 20px;
    height: 20px;
    position: relative;
}
.tf-toolbar-bottom .toolbar-item a .toolbar-count {
    position: absolute;
    top: -4px;
    right: -8px;
    width: 16px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--primary);
    border-radius: 50%;
    font-size: 8px;
    font-weight: 500;
    line-height: 15px;
    color: var(--white);
}
.tf-toolbar-bottom .toolbar-item a .toolbar-label {
    font-size: 13px;
    line-height: 18px;
}
.offcanvas-search {
    height: 100vh !important;
}
.offcanvas-search .icon-close-popup {
    padding: 10px;
    background-color: white;
}
.offcanvas-search .offcanvas-content {
    overflow-y: auto;
    padding: 50px 0;
}
.offcanvas-search .offcanvas-content::-webkit-scrollbar {
    width: 5px;
}
.offcanvas-search .offcanvas-content::-webkit-scrollbar-thumb {
    background-color: var(--primary);
    border-radius: 5px;
    cursor: grab;
}
.offcanvas-search .popup-header {
    position: fixed;
    padding: 8px 15px;
    display: flex;
    justify-content: flex-end;
    z-index: 50;
    top: 0;
    left: 0;
    right: 0;
    background-color: var(--white);
}
.offcanvas-search .popular-searches {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px 20px;
}
.offcanvas-search .popular-searches ul {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
.offcanvas-search .popular-searches ul a {
    padding: 9px 19px;
    border-radius: 10px;
    background-color: #f9f9f9;
    border: 1px solid rgba(161, 161, 161, 0.2);
}
.looking-for-wrap {
    display: grid;
    gap: 24px;
    margin-bottom: 30px;
}
/*------------ box icon ---------------- */
.box-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    cursor: pointer;
}
.tf-icon-box {
    border-radius: 8px;
    border: 1px solid var(--gray-5);
    padding: 19px 20px;
    display: flex;
    gap: 20px;
}
.tf-icon-box .icon-box {
    transition-duration: 0.5s;
}
.tf-icon-box .icon-box i {
    font-size: 30px;
}
.tf-icon-box .content {
    display: grid;
    gap: 3px;
}
.tf-icon-box:hover .icon-box {
    transform: scale(1.2);
    transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}
/*------------ hover ---------------- */
.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 2s cubic-bezier(0, 0, 0.44, 1.18);
    transition: opacity 0.5s ease, transform 2s cubic-bezier(0, 0, 0.44, 1.18);
}
.hover-img .img-style-2 {
    overflow: hidden;
}
.hover-img .img-style-2 > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 1.5s cubic-bezier(0, 0, 0.44, 1.18);
}
.hover-img:hover .img-style > img {
    -webkit-transform: scale(1.06);
    transform: scale(1.06);
}
.hover-img:hover .img-style-2 > 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;
}
.shine-item {
    position: relative;
    overflow: hidden;
}
.shine-item.hv-shine-2::after {
    transform: translate(-50%, -50%);
    transition: all 1s ease;
}
.shine-item::after {
    content: "";
    position: absolute;
    width: 200%;
    height: 0%;
    left: 50%;
    top: 50%;
    background-color: rgba(255, 255, 255, 0.5);
    transform: translate(-50%, -50%) rotate(-45deg);
    z-index: 1;
    transition: all 0.6s ease;
}
.shine-item:hover::after {
    height: 350%;
    background-color: transparent;
}
.shine-item:not(:hover)::after {
    transition: none;
}
.hover-tooltip {
    position: relative;
}
.hover-tooltip .tooltip {
    pointer-events: none;
    position: absolute;
    white-space: nowrap;
    padding: 0px 8.5px;
    height: 25px;
    border-radius: 2px;
    bottom: calc(100% + 8px);
    transform: translateY(8px);
    opacity: 0;
    visibility: hidden;
    color: var(--white);
    max-width: 250px;
    width: max-content;
    background-color: var(--black);
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s cubic-bezier(0.71, 1.7, 0.77, 1.24), -webkit-transform 0.3s cubic-bezier(0.71, 1.7, 0.77, 1.24);
    z-index: 100;
    font-size: 12px;
    line-height: 22px;
}
.hover-tooltip .tooltip::before {
    content: "";
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
    top: 20px;
    position: absolute;
    background: var(--black);
    width: 8px;
    height: 8px;
    z-index: -1;
}
.hover-tooltip:hover .tooltip {
    opacity: 1;
    visibility: visible;
    transform: none;
    transition-delay: 0.1s;
}
.hover-tooltip.tooltip-bot .tooltip {
    top: calc(100% + 8px);
    bottom: auto;
}
.hover-tooltip.tooltip-bot .tooltip::before {
    top: -2px;
}
.hover-tooltip.tooltip-left .tooltip {
    right: 100%;
    bottom: auto;
    transform: translateX(0px);
}
.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(-8px);
}
.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-overlay-2 .img-hv-overlay {
    position: relative;
}
.hover-overlay-2 .img-hv-overlay::before {
    content: "";
    position: absolute;
    width: 50%;
    left: 0;
    top: 0;
    height: 0%;
    background-color: var(--black);
    opacity: 0.1;
    z-index: 2;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.hover-overlay-2 .img-hv-overlay::after {
    content: "";
    position: absolute;
    width: 50%;
    right: 0;
    bottom: 0;
    height: 0%;
    background-color: var(--black);
    opacity: 0.1;
    z-index: 2;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.hover-overlay-2:hover .img-hv-overlay::before {
    height: 100%;
}
.hover-overlay-2:hover .img-hv-overlay::after {
    height: 100%;
    transition-delay: 0.2s;
}
/*------------ product ---------------- */
.card-product {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.card-product .card-product-wrapper {
    aspect-ratio: 1;
    position: relative;
    border-radius: 3px;
    overflow: hidden;
    z-index: 20;
}
.card-product .card-product-wrapper img {
    display: block;
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
    transition-duration: 700ms;
}
.card-product .card-product-wrapper:hover .product-img .img-product {
    opacity: 0;
}
.card-product .card-product-wrapper:hover .product-img .img-hover {
    display: block;
    z-index: 1;
    opacity: 1;
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
}
.card-product .card-product-wrapper.img-small {
    max-width: 74px !important;
}
.card-product .product-img {
    display: flex;
    width: 100%;
    height: 100%;
    position: relative;
    align-items: stretch;
}
.card-product .product-img .img-hover {
    position: absolute;
    inset: 0;
    opacity: 0;
}
.card-product .list-product-btn {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 8px;
    top: 8px;
    right: 8px;
    z-index: 6;
}
.card-product .name-product {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}
.card-product .box-icon {
    width: 30px;
    height: 30px;
    border-radius: 3px;
    background-color: var(--white);
    color: var(--black);
    position: relative;
    border-radius: 50%;
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.0784313725);
}
.card-product .box-icon .icon {
    font-size: 12px;
}
.card-product .box-icon svg {
    width: 16px;
}
.card-product .box-icon svg path {
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}
.card-product .box-icon:hover {
    background-color: var(--black) !important;
    color: var(--white);
    border-color: var(--black);
}
.card-product .card-product-info {
    display: grid;
    gap: 20px;
}
.card-product .card-product-info .box-title {
    display: grid;
    gap: 10px;
}
.card-product .card-product-info .box-infor-detail {
    display: grid;
    gap: 10px;
}
.card-product .card-product-info .star-review {
    align-items: center;
    gap: 10px;
}
.card-product .product-progress-sale {
    display: grid;
    gap: 4px;
}
.card-product .group-btn {
    position: relative;
    display: grid;
    gap: 10px;
}
.card-product .group-btn .price-wrap {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    opacity: 1;
    visibility: visible;
    transform: translateY(0%);
}
.card-product .group-btn .list-product-btn {
    position: relative;
    z-index: 21;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    justify-content: flex-start;
    gap: 10px;
    transform: unset;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.card-product .group-btn .list-product-btn li {
    transform: unset;
    opacity: 1;
    visibility: visible;
}
.card-product.style-small {
    gap: 14px;
}
.card-product.style-small .card-product-info .box-title {
    gap: 8px;
}
.card-product.style-img-border .card-product-wrapper {
    border: 1px solid var(--gray-5);
    padding: 15px;
}
.card-product.style-border {
    border-radius: 8px;
    border: 1px solid var(--gray-5);
    padding: 15px;
}
.card-product.style-row .card-product-info {
    max-width: 621px;
    width: 100%;
}
.card-product.style-row .card-product-btn {
    display: flex;
    justify-content: center;
    gap: 14px;
    flex-direction: column;
    width: 100%;
    position: relative;
}
.card-product.style-row .card-product-btn .box-btn {
    display: flex;
    gap: 20px;
    align-items: center;
}
.card-product.style-row.row-small {
    align-items: center;
}
.card-product.style-row.row-small .card-product-info {
    max-width: 735px;
}
.card-product.style-row.row-small-2 {
    gap: 12px;
    flex-direction: row;
}
.card-product.style-row.row-small-2 .card-product-wrapper {
    max-width: 122px;
}
.card-product.style-row.row-small-2 .price-wrap {
    flex-direction: column;
    gap: 2px 10px;
    margin-top: 0px;
    align-items: flex-start;
    max-width: max-content;
}
.card-product.style-row.type-row-3 .card-product-wrapper {
    max-width: unset;
}
.card-product.style-3 {
    background-color: var(--white);
    padding: 10px;
    border-radius: 8px;
    gap: 16px !important;
}
.card-product.style-3 .price-wrap {
    flex-direction: column;
    gap: 2px 10px;
    margin-top: 0px;
    align-items: flex-start;
    max-width: max-content;
}
.card-product.style-3 .card-product-wrapper {
    max-width: 208px;
}
.card-product.style-4 {
    background-color: var(--white);
    padding: 16px;
}
.list-product-btn.style-2 {
    top: -10px !important;
}
.list-product-btn.style-2 .box-icon {
    width: 30px;
    height: 30px;
}
.list-product-btn.style-2 .box-icon .icon {
    font-size: 11px;
}
.list-product-btn.style-2 .tooltip {
    padding: 0px 6px;
    height: 20px;
    bottom: calc(100% + 6px);
    font-size: 11px;
    line-height: 22px;
}
.list-product-btn.style-2 .tooltip::before {
    top: 16px;
}
.countdown-box .countdown__timer {
    display: flex;
    justify-content: center;
    gap: 12px;
}
.countdown-box .countdown__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}
.countdown-box .countdown__value {
    font-weight: 500;
    font-size: 14px;
    line-height: 19px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background-color: var(--gray-5);
    border-radius: 50%;
}
.countdown-box .countdown__label {
    font-weight: 400;
    font-size: 12px;
    line-height: 22px;
}
.countdown-box-2 {
    display: flex;
    align-items: center;
    justify-content: center;
}
.countdown-box-2 .js-countdown {
    background-color: var(--white);
    width: max-content;
    padding: 10px 15px;
    border-radius: 8px;
}
.countdown-box-2 .countdown__timer {
    display: flex;
    justify-content: center;
    gap: 21px;
}
.countdown-box-2 .countdown__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 50px;
}
.countdown-box-2 .countdown__item:not(:last-child) {
    position: relative;
}
.countdown-box-2 .countdown__item:not(:last-child)::after {
    content: "";
    position: absolute;
    height: 40px;
    width: 1px;
    background-color: var(--gray-5);
    right: -10px;
    top: 50%;
    transform: translateY(-50%);
}
.countdown-box-2 .countdown__value {
    font-size: 40px;
    line-height: 40px;
}
.countdown-box-2 .countdown__label {
    font-weight: 600;
    font-size: 14px;
    line-height: 22px;
}
.box-sale-tag {
    font-weight: 600;
    font-size: 13px;
    line-height: 23px;
    padding: 0px 5.5px;
    color: var(--white);
    display: inline-flex;
    border-radius: 3px;
    background-color: var(--primary);
    margin-left: 5px;
    position: relative;
}
.box-sale-tag::before {
    content: "";
    position: absolute;
    border-radius: 2px;
    left: -3px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    width: 8px;
    height: 8px;
    background-color: var(--primary);
    z-index: 0;
}
.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-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
    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-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.list-color-product .list-color-item img {
    visibility: hidden;
    width: 18px;
    height: 18px;
    position: absolute;
}
.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-black-3);
    top: 0;
    left: 0;
    z-index: 1;
    border-radius: 50%;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.list-color-product .list-color-item.active, .list-color-product .list-color-item:hover {
    border-color: var(--black) !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-computer-memory {
    display: flex;
    gap: 6px;
}
.list-computer-memory li {
    padding: 3px 7px 3px 8px;
    border-radius: 3px;
    border: 1px solid var(--gray-4);
}
.list-infor-fearture {
    display: grid;
    gap: 2px;
}
.list-infor-fearture li {
    display: flex;
    align-items: center;
}
.list-infor-fearture .name-feature {
    flex-grow: 2;
    max-width: 119px;
    width: 100%;
}
.list-infor-fearture .property {
    flex-grow: 1;
    width: 100%;
}
.card-usually {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.card-usually .content {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}
.card-usually .box-name {
    display: grid;
    gap: 10px;
}
.card-usually .prd-name {
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}
.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,
.thumbs-slider {
    display: flex;
    gap: 20px;
}
.tf-product-media-thumbs {
    width: 80px;
    flex-shrink: 0;
    max-height: 652;
}
.tf-product-media-thumbs .swiper-slide {
    height: max-content;
    width: auto;
}
.tf-product-media-thumbs .swiper-slide .item {
    position: relative;
    height: 100%;
    max-height: 80px;
    max-width: 80px;
    cursor: pointer;
}
.tf-product-media-thumbs .swiper-slide .item img {
    border-radius: 4px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tf-product-media-thumbs .swiper-slide .item::after {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    border: 1px solid var(--gray-5);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    border-radius: 4px;
}
.tf-product-media-thumbs .swiper-slide.swiper-slide-thumb-active .item::after {
    border-color: var(--main);
}
.tf-product-media-main {
    width: calc(100% - 100px);
}
.tf-product-media-main .item {
    display: flex;
    width: 100%;
    height: 100%;
    border-radius: 12px;
    overflow: hidden;
    max-height: 687px;
}
.tf-product-media-main .item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.thumbs-default .thumbs-slider {
    flex-direction: column;
}
.thumbs-default .thumbs-slider .tf-product-media-thumbs {
    order: 1;
    width: 100%;
}
.thumbs-default .thumbs-slider .tf-product-media-thumbs .swiper-slide {
    width: auto;
}
.thumbs-default .thumbs-slider .tf-product-media-main {
    width: 100%;
}
.thumbs-left .thumbs-slider {
    flex-direction: column;
}
.thumbs-left .tf-product-media-main {
    width: 100%;
}
.thumbs-left .tf-product-media-thumbs {
    width: 100%;
}
.price-wrap {
    display: flex;
    align-items: center;
    gap: 5px 12px;
    flex-wrap: wrap;
}
.old-price {
    position: relative;
    display: inline-flex;
}
.old-price::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    height: 1px;
    background-color: var(--gray-2);
}
.old-price.style-white {
    color: var(--white);
}
.old-price.style-white::before {
    background-color: var(--white);
}
.tf-product-info-list {
    display: flex;
    gap: 30px;
    align-items: flex-start;
    flex-wrap: wrap;
}
.tf-product-info-list .product-box-btn {
    display: grid;
    gap: 10px;
}
.tf-product-info-list.style-2 .tf-product-info-choose-option {
    border: unset;
    padding: 0;
    max-width: unset;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 15px;
}
.tf-product-info-list.style-2 .tf-product-info-choose-option .title {
    margin-bottom: 0px;
}
.tf-product-info-list.style-2 .tf-product-info-choose-option > * {
    display: flex;
    align-items: center;
    gap: 12px;
}
.tf-product-info-list.style-2 .tf-product-info-choose-option .select-color {
    min-width: 175px;
}
.tf-product-info-list.style-2 .infor-center {
    gap: 9px;
}
.tf-product-info-list.style-2 .product-delivery {
    align-items: center;
    display: flex;
    gap: 0px 14px;
    flex-wrap: wrap;
}
.tf-product-info-list.style-2 .shipping-to {
    display: flex;
    align-items: center;
    gap: 8px;
}
.tf-product-info-content {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.tf-product-info-content > *:not(:last-child) {
    padding-bottom: 20px;
    border-bottom: 1px solid var(--gray-5);
}
.tf-product-info-content .infor-bottom {
    display: grid;
    gap: 10px;
}
.tf-product-info-content .product-fearture-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.tf-product-info-content .product-fearture-list li {
    display: flex;
    align-items: center;
    gap: 20px;
}
.tf-product-info-content .product-fearture-list li p {
    width: 72px;
}
.tf-product-info-content .product-about-list {
    display: grid;
    gap: 10px;
}
.tf-product-info-content .product-about-list p {
    padding-left: 16px;
    position: relative;
}
.tf-product-info-content .product-about-list p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 4px;
    height: 4px;
    right: 4px;
    border-radius: 50%;
    background-color: var(--gray-2);
}
.tf-product-info-content .product-info-price {
    display: flex;
    gap: 10px;
    align-items: flex-end;
}
.tf-product-info-content .product-info-price .old-price {
    padding-bottom: 4px;
}
.product-info-rate-wrap {
    display: flex;
    align-items: center;
    gap: 0px 16px;
    flex-wrap: wrap;
}
.product-info-rate-wrap > li:not(:last-child) {
    padding-right: 16px;
    position: relative;
}
.product-info-rate-wrap > li:not(:last-child)::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 14px;
    background-color: var(--gray-4);
}
.star-review {
    display: flex;
    align-items: center;
    gap: 7px;
}
.list-star {
    display: flex;
    align-items: center;
    gap: 3px;
}
.list-star > li {
    display: flex;
    align-items: center;
}
.list-star i {
    color: #fcb500;
}
.wg-quantity {
    display: flex;
    align-items: center;
    overflow: hidden;
    gap: 2px;
    width: max-content;
}
.wg-quantity .quantity-product {
    width: 30px;
    height: 30px;
    padding: 0;
    border: 0;
    text-align: center;
    font-weight: 700;
    font-size: 16px;
    line-height: 18px;
    color: var(--primary);
    pointer-events: none;
}
.wg-quantity .btn-quantity {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    color: var(--gray);
    cursor: pointer;
    border: 1px solid var(--line-4);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.wg-quantity .btn-quantity:hover {
    color: var(--primary);
}
.tf-product-info-content .infor-heading,
.tf-product-info-content .infor-bottom,
.tf-product-info-content .infor-center {
    display: grid;
    gap: 10px;
}
.tf-product-info-choose-option {
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 18px;
    border-radius: 6px;
    border: 1px solid var(--gray-4);
    width: 100%;
}
.tf-product-info-choose-option .product-delivery {
    display: grid;
    gap: 10px;
}
.tf-product-info-choose-option .title {
    margin-bottom: 12px;
}
.tf-product-info-choose-option .shipping-to {
    display: flex;
    align-items: center;
    gap: 8px;
}
.tf-product-info-choose-option .product-detail .caption {
    margin-bottom: 4px;
}
.tf-product-info-choose-option .product-detail .body-text-3 {
    display: grid;
    gap: 8px;
}
.tf-select-color {
    position: relative;
    width: max-content;
}
.tf-select-color::after {
    content: "\e918";
    position: absolute;
    font-family: "icomoon";
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--gray);
}
.rating-percent {
    width: max-content;
}
.rating-percent .rate-percent {
    font-weight: 700;
    font-size: 70px;
    line-height: 70px;
    color: var(--primary);
    margin-bottom: 9px;
}
.rating-percent .rate-percent span {
    font-weight: 400;
    font-size: 40px;
    line-height: 48px;
    color: var(--gray-4);
}
.rating-percent .list-star {
    margin-bottom: 3px;
}
.review-list > li:not(:last-child) {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid var(--gray-5);
}
.box-review {
    display: flex;
    gap: 14px;
    align-items: flex-start;
}
.box-review .avt {
    max-width: 50px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}
.box-review .author-wrap .name {
    margin-bottom: 2px;
}
.box-review .review-content {
    display: grid;
    gap: 18px;
}
.box-review .verified {
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    gap: 0px 10px;
    flex-wrap: wrap;
}
.box-review .verified > li:not(:last-child) {
    padding-right: 10px;
    position: relative;
}
.box-review .verified > li:not(:last-child)::after {
    content: "";
    position: absolute;
    width: 1px;
    height: 14px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background-color: var(--gray-4);
}
.flat-product-des-list {
    display: grid;
    gap: 30px;
}
.flat-product-des-list.style-2 .flat-title-tab-product-des {
    border: unset;
    display: grid;
    gap: 30px;
}
.flat-product-des-list.style-2 .flat-title-tab-product-des:not(:last-child) {
    padding-bottom: 30px;
    border-bottom: 1px solid var(--gray-5);
}
.flat-product-des-list.style-2 .tab-main {
    padding: 0;
}
.flat-product-des-list.bg-white {
    padding: 15px;
    border-radius: 8px;
}
.tf-product-info-wrap.bg-white,
.tf-product-media-wrap.bg-white {
    border-radius: 8px;
    padding: 15px;
}
.product-thumb-slider {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.product-thumb-slider .tf-product-view-main {
    width: 100%;
}
.product-thumb-slider .tf-product-view-thumbs {
    order: 1;
    width: 100%;
}
.product-thumb-slider .tf-product-view-thumbs .swiper-slide {
    width: auto;
}
.product-thumb-slider.thumbs-right .tf-product-view-main .tf-image-view {
    aspect-ratio: 571/321;
    max-width: 571px;
}
.product-thumb-slider.thumbs-right .tf-product-view-thumbs .swiper-slide .item {
    max-width: 69px;
    max-height: 69px;
    overflow: hidden;
    aspect-ratio: 1;
}
.product-thumb-slider.thumbs-right.type-right-3 {
    gap: 20px;
}
.product-thumb-slider.thumbs-right.type-right-3 .tf-product-view-main .tf-image-view {
    aspect-ratio: 506/386;
    max-width: 506px;
}
.product-thumb-image {
    display: grid;
    gap: 10px;
}
.product-thumb-image .list-image-product {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    scroll-behavior: smooth;
}
.product-thumb-image .list-image-product .image-swap {
    width: 50px;
    height: 50px;
    border: 1px solid var(--gray-5);
    border-radius: 3px;
    cursor: pointer;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    flex-shrink: 0;
}
.product-thumb-image .list-image-product .image-swap img {
    object-fit: contain;
}
.product-thumb-image .list-image-product .image-swap.active {
    border-color: var(--black);
}
.product-thumb-image .list-image-product::-webkit-scrollbar {
    display: none;
}
.tf-product-view-main .tf-image-view {
    aspect-ratio: 300/260;
    border-radius: 5px;
    overflow: hidden;
}
.tf-product-view-main .tf-image-view img {
    width: auto;
    object-position: unset;
}
.tf-product-view-thumbs .swiper-slide .item {
    position: relative;
    height: 100%;
    max-width: 52px;
    max-height: 50px;
    overflow: hidden;
    cursor: pointer;
}
.tf-product-view-thumbs .swiper-slide .item img {
    border-radius: 3px;
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.tf-product-view-thumbs .swiper-slide .item::after {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    border: 1px solid var(--gray-5);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    border-radius: 3px;
}
.tf-product-view-thumbs .swiper-slide.swiper-slide-thumb-active .item::after {
    border-color: var(--black);
}
.product-list-wrap > li:not(:last-child) {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--gray-5);
}
.tf-grid-product-item {
    width: 100%;
}
.sw-cls {
    margin-top: 10px;
}
.sw-cls .swiper-slide {
    height: auto;
}
.sw-cls .swiper-slide > * {
    height: 100%;
    max-height: 250px;
}
.sw-cls .img-item {
    max-width: 200px;
}
.tf-product-view-content {
    display: flex;
    gap: 20px;
}
.tf-product-view-content .sidebar-filter {
    max-width: 284px;
    width: 100%;
}
.tf-product-view-content .content-area {
    width: 100%;
}
.tf-control-view {
    display: flex;
    align-items: center;
    gap: 10px;
}
.tf-control-view .tf-control-sort {
    display: flex;
    align-items: center;
    gap: 6px;
}
.tf-control-view .type-sort-quatity {
    min-width: 160px;
}
.tf-control-view .type-sort-by {
    min-width: 204px;
}
.tf-control-view .tf-sort {
    padding: 9px;
    border-radius: 3px;
    border: 1px solid var(--gray-5);
    display: flex;
    cursor: pointer;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    color: var(--black);
}
.tf-control-view .tf-sort .btn-select {
    display: flex;
    align-items: center;
    gap: 6px;
}
.tf-control-view .tf-sort:hover {
    color: var(--primary);
    border-color: var(--primary);
}
.tf-control-view .tf-sort i {
    font-size: 24px;
}
.tf-shop-control {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 21px;
    border-bottom: 1px solid var(--gray-5);
    margin-bottom: 30px;
}
.tf-control-layout {
    display: flex;
    align-items: center;
    gap: 10px;
}
.tf-control-layout li a {
    padding: 9px;
    border-radius: 3px;
    border: 1px solid var(--gray-5);
    display: flex;
    cursor: pointer;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    color: var(--black);
}
.tf-control-layout li a:hover, .tf-control-layout li a.active {
    color: var(--primary);
    border-color: var(--primary);
}
.tf-control-layout li i {
    font-size: 24px;
}
.tf-dropdown-sort .btn-select {
    display: flex;
    align-items: center;
    gap: 6px;
}
.flat-grid-product.layout-tabgrid-1 .card-product .card-product-btn, .flat-grid-product.layout-tabgrid-2 .card-product .card-product-btn {
    display: none;
}
.flat-grid-product.layout-tabgrid-2 .card-product .box-infor-detail {
    display: none;
}
.flat-grid-product.layout-tablist-1, .flat-grid-product.layout-tablist-2 {
    grid-template-columns: unset !important;
}
.flat-grid-product.layout-tablist-1 .card-product .card-product-btn, .flat-grid-product.layout-tablist-2 .card-product .card-product-btn {
    display: flex;
}
.flat-grid-product.layout-tablist-1 .card-product .list-product-btn, .flat-grid-product.layout-tablist-2 .card-product .list-product-btn {
    display: none;
}
.flat-grid-product.layout-tablist-1 .box-infor-detail .tf-btn-icon {
    display: none;
}
.flat-grid-product.layout-tablist-2 {
    grid-template-columns: unset !important;
}
.flat-grid-product.layout-tablist-2 .card-product .card-product-btn {
    display: flex;
}
.flat-grid-product.layout-tablist-2 .card-product .box-infor-detail > *:not(.star-review) {
    display: none;
}
.flat-grid-product.layout-tablist-2 .card-product .card-product-info {
    gap: 10px;
}
.flat-grid-product.layout-tablist-2 .card-product .box-title {
    gap: 8px;
}
.tf-order-detail {
    display: grid;
    gap: 30px;
}
.tf-order-detail .order-notice {
    display: flex;
    align-items: center;
    box-shadow: 5px 6px 30px 0px rgba(0, 0, 0, 0.1);
    margin-bottom: 10px;
}
.tf-order-detail .order-notice p {
    padding-left: 20px;
}
.tf-order-detail .order-notice .icon {
    height: 60px;
    width: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--primary);
}
.tf-order-detail .order-overview-list li:not(:last-child) {
    margin-bottom: 10px;
}
.tf-order-detail .order-detail-wrap {
    display: grid;
    gap: 15px;
}
.tf-table-order-detail {
    border: 1px solid #e0e0e0;
    table-layout: fixed;
    width: 100%;
}
.tf-table-order-detail td,
.tf-table-order-detail th {
    border: 1px solid #e0e0e0;
    padding: 8px 12px;
    text-align: left;
    vertical-align: middle;
}
.billing-info {
    padding: 8px 15px;
    border: 1px solid #e0e0e0;
}
.tf-table-wishlist {
    border: 1px solid #e0e0e0;
    width: 100%;
    overflow-x: auto;
}
.tf-table-wishlist thead {
    white-space: nowrap;
}
.tf-table-wishlist td,
.tf-table-wishlist th {
    border: 1px solid #e0e0e0;
    padding: 8px 12px;
    text-align: left;
    vertical-align: middle;
}
.tf-table-wishlist tfoot td {
    padding: 12px 12px;
}
.tf-table-wishlist .wishlist-item_remove {
    width: 20px;
    text-align: center;
}
.tf-table-wishlist .wishlist-item_image {
    width: 100px;
    min-width: 100px;
}
.tf-table-wishlist .wishlist-item_action {
    white-space: nowrap;
}
.tf-table-compare {
    border-collapse: collapse;
    width: 100%;
}
.tf-table-compare td,
.tf-table-compare th {
    border: 1px solid #e0e0e0;
    padding: 8px 12px;
    text-align: left;
    vertical-align: middle;
}
.tf-table-compare tr:nth-child(odd) {
    background-color: #f7f7f7;
}
.tf-table-compare .compare-item_info {
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: space-between;
}
.tf-table-compare .tf-compare-image .image {
    display: flex;
    justify-content: center;
}
.tf-table-compare .tf-compare-image .image img {
    max-width: 250px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tf-compare {
    overflow-x: auto;
}
.tf-compare::-webkit-scrollbar {
    height: 3px;
}
.tf-compare::-webkit-scrollbar-thumb {
    background-color: var(--gray-2);
    border-radius: 3px;
}
.tf-compare-col {
    min-width: 220px;
    max-width: 350px;
}
.tf-compare-col:first-child {
    min-width: 150px;
}
.table_def {
    border-collapse: collapse;
    width: 100%;
    table-layout: fixed;
}
.table_def thead {
    white-space: nowrap;
}
.table_def td,
.table_def th {
    border: 1px solid #e0e0e0;
    padding: 8px 12px;
    vertical-align: middle;
}
.table_def tfoot td {
    padding: 12px 12px;
}
.tf-order_history-table {
    text-align: center;
    overflow: auto;
}
.tf-order_history-table table {
    min-width: 700px;
    width: 100%;
}
.tf-order_history-table tr {
    border: 1px solid #e0e0e0;
}
.tf-order_history-table tr > *:first-child {
    text-align: left;
}
.tf-order_history-table tr th,
.tf-order_history-table tr td {
    border: unset;
}
.tf-order_history-table th,
.tf-order_history-table td {
    padding: 10px 15px;
}
.account-address .btn-add-address {
    margin-bottom: 42px;
}
.account-address-item {
    border-radius: 16px;
    border: 1px solid var(--gray-4);
}
.account-address-item .title {
    padding: 15px;
    border-bottom: 1px solid var(--gray-4);
}
.account-address-item .info-detail {
    padding: 15px;
    display: grid;
    gap: 24px;
}
.account-address-item .box-infor {
    display: grid;
    gap: 12px;
}
.account-address-item .box-btn {
    display: flex;
    gap: 12px;
}
.account-address-item.editing {
    background-color: #fafafa;
}
.account-details {
    display: grid;
    gap: 30px;
}
/*------------ blog ---------------- */
.news-item {
    display: grid;
    gap: 20px;
}
.news-item .entry_meta {
    display: flex;
    align-items: center;
    gap: 14px;
}
.news-item .entry_meta > * {
    display: flex;
    align-items: center;
    gap: 4px;
}
.news-item .entry_tag {
    padding: 4px 10px;
    border-radius: 3px;
    background-color: var(--white);
    position: absolute;
    bottom: 4px;
    left: 6px;
}
.news-item .content {
    display: grid;
    gap: 10px;
}
.news-item .entry_infor_news {
    display: grid;
    gap: 14px;
}
.news-item.style-large {
    gap: 30px;
}
.news-item.style-row {
    display: flex;
    align-items: flex-start;
}
.news-item.style-row .entry_image {
    width: 40%;
}
.news-item.style-row .content {
    width: 65%;
}
.wg-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 15px;
    border-top: 1px solid var(--gray-5);
}
.wg-pagination li {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
}
.wg-pagination li i {
    font-size: 20px;
}
.wg-pagination li.active > * {
    color: var(--primary);
}
.blog-sidebar {
    max-width: 284px;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.blog-sidebar .sidebar-item {
    display: grid;
    gap: 16px;
}
.blog-sidebar .sidebar-item.style-2 {
    border-radius: 8px 8px 10px 10px;
    border: 1px solid var(--gray-5);
    gap: 0px;
}
.blog-sidebar .sidebar-item.style-2 .sb-title {
    padding: 13px 18px;
    background-color: var(--gray-6);
}
.blog-sidebar .sidebar-item.style-2 .sb-content {
    padding: 0px 18px;
}
.blog-sidebar .sidebar-item:not(.style-2) .sb-title {
    font-size: 16px;
    line-height: 18px;
}
.blog-sidebar .sidebar-item.has-line-bt {
    padding-bottom: 24px;
    border-bottom: 1px solid var(--gray-5);
}
.blog-sidebar .sb-category a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 0px;
}
.blog-sidebar .sb-category a i {
    font-size: 10px;
}
.blog-sidebar .sb-category li:not(:last-child) a {
    border-bottom: 1px solid var(--line-2);
    padding: 15px 0px 14px;
}
.blog-sidebar .sb-recent {
    display: flex;
    flex-direction: column;
    gap: 18px;
}
.blog-sidebar .sb-recent li {
    display: flex;
    gap: 10px;
    align-items: flex-start;
}
.blog-sidebar .sb-recent li .image {
    max-width: 112px;
    width: 100%;
    flex-shrink: 0;
}
.blog-sidebar .sb-recent li:not(:last-child) {
    padding-bottom: 19px;
    border-bottom: 1px solid var(--gray-5);
}
.blog-sidebar .sb-recent li .date {
    display: flex;
    align-items: center;
    gap: 4px;
}
.blog-sidebar .sb-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.blog-sidebar .sb-tags a {
    padding: 9px 15px;
    border-radius: 999px;
    border: 1px solid var(--gray-5);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.blog-sidebar .sb-tags a:hover {
    background-color: var(--gray);
    border-color: var(--gray);
    color: var(--white);
}
.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);
}
.s-blog-list .blog-list-content {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.s-blog-list .blog-list-content > .news-item:not(:first-of-type):not(:last-of-type) {
    padding-bottom: 30px;
    border-bottom: 1px solid var(--gray-5);
}
.s-blog-list .blog-sidebar {
    flex-shrink: 0;
}
.s-blog-detail {
    display: flex;
    align-items: flex-start;
    gap: 40px;
}
.s-blog-detail .box-direction {
    display: flex;
    flex-direction: column;
    gap: 96px;
    max-width: 268px;
    width: 100%;
}
.s-blog-detail .box-direction.sticky {
    position: sticky;
    top: 25%;
}
.s-blog-detail .box-direction .bottom {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.s-blog-detail .content-blog {
    display: grid;
    gap: 30px;
}
.s-blog-detail .content-blog .main-content {
    display: grid;
    gap: 20px;
}
.s-blog-detail .content-blog .box-title {
    display: grid;
    gap: 12px;
}
.s-blog-detail .main-preview {
    padding-top: 50px;
    border-top: 1px solid var(--gray-5);
    display: grid;
    gap: 50px;
}
.s-blog-detail .main-preview > * {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.s-blog-detail .entry_meta {
    display: flex;
    align-items: center;
    gap: 14px;
}
.s-blog-detail .entry_meta > * {
    display: flex;
    align-items: center;
    gap: 4px;
}
.s-blog-detail .entry_image img {
    width: 100%;
    object-fit: cover;
}
.s-blog-detail .entry_image.has-sub {
    display: grid;
    gap: 8px;
    text-align: center;
}
.comment-wrap .author-wrap {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}
.comment-wrap .author-wrap .wrap {
    display: grid;
    gap: 20px;
}
.comment-wrap .author-wrap .rep-comment .author-wrap {
    padding-top: 20px;
    border-top: 1px solid var(--gray-5);
}
.comment-wrap .entry_meta {
    display: grid;
    gap: 2px;
}
.comment-wrap .avt {
    max-width: 50px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}
.comment-wrap .box-comment {
    display: grid;
    gap: 10px;
}
.comment-wrap .comment-list {
    display: grid;
    gap: 40px;
}
.comment-wrap .comment-list .author-wrap:not(:last-child) {
    padding-bottom: 40px;
    border-bottom: 1px solid var(--gray-5);
}
/*------------ accordion ---------------- */
.widget-accordion .accordion-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 6px 50px 6px 0px;
    font-weight: 600;
    cursor: pointer;
}
.widget-accordion .accordion-title .icon {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.widget-accordion .accordion-title:not(.collapsed) .icon {
    background-color: var(--primary);
}
.widget-accordion .accordion-title:not(.collapsed) .icon::before {
    transform: rotate(90deg);
    opacity: 0;
}
.widget-accordion .accordion-title:not(.collapsed) .icon::after {
    background-color: var(--white);
}
.widget-accordion .accordion-body {
    padding: 10px 0px 30px;
}
.faq-item {
    display: grid;
    gap: 30px;
}
.faq-wrap .widget-accordion:not(:last-child) .accordion-title.collapsed {
    padding-bottom: 16px;
    border-bottom: 1px solid var(--gray-5);
    margin-bottom: 10px;
}
.faq-wrap .accordion-title {
    position: relative;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    border-color: var(--white);
}
.faq-wrap .accordion-title .title-sidebar {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.faq-wrap .accordion-title:not(.collapsed) .title-sidebar {
    color: var(--primary);
}
.faq-wrap .accordion-title .icon {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background-color: var(--gray-6);
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: -2px;
    right: -2px;
}
.faq-wrap .accordion-title .icon::after {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    content: "";
    position: absolute;
    width: 11.25px;
    height: 2px;
    border-radius: 1px;
    background-color: var(--gray);
}
.faq-wrap .accordion-title .icon::before {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    content: "";
    position: absolute;
    height: 11.25px;
    width: 2px;
    border-radius: 1px;
    background-color: var(--gray);
}
.faq-wrap .accordion-body {
    display: flex;
    gap: 10px;
    align-items: flex-start;
}
.faq-wrap .accordion-body i {
    font-size: 30px;
}
/*------------ zoom ---------------- */
.tf-zoom-main {
    position: sticky;
    top: 30px;
    z-index: 50;
}
.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;
    border-radius: 8px;
}
.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-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.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;
}
/*------------ shop ---------------- */
.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: 4px;
}
.noUi-target {
    border: 0;
}
.noUi-base .noUi-connects {
    border-radius: 999px;
    background-color: var(--gray-5);
}
.noUi-connect {
    background-color: var(--black);
}
.noUi-horizontal .noUi-handle,
.noUi-vertical .noUi-handle {
    height: 16px;
    width: 16px;
    border-radius: 50px;
    border: 2px solid var(--black);
    background-color: var(--gray-4);
    box-shadow: unset;
    cursor: pointer;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.noUi-horizontal .noUi-handle::before, .noUi-horizontal .noUi-handle::after,
.noUi-vertical .noUi-handle::before,
.noUi-vertical .noUi-handle::after {
    content: none;
}
.noUi-horizontal .noUi-handle.noUi-active,
.noUi-vertical .noUi-handle.noUi-active {
    height: 20px;
    width: 20px;
    top: -8px;
}
html:not([dir=rtl]) .noUi-horizontal .noUi-handle {
    right: -8px;
}
.tf-table-page-cart {
    border-spacing: 0;
    border-collapse: collapse;
    width: 1024px;
}
.tf-table-page-cart thead {
    border-top: 1px solid var(--gray-5);
    border-bottom: 1px solid var(--gray-5);
}
.tf-table-page-cart th {
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
    padding: 20px 0px;
}
.tf-table-page-cart th:first-child {
    padding: 20px 0px 20px 25px;
}
.tf-table-page-cart th:last-child {
    padding: 20px 25px 20px 0px;
}
.tf-table-page-cart tr > * {
    width: 200px;
}
.tf-table-page-cart tr > *:first-child {
    width: 400px;
}
.tf-table-page-cart tr > *:last-child {
    width: 100px;
}
.tf-table-page-cart .tf-cart-item_product {
    display: flex;
    gap: 12px;
}
.tf-table-page-cart .img-box {
    max-width: 80px;
    height: 80px;
    width: 100%;
}
.tf-table-page-cart .cart-info {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.tf-table-page-cart .variant-box {
    display: flex;
    align-items: center;
}
.tf-table-page-cart .tf-select {
    position: relative;
}
.tf-table-page-cart .tf-select select {
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: var(--gray-2);
    border: unset;
    appearance: none;
    cursor: pointer;
    padding: 0px 4px 0px 2px;
}
.tf-table-page-cart .tf-select::after {
    position: absolute;
}
.tf-table-page-cart .remove {
    cursor: pointer;
}
.tf-table-page-cart .tf-cart-item {
    border-bottom: 1px solid var(--gray-5);
}
.tf-table-page-cart .tf-cart-item td {
    padding-right: 25px;
}
.tf-table-page-cart .tf-cart-item td:first-child, .tf-table-page-cart .tf-cart-item td:last-child {
    padding: 25px;
}
.ip-discount-code {
    max-width: 466px;
    width: 100%;
    position: relative;
}
.ip-discount-code input {
    border-radius: 8px !important;
}
.ip-discount-code .tf-btn {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    padding: 10px 31.5px;
    border-radius: 0px 8px 8px 0px;
}
.ip-discount-code.style-2 {
    display: flex;
    gap: 6px;
}
.ip-discount-code.style-2 .tf-btn {
    position: relative;
    border-radius: 8px;
    width: 100%;
    max-width: 122px;
}
.tf-checkout-wrap {
    display: flex;
    align-items: flex-start;
    gap: 30px;
    flex-wrap: wrap;
}
.tf-checkout-wrap .page-checkout {
    width: 100%;
}
.payment-box {
    display: grid;
    gap: 20px;
    margin-bottom: 40px;
}
.payment-choose-card .payment-header {
    width: 100%;
    cursor: pointer;
    margin-bottom: 10px;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.payment-choose-card .payment-header.collapsed {
    margin-bottom: 0px;
}
.payment-choose-card .payment-header.collapsed .select-payment::after {
    transform: translateY(-50%) rotate(0deg);
}
.payment-choose-card .title {
    margin-bottom: 6px;
    display: block;
}
.payment-choose-card .select-payment {
    display: block;
    padding: 11px 14px;
    border-radius: 8px;
    border: 1px solid var(--gray-4);
    width: 100%;
    position: relative;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.payment-choose-card .select-payment::after {
    position: absolute;
    content: "\e918";
    font-family: "icomoon";
    color: var(--gray-2);
    font-size: 16px;
    right: 14px;
    top: 50%;
    transform: translateY(-50%) rotate(180deg);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.payment-choose-card .select-payment:hover {
    border-color: var(--primary);
}
.payment-choose-card input[type=number]::-webkit-outer-spin-button,
.payment-choose-card input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0;
}
.payment-choose-card .payment-body {
    display: grid;
    gap: 20px;
    padding: 30px;
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.0509803922);
}
.flat-sidebar-checkout {
    width: 100%;
    position: sticky;
    top: 90px;
    padding: 15px;
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.0509803922);
    background-color: var(--white);
}
.flat-sidebar-checkout .sub-type {
    margin-bottom: 6px;
}
.flat-sidebar-checkout .sidebar-checkout-content {
    display: grid;
    gap: 20px;
}
.flat-sidebar-checkout .list-product {
    display: grid;
    gap: 20px;
}
.flat-sidebar-checkout .item-product {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}
.flat-sidebar-checkout .item-product .img-product {
    max-width: 122px;
    width: 100%;
}
.flat-sidebar-checkout .item-product .content-box {
    display: grid;
    gap: 10px;
}
.flat-sidebar-checkout .sec-total-price li {
    border-top: 1px solid var(--gray-5);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 0px;
}
.flat-sidebar-checkout .sec-total-price li:last-child {
    padding-bottom: 0px;
}
.facet-categories {
    border-radius: 10px;
    border: 1px solid var(--gray-5);
    margin-bottom: 24px;
}
.facet-categories .title {
    padding: 13px 18px;
    background-color: var(--gray-6);
}
.facet-categories ul {
    padding: 0px 18px;
}
.facet-categories ul a {
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 0px;
    position: relative;
}
.facet-categories ul a::after {
    content: none;
    position: absolute;
    bottom: 0;
    left: auto;
    right: 0;
    width: 0%;
    height: 1px;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    background-color: var(--primary);
}
.facet-categories ul a:hover, .facet-categories ul a.active {
    color: var(--primary);
}
.facet-categories ul li:not(:last-child) a {
    border-bottom: 1px solid var(--gray-5-2);
}
.facet-categories ul li:not(:last-child) a:hover::after, .facet-categories ul li:not(:last-child) a.active::after {
    width: 100%;
    left: 0;
    right: auto;
}
.btn-loadmore {
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--secondary);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    margin-top: 16px;
}
.btn-loadmore:hover {
    color: var(--primary);
}
.widget-facet .facet-title {
    margin-bottom: 16px;
}
.widget-facet .box-fieldset-item {
    display: grid;
    gap: 10px;
}
.widget-facet .fieldset-item {
    display: flex;
    align-items: center;
    gap: 10px;
}
.widget-facet:not(:last-child) {
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--gray-5);
}
.facet-price .box-fieldset-item {
    margin-bottom: 10px;
}
.facet-price input[type=number]::-webkit-outer-spin-button,
.facet-price input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0;
}
.facet-vote .fieldset-item label {
    display: flex;
    gap: 8px;
    align-items: center;
}
.meta-filter-shop {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 30px;
}
.meta-filter-shop .count-text {
    font-size: 12px;
    line-height: 22px;
    color: var(--text);
    padding-right: 12px;
    position: relative;
}
.meta-filter-shop .count-text::after {
    position: absolute;
    top: 4px;
    bottom: 4px;
    right: 0;
    width: 1px;
    display: block;
    content: "";
    background-color: #d9d9d9;
}
.meta-filter-shop .count-text .count {
    color: var(--black);
    display: inline-block;
    margin-right: 2px;
}
.meta-filter-shop #applied-filters {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.meta-filter-shop .filter-tag {
    font-size: 14px;
    line-height: 22px;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 12px;
    border: 1px solid var(--gray-5);
    border-radius: 1000px;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    cursor: pointer;
}
.meta-filter-shop .filter-tag .remove-tag {
    font-size: 12px;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.meta-filter-shop .filter-tag:hover {
    border-color: var(--black);
}
.meta-filter-shop .color-tag {
    gap: 8px;
}
.meta-filter-shop .color-tag .color {
    width: 20px;
    height: 20px;
    display: block;
    border-radius: 1000px;
}
.meta-filter-shop .remove-all-filters {
    padding: 4px 12px;
    border: 1px solid var(--black);
    border-radius: 99px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    background-color: var(--black);
    color: var(--white);
}
.meta-filter-shop .remove-all-filters .icon {
    font-size: 12px;
}
.meta-filter-shop .remove-all-filters:hover {
    background-color: transparent;
    color: var(--black);
}
.overlay-filter {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2000;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.4);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.overlay-filter.show {
    opacity: 1;
    visibility: visible;
}
/*------------ nice select ---------------- */
.image-select > .dropdown-menu {
    width: auto !important;
}
.image-select.style-default {
    width: unset !important;
    display: flex;
}
.image-select.style-default > select {
    display: none !important;
}
.image-select.style-default > .dropdown-toggle {
    padding: 0;
    background-color: transparent !important;
    border: 0 !important;
    outline: none !important;
    color: var(--main);
}
.image-select.style-default > .dropdown-toggle::after {
    border: 0;
    position: absolute;
    right: 0;
    font-family: "icomoon";
    font-size: 12px;
    color: var(--main);
}
.image-select.style-default .filter-option-inner-inner {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 8px;
    font-weight: 400;
    font-size: 13px;
    line-height: 25px;
}
.image-select.style-default .filter-option-inner-inner img {
    width: 34px;
    height: 34px;
    object-fit: cover;
    border-radius: 50%;
    padding: 3px;
    border: 1px solid var(--gray-4);
}
.image-select.style-default > .dropdown-menu {
    overflow: unset !important;
    margin-top: 5px !important;
    margin-bottom: 5px !important;
    padding: 5px;
    border-radius: 0;
    border: 0;
    background-color: var(--white);
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 18px 0px;
}
.image-select.style-default > .dropdown-menu li:not(:last-child) {
    padding-bottom: 5px !important;
    margin-bottom: 5px;
}
.image-select.style-default > .dropdown-menu .inner {
    position: relative;
}
.image-select.style-default > .dropdown-menu a {
    padding: 0 !important;
}
.image-select.style-default > .dropdown-menu a .text {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    font-weight: 400;
    font-size: 14px;
    line-height: 16px;
}
.image-select.style-default > .dropdown-menu a .text img {
    width: 30px;
}
.image-select.style-default > .dropdown-menu a:hover, .image-select.style-default > .dropdown-menu a:active, .image-select.style-default > .dropdown-menu a.active {
    color: var(--primary) !important;
    background-color: unset !important;
}
.image-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;
}
.image-select.style-default > .dropdown-menu[data-popper-placement=top-start]::after {
    display: none;
}
.image-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;
}
.image-select.type-languages > .dropdown-menu {
    width: 96px !important;
}
.image-select.type-2 > .dropdown-menu {
    width: 120px !important;
    margin-left: calc(50% - 60px) !important;
    margin-top: 10px !important;
    padding: 10px 15px;
}
.image-select.type-2 > .dropdown-menu li:not(:last-child) {
    padding-bottom: 10px !important;
}
.image-select.type-2 > .dropdown-menu li a .text {
    justify-content: flex-start;
    gap: 8px;
}
.image-select.type-2 > .dropdown-menu li a .text img {
    width: 25px;
    height: 25px;
    border-radius: 50%;
}
.image-select.type-2 .filter-option-inner-inner {
    gap: 0 !important;
    width: 34px;
}
.tf-cur {
    display: flex;
    align-items: center;
    gap: 28px;
}
.tf-cur .tf-cur-item {
    display: flex;
    align-items: center;
    gap: 5px;
}
.tf-cur .select-default {
    border: unset;
}
.tf-cur .select-default option {
    font-weight: 600;
    font-size: 13px;
    line-height: 25px;
}
.tf-my-dropdown {
    border-radius: 3px;
    border: 1px solid var(--gray-5);
    min-width: 160px;
    z-index: 100;
    padding: 9px;
}
.tf-my-dropdown i {
    font-size: 20px;
}
.tf-my-dropdown .btn-select {
    display: flex;
    align-items: center;
    gap: 6px;
    height: 100%;
}
.tf-my-dropdown:hover {
    border-color: var(--primary);
    color: var(--primary);
}
.tf-my-dropdown::after {
    display: none;
}
.tf-my-dropdown .list {
    border: 1px solid var(--gray-5);
    min-width: 160px;
    padding: 15px 5px;
    border-radius: 0;
    max-height: 68vh;
    isolation: isolate;
    overscroll-behavior-y: contain;
    overflow-y: auto;
    transform: unset;
    transition: unset;
    box-shadow: unset;
}
.tf-my-dropdown .list .option {
    padding: 0 15px;
    line-height: 30px;
    min-height: unset;
    color: var(--secondary);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    font-weight: 500;
}
.tf-my-dropdown .list .option:hover, .tf-my-dropdown .list .option.selected {
    background-color: var(--gray-4);
    color: var(--black);
}
.tf-my-dropdown.tf-control-sort {
    min-width: 204px;
}
.tf-my-dropdown.tf-control-sort .list {
    min-width: 204px;
}
/*------------ sections ---------------- */
.breakcrumbs {
    display: flex;
    align-items: center;
    gap: 0px 10px;
    flex-wrap: wrap;
}
.breakcrumbs i {
    font-size: 10px;
}
.s-breakcrumbs-page {
    padding-top: 20px;
    padding-bottom: 50px;
}
.flat-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 10px;
    margin-bottom: 30px;
    border-bottom: 1px solid var(--gray-5);
}
.flat-title-has-icon {
    display: flex;
    align-items: center;
    gap: 9px;
}
.flat-title-has-icon .icon {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: var(--primary);
    color: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
}
.flat-title-has-icon .icon i {
    font-size: 20px;
}
.flat-title-2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    gap: 20px;
    margin-bottom: 30px;
}
.flat-title-2 .box-title {
    display: grid;
    gap: 10px;
}
.parallax-image {
    height: 410px;
}
.s-search-faq {
    position: relative;
}
.s-search-faq .parallax-image {
    height: 350px;
}
.s-search-faq .content {
    display: grid;
    gap: 10px;
}
.s-search-faq .box-title {
    display: grid;
    gap: 30px;
}
.s-search-faq .wrap {
    position: absolute;
    width: 100%;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    z-index: 2;
}
.s-search-faq .form-search-3 {
    max-width: 540px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.s-faq {
    display: flex;
    align-items: flex-start;
    gap: 30px;
    flex-wrap: wrap;
}
.s-faq .flat-title-tab-faq {
    width: 100%;
}
.s-faq .wrap {
    width: 100%;
}
.s-shoping-cart .cart-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 24px;
    flex-wrap: wrap;
    border-bottom: 1px solid var(--gray-5);
    gap: 15px;
}
.s-shoping-cart .box-btn {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}
.s-shoping-cart .box-btn .tf-btn {
    width: 100%;
}
.s-shoping-cart .form-discount {
    margin-bottom: 20px;
}
.tf-checkout-wrap .page-checkout {
    display: grid;
    gap: 40px;
}
.tf-checkout-wrap .title {
    margin-bottom: 20px;
}
.tf-checkout-wrap .title.has-account {
    max-width: 702px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.s-track-order .parallax-image {
    height: 585px;
    border-radius: 8px;
    overflow: hidden;
}
.s-track-order .content {
    position: relative;
}
.s-track-order .wrap {
    display: grid;
    gap: 20px;
    padding: 15px;
    border-radius: 8px;
    background-color: var(--white);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 15px;
    right: 15px;
}
.s-track-order .box-title {
    display: grid;
    gap: 10px;
}
.s-track-order .form-trackorder {
    gap: 18px;
}
.s-track-order .form-trackorder fieldset label {
    margin-bottom: 5px;
}
.box-sale-wrap {
    position: absolute;
    top: 15px;
    left: 15px;
    border-radius: 50%;
    background-color: var(--primary);
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.box-sale-wrap p {
    color: var(--white);
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
    font-family: "Poppins", serif;
}
.box-sale-wrap.pst-default {
    top: 15px;
    left: 15px;
}
.box-sale-wrap.type-2 {
    width: 56px;
    height: 56px;
}
.box-sale-wrap.type-3 {
    width: 100px;
    height: 100px;
}
.box-sale-wrap.relative {
    top: unset;
    left: unset;
    right: unset;
    bottom: unset;
}
.box-sale-wrap.style-2 {
    border-radius: 8px;
    top: unset;
    bottom: 0;
    left: 0;
    width: 100px;
}
.cls-category .img-box {
    border-radius: 8px;
}
.cls-category.style-abs {
    position: relative;
}
.cls-category.style-abs .content {
    position: absolute;
    left: 15px;
    bottom: 20px;
    display: grid;
    gap: 10px;
}
.cls-category.style-abs.abs-2 .content {
    left: 15px;
    right: 15px;
    bottom: 15px;
}
.cls-category.style-abs.abs-2 .box-btn .tf-btn {
    max-width: 148px;
    width: 100%;
}
.has-bg-img {
    background-repeat: no-repeat;
    background-size: cover;
}
.banner-image-product {
    padding: 60px 0px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
}
.banner-image-product .img-2 {
    max-width: 497px;
}
.banner-image-product .content {
    display: grid;
    gap: 10px;
}
.banner-image-product .content .box-title {
    display: grid;
    gap: 15px;
}
.banner-image-product.style-abs {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
}
.banner-image-product.style-abs > * {
    width: 100%;
}
.banner-image-product.style-abs .img-box {
    min-height: 300px;
}
.banner-image-product.style-abs .content {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 15px;
    right: 15px;
}
.banner-image-product.style-abs.type-abs-2 .content {
    gap: 15px;
}
.banner-image-product.style-abs.type-abs-2 .box-title {
    gap: 19px;
}
.banner-image-product.style-abs.type-abs-2 img {
    min-height: 300px;
}
.banner-image-product.style-abs.type-abs-2 .box-btn {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}
.banner-image-product.style-abs.type-abs-2 .box-btn .price {
    display: flex;
    align-items: flex-start;
}
.banner-image-product.style-abs.type-abs-2 .box-btn .price span {
    font-size: 15px;
    line-height: 30px;
}
.banner-image-product .img-item {
    position: absolute;
    top: 38px;
    bottom: 24px;
    right: 74px;
    left: 37%;
    display: flex;
}
.banner-image-product .img-item img {
    width: 100%;
    max-width: 671px;
}
.banner-image-product-2 {
    padding: 20px 0px;
    position: relative;
}
.banner-image-product-2 .inner {
    display: flex;
    align-items: center;
    gap: 30px;
    position: relative;
}
.banner-image-product-2 .item-banner {
    padding: 50px 30px;
    border-radius: 8px;
}
.banner-image-product-2 .item-image {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 2%;
}
.banner-image-product-2 .item-image.item-2 {
    right: 30%;
}
.banner-image-product-2.type-sp-2 {
    padding: 14px 0px;
}
.banner-image-product-2.type-sp-2 .inner {
    gap: 15px;
}
.banner-image-product-2.type-sp-2 .item-banner {
    padding: 51px 23px;
}
.banner-image-product-3 {
    position: relative;
    width: 100%;
}
.banner-image-product-3 .wrap {
    position: relative;
}
.banner-image-product-3 .image {
    display: inline-flex;
    border-radius: 8px;
    overflow: hidden;
}
.banner-image-product-3 .img-item {
    position: absolute;
    top: 0;
    right: 15px;
    bottom: 20%;
    left: 50%;
}
.banner-image-product-3 .box-title {
    display: grid;
    gap: 7px;
}
.banner-image-product-3 .content {
    position: absolute;
    bottom: 12px;
    left: 26px;
    right: 26px;
    display: grid;
    gap: 11px;
}
.banner-image-product-3.style-2 .content {
    gap: 24px;
    top: 50px;
    bottom: 80px;
}
.wg-cls {
    position: relative;
}
.wg-cls.type-abs .content {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateY(-50%);
    right: 5px;
}
.s-banner-wrapper {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}
.s-banner-wrapper .wrap-item-1 {
    width: 100%;
}
.s-banner-wrapper .wrap-item-2 {
    width: 100%;
}
.s-banner-wrapper .wrap-item-2 .img-box {
    height: 100%;
}
.s-banner-wrapper .wrap-item-3 {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
}
.s-banner-wrapper .wrap-item-3 > * {
    width: 100%;
}
.grid-cls {
    display: grid;
    gap: 30px;
}
.grid-cls .grid-item1 {
    grid-area: aa;
}
.grid-cls .grid-item2 {
    grid-area: bb;
}
.grid-cls .grid-item3 {
    grid-area: cc;
}
.grid-cls .grid-item4 {
    grid-area: dd;
}
.grid-cls .grid-item5 {
    grid-area: ee;
}
.grid-cls .grid-item6 {
    grid-area: ff;
}
.grid-cls .grid-item7 {
    grid-area: gg;
}
.grid-cls.grid-cls-v2 {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.grid-cls.grid-cls-v3 {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.grid-cls.grid-cls-v4 {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.grid-cls.grid-cls-v5 {
    display: unset;
}
.banner-product {
    display: flex;
    align-items: center;
    gap: 20px 50px;
    padding: 50px 0px;
    flex-wrap: wrap;
}
.banner-product.style-2 {
    gap: 20px 30px;
}
.banner-product .product-wrap {
    display: flex;
    align-items: center;
    gap: 15px;
    width: 100%;
    flex-wrap: wrap-reverse;
}
.banner-product .box-title {
    display: grid;
    gap: 16px;
}
.banner-product .info-product {
    display: grid;
    gap: 8px;
}
.banner-product .other-item {
    display: flex;
    gap: 20px;
    flex-direction: column;
}
.banner-product .other-item .card-product {
    padding: 10px;
}
.banner-product .other-item .card-product .card-product-wrapper {
    max-width: 144px;
}
.banner-product.style-2 .product-wrap {
    gap: 15px 0px;
}
.banner-product.style-2 .product-wrap .item-product {
    margin-top: -74px;
    margin-bottom: -98px;
    pointer-events: none;
}
.banner-product.style-3 {
    justify-content: space-between;
    gap: 30px;
}
.banner-product.style-3 .other-item {
    gap: 10px;
}
.banner-product.style-3 .product-wrap {
    flex-direction: column;
    align-items: start;
    gap: 15px;
    width: auto;
}
.banner-product.style-3 .content {
    display: grid;
    gap: 15px;
}
.banner-product-2 {
    position: relative;
}
.banner-product-2 .image img {
    height: 100%;
    object-fit: cover;
}
.banner-product-2 .content {
    position: absolute;
    top: 15px;
    bottom: 15px;
    left: 15px;
    right: 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.banner-product-2 .box-bottom {
    display: grid;
    gap: 9px;
}
.banner-product-2 .box-price {
    display: flex;
    gap: 2px;
}
.banner-product-2 .box-price .text {
    padding-top: 7px;
}
.banner-product-2 .content {
    top: 30px;
    bottom: 30px;
    left: 30px;
    right: 30px;
}
.slider-wrap {
    display: flex;
    gap: 30px;
    align-items: flex-start;
    flex-wrap: wrap;
}
.slider-wrap.style-2 {
    align-items: unset;
}
.cls-product {
    border-radius: 8px;
}
.cls-product {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 15px;
}
.cls-product .content {
    display: grid;
    gap: 15px;
}
.cls-product .box-title {
    display: grid;
    gap: 5px;
}
.cls-product.style-2 .content {
    gap: 12px;
}
.cls-product.style-2 .box-price > p {
    display: flex;
    align-items: flex-start;
    gap: 6px;
}
.cls-product.style-2 .box-price > p .text {
    padding-top: 10px;
}
.banner-slide-product {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
    padding: 20px 40px;
    border-radius: 8px;
    width: 100%;
}
.banner-slide-product .image {
    display: inline-flex;
    max-width: 397px;
    width: 100%;
}
.banner-slide-product .content {
    display: grid;
    gap: 15px;
}
.banner-slide-product .content .br-line {
    max-width: 368px;
    width: 100%;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, #ffffff 53.13%, rgba(255, 255, 255, 0) 100%);
}
.banner-slide-product .property-list {
    display: flex;
    gap: 30px;
}
.banner-slide-product .property-list li {
    display: grid;
    position: relative;
    gap: 10px;
}
.banner-slide-product .property-list li:not(:last-child)::after {
    content: "";
    position: absolute;
    right: -14px;
    top: 0;
    bottom: 0;
    width: 1px;
    background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, #ffffff 53.13%, rgba(255, 255, 255, 0) 100%);
}
.banner-slide-product .property-list .box-infor {
    display: grid;
    gap: 6px;
}
.slide-wrap-2 {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}
.slide-wrap-2 .wrap {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
}
.slide-wrap-2 .wrap .cls-product {
    width: 100%;
}
.wg-cls-2 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 13px 10px;
    text-align: center;
}
.wg-cls-2 .image {
    position: relative;
    max-width: 74px;
    width: 100%;
}
.wg-cls-2 .tf-overlay {
    border-radius: 50%;
    background-color: #f3f3f3;
}
.slider-category .swiper-slide {
    height: auto;
}
.slider-category .swiper-slide > * {
    height: 100%;
}
.slider-category .swiper-slide:first-child .wg-cls-2 {
    border-left: 1px solid var(--gray-5);
}
.slider-category .swiper-slide .wg-cls-2 {
    border: 1px solid var(--gray-5);
    border-left: unset;
}
.tf-brand {
    padding: 25px 0px;
    gap: 30px;
}
.tf-brand.type-sp-2 {
    padding: 38px 0px;
}
.brand-item {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    opacity: 1;
}
.brand-item:hover {
    opacity: 0.5;
}
.brand-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}
.brand-list li {
    aspect-ratio: 133/80;
    padding-top: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--gray-6);
}
.brand-list li:nth-child(1) {
    padding-top: 0;
    padding-left: 0px;
}
.brand-list li:nth-child(2) {
    padding-top: 0;
    padding-right: 0px;
}
.brand-list li:nth-child(odd) {
    padding-right: 10px;
    border-right: 1px solid var(--gray-6);
}
.brand-list li:nth-child(even) {
    padding-left: 8px;
}
.brand-list li:nth-last-child(1) {
    padding-right: 0;
    padding-bottom: 0px;
    border-bottom: unset;
}
.brand-list li:nth-last-child(2) {
    padding-left: 0;
    padding-bottom: 0px;
    border-bottom: unset;
}
.brand-list img {
    width: 100%;
    object-fit: cover;
}
.s-banner .content-banner {
    display: grid;
    gap: 10px;
    padding: 50px 0px;
}
.s-banner.style-2 .content-banner {
    margin-bottom: 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.s-banner:not(.style-2) .card-product {
    box-shadow: 0px 9px 30px 0px rgba(0, 0, 0, 0.0784313725);
}
.banner-countdown {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 50px 0px;
    flex-wrap: wrap;
}
.banner-countdown .content {
    display: grid;
    gap: 30px;
}
.banner-countdown .box-title {
    display: grid;
    gap: 12px;
}
.banner-countdown .bottom {
    display: grid;
    gap: 10px;
}
.main-page {
    max-width: 1570px;
    margin: auto;
}
.tf-grid-product {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}
.wg-404 h1 {
    font-size: 100px;
    line-height: 100px;
    margin-bottom: 15px;
}
.wg-404 .notice {
    margin-bottom: 30px;
}
.wg-map {
    padding-bottom: 167px;
    position: relative;
}
.wg-map .bottom {
    display: flex;
    align-items: flex-end;
    position: absolute;
    bottom: 0;
    left: 15px;
    z-index: 5;
    pointer-events: none;
}
.wg-map .contact-wrap {
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.1019607843);
    background-color: var(--white);
    display: grid;
    gap: 30px;
    pointer-events: all;
}
.wg-map .contact-wrap .box-title {
    display: grid;
    gap: 10px;
}
.wg-map .contact-info {
    padding: 15px;
    display: grid;
    gap: 20px;
    pointer-events: all;
}
.wg-map .info-list {
    display: flex;
    align-items: flex-start;
    gap: 5px 15px;
    flex-wrap: wrap;
}
.wg-map .info-list li {
    display: flex;
    align-items: flex-start;
    gap: 15px;
}
.wg-map .info-list li .icon {
    font-size: 16px;
    margin-top: 4px;
    padding-right: 8px;
    border-right: 1px solid #4f4f4f;
    display: flex;
}
.wg-map .form-contact {
    flex-direction: column;
    display: flex;
    gap: 18px;
}
.wg-map .form-contact fieldset input {
    padding: 11px 10px 11px 14px;
}
.checkout-status .checkout-wrap {
    display: flex;
    position: relative;
    max-width: 1200px;
    width: 100%;
    margin: 0px auto;
}
.checkout-status .checkout-bar {
    display: block;
    width: 100%;
    height: 4px;
    border-radius: 999px;
    background-color: var(--gray-5);
    position: absolute;
    top: 22px;
    left: 0;
    z-index: 0;
}
.checkout-status .checkout-bar::after {
    content: "";
    position: absolute;
    height: 4px;
    left: 0;
    top: 0;
    background-color: var(--primary);
    border-radius: 999px;
}
.checkout-status .checkout-bar.first::after {
    width: 16.6666666667%;
}
.checkout-status .checkout-bar.next::after {
    width: 50%;
}
.checkout-status .checkout-bar.end::after {
    width: 100%;
}
.checkout-status .icon {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: var(--primary);
    width: 48px;
    height: 48px;
    color: var(--white);
}
.checkout-status .icon i {
    font-size: 24px;
}
.checkout-status .step-payment {
    display: flex;
    flex-direction: column;
    gap: 15px;
    align-items: center;
    width: 33.3333333333%;
    position: relative;
    z-index: 2;
    text-align: center;
}
.checkout-status .step-payment .icon {
    position: relative;
    z-index: 2;
}
.tf-cart-sold {
    margin-bottom: 16px;
}
.wg-testimonial {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 15px;
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.0509803922);
    background-color: var(--white);
    border-radius: 8px;
}
.wg-testimonial .entry_image {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}
.wg-testimonial .entry_meta {
    display: flex;
    align-items: center;
    gap: 10px;
}
.wg-testimonial .entry_meta .br-line {
    height: 14px;
    width: 1px;
    background-color: var(--gray-4);
}
.wg-testimonial .content {
    display: grid;
    gap: 18px;
}
.wg-testimonial .box-title .entry_name {
    margin-bottom: 2px;
}
.wg-testimonial .box-title .entry_meta {
    margin-bottom: 6px;
}
.wg-testimonial .list-star i {
    font-size: 14px;
}
.wg-testimonial {
    padding: 30px;
}
.file-delete .remove {
    cursor: pointer;
}
.my-account-nav {
    display: flex;
    flex-direction: column;
    gap: 10px;
    position: sticky;
    top: 0;
}
.my-account-nav .my-account-nav-item {
    display: flex;
    width: 100%;
    border: 1px solid var(--gray-4);
    padding: 15px 20px;
    border-radius: 3px;
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    position: relative;
}
.my-account-nav .my-account-nav-item:hover, .my-account-nav .my-account-nav-item.active {
    background-color: var(--gray-5);
    color: var(--primary);
    border-color: var(--gray-5);
}
.parallax-style {
    border-radius: 8px;
    overflow: hidden;
    height: 300px;
}
.entry-privary {
    display: grid;
    gap: 30px;
}
.entry-privary .wrap {
    display: grid;
    gap: 20px;
}
.entry-privary .wrap .text-list {
    display: grid;
    gap: 10px;
}
.banner-image-product-4 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 30px;
    height: 100%;
    border-radius: 8px;
    gap: 10px 0px;
}
.banner-image-product-4 .img-item {
    width: 50%;
}
.banner-image-product-4 .content {
    display: grid;
    gap: 20px;
    width: 50%;
}
.banner-image-product-4 .box-title {
    display: grid;
    gap: 20px;
}
.wg-product-view {
    position: relative;
    padding: 15px;
    border-radius: 8px;
    overflow: hidden;
}
.wg-product-view .image {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    z-index: 0;
}
.wg-product-view .content {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
    justify-content: center;
}
.wg-product-view .name {
    font-size: 24px;
    line-height: 28px;
}
.wg-product-view .sub {
    font-size: 12px;
    line-height: 14px;
}
.wg-product-view .box-title {
    display: grid;
    gap: 8px;
}
.wg-product-view .box-price {
    display: flex;
    gap: 6px;
}
.wg-product-view .box-price .text {
    padding-top: 7px;
    font-weight: 300;
    font-size: 10px;
    line-height: 13px;
}
.wg-product-view .box-price .price {
    font-weight: 700;
    font-size: 30px;
    line-height: 36px;
}
.wg-product-view.style-2 .box-title {
    gap: 5px;
}
.wg-product-view.style-2 .box-price {
    gap: 2px;
}
.wg-product-view.style-2 .box-price .text {
    font-weight: 500;
    font-size: 16px;
    line-height: 19px;
    padding-top: 5px;
}
.wg-product-view.style-2 .content {
    height: 100%;
    justify-content: center;
}
.wg-product-view {
    padding: 16px 18px;
}
.tf-sw-categories .swiper-slide {
    height: auto;
}
.tf-sw-categories .swiper-slide > * {
    height: 100%;
}
.banner-product-3 {
    position: relative;
    max-width: 400px;
    width: 100%;
    height: 100%;
}
.banner-product-3 .content {
    position: absolute;
    top: 20px;
    left: 15px;
    right: 15px;
}
.banner-product-3 .tag {
    padding-bottom: 5px;
    margin-bottom: 10px;
    border-bottom: 3px solid var(--third-2);
}
.banner-product-3 .tag.type-2 {
    border-bottom: 3px solid var(--primary);
}
.banner-product-3 .box-title {
    display: grid;
    gap: 8px;
}
/*-------------- Responsive ----------------- */
/* Media Queries
-------------------------------------------------------------- */
@media (min-width: 426px) {
    .banner-product .info-product .tag-new {
        font-weight: 300;
        font-size: 16px;
        line-height: 19px;
        letter-spacing: 11.2px;
    }
    .banner-product .info-product .name {
        font-weight: 100;
        font-size: 58px;
        line-height: 71px;
    }
    .banner-product .box-price .start {
        font-weight: 300;
        font-size: 21px;
        line-height: 25px;
    }
    .banner-product .box-price .price {
        font-weight: 700;
        font-size: 73px;
        line-height: 88px;
    }
    .banner-product.style-2 .info-product .name {
        font-size: 47px;
        line-height: 48px;
    }
}
@media (min-width: 576px) {
    .modal-newleter .modal-content {
        padding: 40px;
    }
    .modal-newleter .icon-close-popup {
        right: 10px;
        top: 10px;
    }
    .w-sm-auto {
        width: auto !important;
    }
    .sw-banner .card-product .card-product-wrapper {
        max-width: 192px !important;
    }
    .product-thumb-slider.thumbs-right {
        flex-direction: unset;
        gap: 30px;
        align-items: flex-start;
    }
    .product-thumb-slider.thumbs-right .tf-product-view-thumbs {
        width: 69px;
    }
    .product-thumb-slider.thumbs-right.type-right-2 {
        gap: 20px;
    }
    .product-thumb-slider.thumbs-right.type-right-2 .tf-product-view-main .tf-image-view {
        aspect-ratio: 471/337;
        max-width: 471px;
    }
    .card-product.style-thums-2 .card-product-info {
        display: flex;
        align-items: flex-start;
    }
    .card-product.style-thums-2 .box-infor-detail {
        max-width: 268px;
        width: 100%;
    }
    .card-product.style-thums-2 .name-product {
        -webkit-line-clamp: 1;
    }
    .card-product.style-row.type-row-3 {
        gap: 12px !important;
        align-items: center;
    }
    .card-product.style-row.type-row-3 .card-product-wrapper {
        max-width: 144px;
    }
    .card-product.style-row.row-small .card-product-wrapper {
        max-width: 160px !important;
    }
    .s-shoping-cart .box-btn .tf-btn {
        max-width: 219px;
    }
    .form-add-comment {
        max-width: 384px;
        width: 100%;
    }
    .form-add-comment fieldset {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }
    .form-add-comment fieldset.align-items-sm-start label {
        padding-top: 10px;
    }
    .form-add-comment input,
    .form-add-comment textarea {
        padding: 9px 10px !important;
        max-width: 294px;
        width: 100%;
    }
    .form-add-comment .btn-submit {
        margin-left: 90px;
    }
    .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);
    }
    .news-item .entry_infor_news h6 a {
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        display: -webkit-box;
        overflow: hidden;
    }
    .news-item .entry_infor_news .subs {
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        display: -webkit-box;
        overflow: hidden;
    }
}
@media (min-width: 768px) {
    .banner-product.style-2 .product-wrap > * {
        width: 50%;
    }
    .offcanvas-search .offcanvas-content {
        padding: 68px 0;
    }
    .looking-for-wrap {
        margin-bottom: 50px;
    }
    .looking-for-wrap .heading {
        margin-bottom: 16px;
    }
    .looking-for-wrap .form-search {
        margin-bottom: 8px;
    }
    .s-faq {
        gap: 60px;
        flex-wrap: nowrap;
    }
    .s-faq .wrap {
        padding-left: 38px;
        border-left: 1px solid var(--gray-5);
    }
    .s-faq .flat-title-tab-faq {
        max-width: 254px;
    }
    .tf-compare-col {
        min-width: 280px;
    }
    .tf-compare-col:first-child {
        min-width: 280px;
    }
    .modal-quick-view .quickview-image {
        padding: 20px 0px 20px 20px;
        width: 45%;
    }
    .modal-quick-view .quickview-info-wrap {
        width: 55%;
    }
    .modal-quick-view .quickview-info-inner {
        position: absolute;
        inset: 0;
        overflow-y: auto;
        padding: 24px;
    }
    .countdown-box-2 .countdown__timer {
        gap: 41px;
    }
    .countdown-box-2 .countdown__item:not(:last-child)::after {
        right: -20px;
    }
    .banner-product.style-3 .product-wrap {
        gap: 40px;
    }
    .banner-product.style-3 .content {
        gap: 21px;
    }
    .grid-cls {
        display: grid;
        grid-template-areas: "bb bb" "bb bb" "aa cc";
        grid-template-columns: 1fr 1fr;
    }
    .grid-cls.grid-cls-v2 {
        display: grid;
        grid-template-columns: calc(50% - 5px) calc(50% - 5px);
        grid-template-areas: "aa bb" "cc bb" "dd ee";
    }
    .grid-cls.grid-cls-v2.type-2 {
        grid-template-areas: "aa bb" "cc bb" "dd ee" "ff gg";
    }
    .grid-cls.grid-cls-v3 {
        grid-template-columns: calc(67% - 15px) calc(33% - 15px);
        grid-template-areas: "bb cc";
    }
    .grid-cls.grid-cls-v4 {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        grid-template-areas: "bb bb aa" "bb bb cc";
    }
    .slide-wrap-2 .wrap {
        flex-direction: row;
    }
    .s-banner-wrapper .wrap-item-3 {
        flex-direction: row;
    }
    .tf-grid-product-item {
        width: calc(50% - 15px);
    }
    .card-product.style-row {
        flex-direction: row;
        align-items: flex-start;
    }
    .card-product.style-row .card-product-wrapper {
        height: 100%;
        max-width: 274px;
        width: 100%;
    }
    .card-product.style-row .card-product-btn {
        max-width: 200px;
        margin-left: 20px;
        height: 100%;
    }
    .card-product.style-row .card-product-btn::after {
        position: absolute;
        content: "";
        left: -20px;
        top: 0;
        bottom: 0;
        width: 1px;
        height: 100%;
        background-color: var(--gray-5);
    }
    .card-product.style-row.type-row-2 {
        gap: 20px;
        flex-direction: column;
    }
    .card-product.style-row.type-row-2 .box-infor-detail {
        gap: 30px;
    }
    .card-product.style-row.type-row-2 .card-product-wrapper {
        max-width: unset;
    }
    .card-product.style-row.type-row-2 .countdown-box {
        display: flex;
        gap: 5px 20px;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .card-product.style-row.type-row-2 .countdown-box .js-countdown {
        max-width: 268px;
        width: 100%;
    }
    .tf-product-info-wrap {
        height: 100%;
    }
    .tf-product-info-wrap .tf-product-info-list {
        height: 100%;
    }
    .thumbs-slider {
        max-width: 652px;
    }
    .canvas-sidebar .canvas-header {
        padding: 20px;
        padding-bottom: 10px;
    }
    .canvas-sidebar .canvas-header::after {
        left: 32px;
        right: 32px;
    }
    .canvas-sidebar .canvas-body {
        padding: 20px;
        padding-top: 20px;
    }
    .canvas-sidebar-account .canvas-header::after {
        left: 20px;
        right: 20px;
    }
    .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) {
    .card-product .box-icon {
        width: 35px;
        height: 35px;
    }
    .card-product .box-icon .icon {
        font-size: 14px;
    }
    .parallax-style {
        height: 500px;
    }
    .tf-lg-width {
        max-width: 720px;
    }
    .popup-style.popup-shopping-cart {
        width: 450px;
    }
    .ft-heading {
        line-height: 27px;
        font-family: "Poppins", serif;
    }
    .countdown-box-2 .countdown__timer {
        gap: 73px;
    }
    .countdown-box-2 .js-countdown {
        padding: 14px 26px;
    }
    .countdown-box-2 .countdown__item {
        min-width: 75px;
    }
    .countdown-box-2 .countdown__item:not(:last-child)::after {
        right: -36px;
    }
    .countdown-box-2 .countdown__value {
        font-weight: 400;
        font-size: 60px;
        line-height: 73px;
    }
    .countdown-box-2 .countdown__label {
        font-weight: 600;
        font-size: 15px;
        line-height: 24px;
    }
    .s-banner.style-2 .content-banner {
        gap: 15px;
        height: 100%;
    }
    .s-banner.style-2 .content-banner .title {
        margin-bottom: 25px;
    }
    .s-banner.style-2 .content-banner .price {
        font-size: 100px;
        line-height: 121px;
        display: flex;
        align-items: flex-start;
        gap: 2px;
    }
    .s-banner.style-2 .content-banner .price span {
        padding-top: 19px;
        font-weight: 300;
        font-size: 50px;
        line-height: 61px;
    }
    .grid-cls.grid-cls-v3 {
        display: grid;
    }
    .card-product.style-row.type-row-2 .card-product-wrapper {
        max-width: 290px;
    }
    .s-banner-wrapper .wrap-item-1 {
        width: calc(30% - 10px);
    }
    .s-banner-wrapper .wrap-item-2 {
        width: calc(70% - 10px);
    }
    .s-banner-wrapper .wrap-item-2 .img-box {
        height: 100%;
    }
    .box-sale-wrap.position1 {
        top: 46px;
        right: -28px;
        left: unset;
        bottom: unset;
    }
    .s-track-order .wrap {
        gap: 30px;
        padding: 30px;
        left: 88px;
        max-width: 560px;
        width: 100%;
        right: unset;
    }
    .flat-sidebar-checkout {
        max-width: 450px;
        padding: 30px;
    }
    .s-search-faq .parallax-image {
        height: 490px;
    }
    .tab-review {
        width: 100%;
    }
    .tab-review .tab-rating-wrap {
        width: 50%;
        padding-right: 30px;
        border-right: 1px solid var(--gray-5);
    }
    .tab-review.style-2 {
        flex-direction: column;
    }
    .tab-review.style-2 .tab-rating-wrap {
        max-width: unset;
        width: 100%;
        padding-right: unset;
        flex-direction: row;
        justify-content: space-between;
        flex-wrap: nowrap;
        gap: 75px;
    }
    .tab-review.style-2 .tab-rating-wrap .br-line {
        height: 140px;
        background-color: var(--gray-4);
    }
    .tab-review.style-2 .rating-progress-list {
        max-width: 383px;
        width: 100%;
    }
    .tab-review.style-2 .tab-review-wrap {
        flex-direction: row;
    }
    .tab-review.style-2 .tab-review-wrap .review-list {
        padding-right: 40px;
        border-right: 1px solid var(--gray-5);
    }
    .tab-review.style-2 .tab-review-wrap .add-comment-wrap {
        max-width: 384px;
        width: 100%;
        flex-shrink: 0;
    }
    .tf-topbar {
        padding: 12px 0px;
    }
    .tf-topbar.style-2 {
        padding: 7.5px 0px;
    }
    .wg-pagination {
        padding-top: 30px;
    }
    .wg-pagination li {
        width: 56px;
        height: 56px;
    }
    .wg-pagination li i {
        font-size: 26px;
    }
    .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: 1025px) {
    .tf-table-page-cart {
        width: 100%;
    }
    .tf-table-page-cart tr > *:nth-child(1) {
        width: 676px;
    }
    .tf-table-page-cart tr > *:nth-child(2) {
        width: 256px;
    }
    .tf-table-page-cart tr > *:nth-child(3) {
        width: 284px;
    }
    .tf-table-page-cart tr > *:nth-child(4) {
        width: 197px;
    }
}
@media (min-width: 1200px) {
    .banner-product.style-2 .product-wrap > * {
        width: auto;
    }
    .banner-image-product-2.style-3 .inner {
        gap: 19px;
    }
    .banner-image-product-2.style-3 .box-price {
        font-weight: 700;
        font-size: 60px;
        line-height: 72px;
        display: flex;
        flex-direction: column;
    }
    .banner-image-product-2.style-3 .box-price .text {
        font-weight: 300;
        font-size: 20px;
        line-height: 24px;
    }
    .banner-image-product-2.style-3 .break {
        font-size: 99px;
        line-height: 99px;
        font-weight: 100;
    }
    .banner-image-product-2.style-3 .box-sale-wrap {
        margin-left: 40px;
        margin-top: -90px;
    }
    .banner-image-product-4 {
        align-items: flex-start;
        padding: 92px 70px 24px 76px;
    }
    .banner-image-product-4 .content {
        gap: 30px;
    }
    .banner-image-product-4 .box-title {
        gap: 40px;
    }
    .banner-image-product-4 .img-item {
        max-width: 671px;
        width: 100%;
    }
    .banner-image-product-4 .content {
        width: auto;
    }
    .banner-image-product-4.style-2 {
        padding: 60px 28px 60px 60px;
        align-items: center;
        gap: 30px;
    }
    .banner-image-product-4.style-2 .img-item {
        max-width: 400px;
    }
    .banner-image-product-4.style-2 .box-title {
        gap: 20px;
    }
    .banner-image-product-4.style-2 .box-price {
        display: grid;
        gap: 5px;
    }
    .box-btn-slide-2.type-pst-2 .nav-swiper {
        top: calc(50% - 25px);
    }
    .s-banner:not(.style-2) .swiper {
        padding-bottom: 50px;
    }
    .modal-quick-view .icon-close-popup {
        right: 10px;
        top: 10px;
    }
    .modal-quick-view .entry_name {
        padding-right: 10px;
    }
    .gridLayout-fullWidth .flat-grid-product.layout-tablist-1 .card-product, .gridLayout-fullWidth .flat-grid-product.layout-tablist-2 .card-product {
        justify-content: space-between;
    }
    .gridLayout-fullWidth .flat-grid-product.layout-tablist-2 {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .container-full {
        padding-left: 40px;
        padding-right: 40px;
    }
    .thumbs-left .thumbs-slider {
        flex-direction: row;
    }
    .thumbs-left .tf-product-media-thumbs {
        width: 80px;
        flex-shrink: 0;
    }
    .thumbs-left .container-swiper {
        max-width: unset;
        width: unset;
        margin: unset;
    }
    .grid-banner .grid-item2 .cls-product {
        gap: 6px;
        padding: 18px 0px 18px 19px;
    }
    .grid-banner .grid-item3 .cls-product {
        padding: 18px 0px 13px 16px;
        gap: 5px;
    }
    .checkout-status {
        padding-top: 5px !important;
    }
    .wg-map .contact-wrap {
        max-width: 414px;
        width: 100%;
    }
    .btn-direc {
        padding-top: 10px;
    }
    .mt-xl--10 {
        margin-top: -10px;
    }
    .wg-404 h1 {
        font-size: 200px;
        line-height: 200px;
        margin-bottom: 30px;
    }
    .wg-404 .notice {
        margin-bottom: 50px;
    }
    .main-page {
        margin-top: -65px;
        border-radius: 8px;
        background-color: var(--white);
    }
    .banner-countdown {
        padding: 80px 0px;
    }
    .banner-countdown .content {
        gap: 45px;
    }
    .banner-countdown .box-price .price-text {
        margin-bottom: 1px;
    }
    .banner-countdown .box-price .price {
        font-weight: 600;
        font-size: 80px;
        line-height: 94px;
    }
    .banner-countdown .image {
        max-width: 734px;
    }
    .s-banner .content-banner {
        gap: 4px;
        padding: 96px 0px 110px;
    }
    .s-banner .content-banner .title {
        margin-bottom: 18px;
    }
    .p-lg-30 {
        padding: 30px !important;
    }
    .p-lg-30.style-border {
        padding: 29px !important;
    }
    .line-clamp-xl-3 {
        -webkit-line-clamp: 3 !important;
    }
    .grid-cls {
        grid-template-areas: "aa bb bb cc" "aa bb bb cc" "aa bb bb cc";
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }
    .grid-cls.grid-cls-v2 {
        grid-template-columns: 29.2% 40.2% 29.2%;
        grid-template-areas: "aa bb cc" "dd bb ee";
    }
    .grid-cls.grid-cls-v2.type-2 {
        grid-template-columns: calc(28% - 6.6667px) calc(44% - 6.6667px) calc(28% - 6.6667px);
        grid-template-areas: "aa bb cc" "dd bb ee" "ff bb gg";
    }
    .grid-cls.grid-cls-v5 {
        display: grid;
        gap: 10px;
        grid-template-columns: calc(78% - 5px) calc(22% - 5px);
        grid-template-areas: "aa bb" "aa cc" "aa dd";
    }
    .h-xl-100 {
        height: 100%;
    }
    .slide-wrap-2 {
        margin-bottom: 203px;
    }
    .section-wrap {
        padding: 30px;
        box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.0509803922);
        border-radius: 8px;
        background: #ffffff;
        margin-top: -203px;
    }
    .banner-slide-product {
        max-width: 1070px;
    }
    .slide-wrap-2 .wrap {
        width: unset;
    }
    .slide-wrap-2 .cls-product {
        max-width: 400px;
        height: 100%;
    }
    .cls-product {
        gap: 34px;
        padding: 20px 29px 20px 15px;
    }
    .cls-product .content {
        display: grid;
        gap: 22px;
    }
    .cls-product .box-title {
        display: grid;
        gap: 5px;
    }
    .cls-product.style-2 {
        padding: 5px 10px 6px 20px;
        gap: 6px;
    }
    .cls-product.style-2 .box-title {
        display: grid;
        gap: 6px;
    }
    .lh-xl-25 {
        line-height: 25px !important;
    }
    .lh-xl-24 {
        line-height: 24px !important;
    }
    .lh-xl-22 {
        line-height: 22px !important;
    }
    .lh-xl-15 {
        line-height: 15px !important;
    }
    .lh-xl-14 {
        line-height: 14px !important;
    }
    .lh-xl-17 {
        line-height: 17px !important;
    }
    .lh-xl-31 {
        line-height: 31px !important;
    }
    .lh-xl-33 {
        line-height: 33px !important;
    }
    .lh-xl-49 {
        line-height: 49px !important;
    }
    .lh-xl-71 {
        line-height: 71px !important;
    }
    .mb-xl--5 {
        margin-bottom: -5px;
    }
    .banner-image-product-3 .wrap {
        margin-right: 28px;
    }
    .slider-wrap .banner-image-product-3 {
        width: calc(40% - 15px);
    }
    .slider-wrap .tf-sw-products {
        width: calc(60% - 15px);
    }
    .slider-wrap.style-2 .width-item-1 {
        width: calc(28% - 15px);
    }
    .slider-wrap.style-2 .width-item-2 {
        width: calc(72% - 15px);
    }
    .slider-wrap.style-3 .width-item-1 {
        width: calc(40% - 15px);
    }
    .slider-wrap.style-3 .width-item-2 {
        width: calc(60% - 15px);
    }
    .banner-image-product-3 .name {
        font-size: 50px;
        line-height: 50px;
    }
    .banner-image-product-3 .sub-name {
        font-size: 100px;
        line-height: 97px;
    }
    .banner-product .other-item {
        max-width: 417px;
        width: 100%;
    }
    .s-banner-wrapper {
        flex-wrap: nowrap;
    }
    .s-banner-wrapper .wrap-item-1 {
        max-width: 285px;
    }
    .s-banner-wrapper .wrap-item-2 .img-box {
        height: 100%;
    }
    .s-banner-wrapper .wrap-item-3 {
        max-width: 360px;
        flex-direction: column;
    }
    .tf-grid-product-item {
        flex: 1;
        max-width: calc((100% - 90px) / 4);
    }
    .gap-xl-20 {
        gap: 20px !important;
    }
    .gap-xl-12 {
        gap: 12px !important;
    }
    .gap-xl-6 {
        gap: 6px !important;
    }
    .card-product.style-row {
        gap: 30px;
    }
    .card-product.style-row .card-product-info {
        gap: 14px;
    }
    .card-product.style-row .card-product-info .price-wrap {
        margin-top: -2px;
    }
    .card-product.style-row .card-product-btn {
        margin-left: 30px;
    }
    .card-product.style-row .card-product-btn::after {
        left: -30px;
    }
    .card-product .list-product-btn {
        top: 15px;
        right: 15px;
        gap: 15px;
    }
    .card-product .list-product-btn li {
        opacity: 0;
        visibility: hidden;
        transform: translateX(10px);
        -webkit-transition: all 0.3s ease-in-out;
        -moz-transition: all 0.3s ease-in-out;
        -ms-transition: all 0.3s ease-in-out;
        -o-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
    }
    .card-product .box-icon {
        width: 40px;
        height: 40px;
    }
    .card-product:hover .list-product-btn li {
        opacity: 1;
        visibility: visible;
    }
    .card-product:hover .list-product-btn li:nth-child(1) {
        transform: translateX(0px);
    }
    .card-product:hover .list-product-btn li:nth-child(2) {
        transform: translateX(0px);
        transition-delay: 0.05s;
    }
    .card-product:hover .list-product-btn li:nth-child(3) {
        transform: translateX(0px);
        transition-delay: 0.1s;
    }
    .card-product:hover .list-product-btn li:nth-child(4) {
        transform: translateX(0px);
        transition-delay: 0.15s;
    }
    .card-product.style-border {
        padding: 24px;
    }
    .card-product.style-border.type-bd-2 {
        padding: 20px;
        border: unset;
    }
    .card-product.style-4 .card-product-wrapper {
        max-width: 200px;
        width: 100%;
    }
    .wg-cls.type-abs .content {
        left: 162px;
    }
    .banner-image-product {
        gap: 64px;
    }
    .banner-image-product .content .box-title {
        gap: 23px;
    }
    .banner-image-product.style-abs .content {
        left: 50px;
    }
    .banner-image-product.style-abs.type-abs-2 .content {
        gap: 34px;
        left: 42px;
    }
    .banner-image-product.style-abs.type-abs-2 .box-btn .price span {
        font-size: 30px;
        line-height: 50px;
    }
    .banner-image-product-2 .item-image.position2 {
        left: 45px;
        right: unset;
    }
    .banner-image-product-2 .item-image.position3 {
        right: 36px;
    }
    .lh-lg-42 {
        line-height: 42px;
    }
    .lh-lg-50 {
        line-height: 50px;
    }
    .lh-lg-38 {
        line-height: 38px;
    }
    .cls-category.style-abs .content {
        bottom: 21px;
        left: 21px;
    }
    .box-sale-wrap {
        top: 30px;
        left: 21px;
    }
    .tab-review .tab-rating-wrap {
        max-width: 424px;
        width: 100%;
    }
    .tf-product-info-list {
        gap: 30px 40px;
    }
    .tf-product-info-content .product-info-name {
        margin-bottom: 4px;
    }
    .tf-product-info-content .infor-center {
        gap: 20px;
    }
    .news-item.style-row .entry_image {
        max-width: 370px;
        width: 100%;
    }
    .news-item.style-row .content {
        width: 100%;
    }
    .social-list {
        gap: 21px;
    }
    .social-list a {
        width: 46px;
        height: 46px;
    }
    .ft-bottom .social-list {
        margin-bottom: 10px;
    }
    .ft-bottom .social-list li {
        display: flex;
    }
    .flat-grid-product {
        gap: 30px;
    }
    .tf-grid-layout {
        column-gap: 30px;
        row-gap: 40px;
    }
    .tf-grid-layout.row-gap-xl-30 {
        row-gap: 30px;
    }
    .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) {
    .fw-xxl-bold {
        font-weight: bold !important;
    }
    .banner-product-3 .content {
        position: absolute;
        top: 40px;
        left: 30px;
        right: 30px;
    }
    .gap-xxl-51 {
        gap: 51px !important;
    }
    .gridLayout-fullWidth .flat-grid-product.layout-tablist-1 {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .flat-container {
        padding: 40px;
    }
    .gap-xxl-0 {
        gap: 0 !important;
    }
    .wg-map .bottom {
        left: 88px;
    }
    .wg-map .contact-info {
        padding: 40px;
    }
    .wg-map .info-list {
        gap: 30px;
    }
    .fs-xxl-70 {
        font-size: 70px !important;
    }
    .banner-slide-product {
        gap: 20px;
        padding: 24px 88px 25px 45px;
    }
    .banner-slide-product .box-title {
        margin-bottom: 10px;
    }
    .banner-slide-product .br-line {
        margin-bottom: 19px;
    }
    .banner-slide-product .property-list {
        margin-bottom: 11px;
    }
    .lh-xxl-73 {
        line-height: 73px !important;
    }
    .banner-image-product-3 {
        max-width: 578px;
    }
    .banner-image-product-3 .img-item {
        bottom: unset;
        left: unset;
    }
    .banner-image-product-3.style-2 .img-item {
        top: unset;
        bottom: -60px;
        right: 0px;
        cursor: unset;
        max-width: 408px;
    }
    .banner-product {
        gap: 112px;
        padding: 21px 0px;
    }
    .banner-product .product-wrap {
        gap: 23px;
    }
    .banner-product.style-2 {
        gap: 30px;
    }
    .lh-xxl-71 {
        line-height: 71px !important;
    }
    .overflow-xxl-visible {
        overflow: visible !important;
    }
    .card-product .group-btn {
        position: relative;
        display: unset;
    }
    .card-product .group-btn .price-wrap {
        -webkit-transition: all 0.3s ease-in-out;
        -moz-transition: all 0.3s ease-in-out;
        -ms-transition: all 0.3s ease-in-out;
        -o-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        overflow: hidden;
    }
    .card-product .group-btn .list-product-btn {
        position: absolute;
        z-index: 21;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        justify-content: flex-start;
        gap: 10px;
        opacity: 0;
        -webkit-transition: all 0.3s ease-in-out;
        -moz-transition: all 0.3s ease-in-out;
        -ms-transition: all 0.3s ease-in-out;
        -o-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
        transform: translateY(-20px);
    }
    .card-product .group-btn .list-product-btn li {
        transform: unset;
        transition-delay: unset;
        opacity: 0;
        visibility: hidden;
        opacity: 1;
        visibility: visible;
    }
    .card-product:hover .group-btn .price-wrap {
        transform: translateY(-20px);
        opacity: 0;
        visibility: hidden;
    }
    .card-product:hover .group-btn .list-product-btn {
        opacity: 1;
        transform: translateY(0px);
    }
    .tf-nav-menu .sub-menu-list {
        padding: 30px 34px 30px 30px;
    }
    .countdown-box .countdown__value {
        font-size: 20px;
        line-height: 22px;
        width: 46px;
        height: 46px;
    }
    .banner-image-product-2 .inner {
        gap: 45px;
    }
    .banner-image-product-2 .item-banner {
        padding: 51px 100px 51px 134px;
    }
    .banner-image-product-2 .item-image {
        right: 65px;
    }
    .banner-image-product-2 .item-image.item-2 {
        right: 410px;
    }
    .tf-checkout-wrap {
        gap: 50px;
    }
    .tf-product-info-list.style-2 .tf-product-info-choose-option {
        gap: 30px;
    }
    .tf-product-info-list.style-2 .tf-product-info-choose-option .product-box-btn {
        margin-left: 20px;
        width: 100%;
    }
    .tf-product-info-list.style-2 .tf-product-info-choose-option .product-box-btn .tf-btn {
        width: 100%;
    }
    .flat-product-des-list {
        gap: 40px;
    }
    .flat-product-des-list.style-2 .flat-title-tab-product-des:not(:last-child) {
        padding-bottom: 40px;
    }
    .flat-product-des-list.bg-white {
        padding: 40px;
    }
    .tab-review {
        gap: 40px;
    }
    .tab-review .tab-rating-wrap {
        padding-right: 40px;
    }
    .tab-review .rating-filter-wrap {
        margin-bottom: 10px;
    }
    .tf-product-info-wrap {
        margin-left: -52px;
    }
    .tf-product-info-choose-option {
        max-width: 259px;
    }
    .footer-col-block.type-sp-2 {
        gap: 24px;
    }
    .footer-col-block.type-sp-2 .ft-menu-list {
        gap: 20px;
    }
    .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);
    }
    .tf-header .inner-header {
        padding: 30px 0px;
    }
    .tf-header .nav-icon {
        gap: 30px;
    }
    .tf-header.style-2 .inner-header {
        padding: 26px 0px;
    }
    .tf-header.style-2 .header-center {
        margin-right: -11px;
    }
    .tf-header.style-2 .header-right {
        margin-right: 55px;
    }
    .tf-header.style-4 .inner-header {
        padding: 26px 0px;
    }
    .tf-header.style-4 .nav-icon.style-2 {
        gap: 30px;
    }
    .header-bt-left {
        gap: 30px;
    }
    .box-navigation .box-nav-menu {
        gap: 30px;
    }
    .box-navigation.style-2 .item-link {
        padding-right: 30px !important;
    }
}
@media (min-width: 1600px) {
    .d-xxxl-none {
        display: none !important;
    }
    .gridLayout-fullWidth .flat-grid-product.layout-tabgrid-1, .gridLayout-fullWidth .flat-grid-product.layout-tabgrid-2 {
        grid-template-columns: repeat(6, 1fr);
    }
    .box-btn-slide-2.sw-nav-effect .nav-swiper {
        width: 60px;
        height: 60px;
        -webkit-transition: all 0.3s ease-in-out;
        -moz-transition: all 0.3s ease-in-out;
        -ms-transition: all 0.3s ease-in-out;
        -o-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
        visibility: hidden;
    }
    .box-btn-slide-2.sw-nav-effect .nav-swiper i {
        font-size: 24px;
    }
    .box-btn-slide-2.sw-nav-effect .nav-swiper.nav-prev-products-2 {
        left: -15px;
    }
    .box-btn-slide-2.sw-nav-effect .nav-swiper.nav-next-products-2 {
        right: -15px;
    }
    .box-btn-slide-2.sw-nav-effect:hover .nav-swiper {
        visibility: visible;
    }
    .box-btn-slide-2.sw-nav-effect:hover .nav-swiper.nav-prev-products-2 {
        left: -30px;
    }
    .box-btn-slide-2.sw-nav-effect:hover .nav-swiper.nav-next-products-2 {
        right: -30px;
    }
    .box-btn-slide-item.hover-sw .nav-swiper {
        display: block;
        max-width: 72px;
    }
    .container-wrap {
        display: flex;
        gap: 30px;
    }
    .container-wrap .container-sidebar {
        max-width: 284px;
        width: 100%;
    }
    .container-wrap .container-sidebar .swiper {
        max-width: 284px;
    }
    .container-wrap .container-main {
        max-width: 1176px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    .container-sidebar {
        display: flex !important;
        flex-direction: column;
        gap: 40px;
    }
    .countdown-box .countdown__timer {
        justify-content: space-between;
    }
    .countdown-box .countdown__item {
        position: relative;
        padding: 0px 4px;
    }
    .countdown-box .countdown__item:not(:last-child)::after {
        content: "";
        position: absolute;
        right: -13px;
        top: 15px;
        width: 4px;
        height: 4px;
        background-color: var(--gray-4);
        border-radius: 50%;
    }
    .countdown-box .countdown__item:not(:last-child)::before {
        content: "";
        position: absolute;
        right: -13px;
        top: 27px;
        width: 4px;
        height: 4px;
        background-color: var(--gray-4);
        border-radius: 50%;
    }
    .banner-image-product-2.type-sp-2 {
        padding: 14px 0px;
    }
    .banner-image-product-2.type-sp-2 .item-banner {
        padding: 51px 23px;
    }
    .banner-image-product-2.style-2 .inner {
        flex-direction: column;
        gap: 30px;
    }
    .banner-image-product-2.style-2 .item-banner {
        padding: 13px 285px 27px 78px;
    }
    .banner-image-product-2.style-2 .box-price {
        padding-left: 45px;
        background-color: unset;
        width: unset;
        height: unset;
    }
    .tf-product-media-wrap.bg-white {
        padding: 40px 0px 40px 40px;
    }
    .tf-product-info-wrap.bg-white {
        padding: 40px 40px 40px 0px;
    }
    .tf-main-product.style-2 .row {
        padding: 40px;
    }
    .ft-inner {
        display: flex;
        gap: 119px;
    }
    .sidebar-item.type-space-2 {
        gap: 30px;
    }
    .nav-category-wrap .nav-title {
        gap: 8px;
        padding-right: 5px;
    }
}
@media (max-width: 1599px) {
    .tab-review .form-add-comment {
        max-width: unset;
    }
    .tab-review .form-add-comment .btn-submit {
        margin-left: unset;
        margin-right: unset;
        width: 100%;
    }
    .tab-review .form-add-comment .btn-submit .tf-btn {
        padding: 10px;
        width: 100%;
    }
    .tab-review .form-add-comment input,
    .tab-review .form-add-comment textarea {
        max-width: unset;
    }
    .tab-review .form-add-comment fieldset {
        flex-direction: column;
        align-items: unset;
        justify-content: unset;
    }
    .tab-review .form-add-comment fieldset.rate {
        flex-direction: row;
    }
}
@media (max-width: 1439px) {
    .offcanvas-compare .tf-compare-wrap {
        padding-right: 0;
        margin-right: 0;
        gap: 25px;
    }
    .offcanvas-compare .tf-compare-item > .btns-repeat {
        right: -22px;
    }
    .offcanvas-compare .icon-close-popup {
        top: 10px;
        right: 10px;
        width: 25px;
        height: 25px;
        font-size: 10px;
    }
    .card-product .group-btn .tooltip {
        display: none;
    }
    .tf-header .nav-icon-item p {
        display: none;
    }
    h1,
    .h1 {
        font-size: 40px;
        line-height: 55px;
    }
    h2,
    .h2,
    .text-xl {
        font-size: 40px;
        line-height: 55px;
    }
    .s-blog-detail {
        gap: 30px;
    }
    .s-blog-detail .box-direction {
        gap: 50px;
    }
    .s-blog-detail .box-direction.content-right {
        position: sticky;
        top: 25%;
    }
    .ft-body-center .ft-center {
        padding: 50px 0px;
    }
}
@media (max-width: 1199px) {
    .tf-header .logo-site {
        max-width: 130px;
    }
    .banner-product.style-3 > * {
        width: 50% !important;
    }
    .tf-topbar {
        display: none;
    }
    .tf-table-wishlist .wishlist-item_price {
        width: 200px;
    }
    .tf-table-wishlist .wishlist-item_stock {
        width: 150px;
    }
    .tf-table-wishlist .wishlist-item_action {
        width: 200px;
    }
    .canvas-filter-product {
        background-color: var(--white);
    }
    .canvas-filter-product .canvas-body {
        padding: 15px 20px;
        overscroll-behavior-y: contain;
        overflow-y: auto;
    }
    .canvas-filter-product .canvas-body::-webkit-scrollbar {
        width: 3px;
    }
    .canvas-filter-product .canvas-body::-webkit-scrollbar-thumb {
        background-color: var(--primary);
        border-radius: 5px;
    }
    .canvas-filter-product {
        position: fixed;
        bottom: 0;
        z-index: 3000;
        display: flex;
        flex-direction: column;
        background-clip: padding-box;
        outline: 0;
        max-width: 320px !important;
    }
    .handle-canvas {
        -webkit-transition: all 0.3s ease-in-out;
        -moz-transition: all 0.3s ease-in-out;
        -ms-transition: all 0.3s ease-in-out;
        -o-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
    }
    .handle-canvas.left {
        top: 0;
        left: 0;
        transform: translateX(-100%);
    }
    .handle-canvas.right {
        top: 0;
        right: 0;
        transform: translateX(100%);
    }
    .handle-canvas.show {
        transform: none;
    }
    .tf-sp-6 {
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .banner-image-product > * {
        width: 50%;
    }
    .banner-image-product-2.type-sp-2 .inner {
        flex-wrap: wrap;
    }
    .banner-image-product-2.type-sp-2 .inner .name {
        width: 100%;
    }
    .tf-header .nav-icon.style-3 {
        gap: 10px;
    }
    .tf-header .nav-icon.style-3 li:not(:last-child) {
        padding-right: 10px;
    }
    .tf-header.style-2, .tf-header.style-4 {
        border-bottom: 1px solid var(--line);
    }
    .s-blog-detail .box-direction {
        max-width: 100px;
    }
    .btn-direc {
        gap: 10px;
    }
    .btn-direc p {
        display: none;
    }
}
@media (max-width: 1024px) {
    .tf-table-page-cart tr > *:first-child {
        padding-left: 0px !important;
    }
    .tf-table-page-cart th {
        padding: 10px 0px;
    }
    .tf-table-page-cart th:first-child {
        padding: 10px 0px 10px 25px;
    }
    .tf-table-page-cart th:last-child {
        padding: 10px 25px 10px 0px;
    }
    .tf-table-page-cart .tf-cart-item td {
        padding-right: 10px;
    }
    .tf-table-page-cart .tf-cart-item td:first-child {
        padding: 10px 25px 10px 0px;
    }
    .tf-table-page-cart .tf-cart-item td:last-child {
        padding: 10px;
    }
    .s-shoping-cart .cart-bottom {
        padding-left: 0px;
        padding-right: 0px;
    }
}
@media (max-width: 991px) {
    .banner-image-product-2 .position2,
    .banner-image-product-2 .position3 {
        width: 160px;
        top: 40%;
    }
    .cls-category.style-abs .box-sale-wrap {
        right: 15px;
        left: unset;
    }
    .canvas-mb {
        max-width: 320px;
    }
    .form-account-details .form-content,
    .wd-form-address .form-content {
        gap: 10px;
    }
    .form-reset-password.def {
        gap: 10px;
    }
    .tf-table-wishlist {
        display: block;
    }
    .wg-map {
        padding-bottom: 0;
    }
    .wg-map iframe {
        height: 300px;
    }
    .wg-map .bottom {
        margin-top: 30px;
        position: unset;
        gap: 30px;
        flex-wrap: wrap;
    }
    .wg-map .contact-wrap {
        width: 100%;
        padding: 15px;
    }
    form .cols {
        display: flex;
        gap: 10px;
    }
    h1,
    .h1 {
        font-size: 28px;
        line-height: 40px;
    }
    h4 {
        font-size: 24px;
        line-height: 30px;
    }
    .comment-wrap .author-wrap {
        gap: 10px;
    }
    .comment-wrap .comment-list {
        gap: 30px;
    }
    .comment-wrap .comment-list .author-wrap:not(:last-child) {
        padding-bottom: 30px;
    }
    .box-direction {
        display: none !important;
    }
}
@media (max-width: 767px) {
    .form-newsletter .subscribe-content {
        gap: 5px;
    }
    .form-newsletter .subscribe-content .subscribe-button {
        padding: 12px 12px 11px;
    }
    .has-bg-img.style-2 {
        background-position: 30% center !important;
    }
    .banner-product.style-3 > * {
        width: auto !important;
    }
    .tf-header .nav-icon-item svg,
    .nav-icon svg {
        width: 20px;
        height: 20px;
    }
    .tf-header .nav-icon-item i,
    .nav-icon i {
        font-size: 20px !important;
    }
    #goTop {
        right: 20px;
    }
    .card-product.style-img-border .card-product-wrapper {
        padding: 5px;
    }
    .banner-slide-product {
        padding: 20px 15px;
    }
    .flat-title-tab-faq .tf-title {
        margin-bottom: 15px;
        padding-bottom: 15px;
    }
    .flat-title-tab-faq .menu-tab-line {
        display: flex;
        overflow: auto;
        white-space: nowrap;
    }
    .faq-item {
        gap: 20px;
    }
    .sw-dot-default {
        margin-top: 15px;
    }
    .sw-dot-default .swiper-pagination-bullet {
        width: 8px;
        height: 8px;
    }
    .sw-dot-default .swiper-pagination-bullet-active {
        width: 20px;
    }
    .wd-form-address {
        padding: 20px 15px;
    }
    .offcanvas-compare .tf-compare-list {
        flex-direction: column;
        gap: 20px;
    }
    .offcanvas-compare .tf-compare-wrap {
        margin: 0;
        padding: 15px 0;
        width: 100%;
    }
    .offcanvas-compare .tf-compare-item {
        flex-direction: column;
        width: 150px;
        gap: 7px;
    }
    .offcanvas-compare .tf-compare-buttons {
        width: 100%;
    }
    .offcanvas-compare .tf-compare-btn {
        width: 100%;
    }
    .popup-style .popup-header {
        padding: 15px 0px 15px;
        margin: 0px 15px;
    }
    .popup-style .popup-body {
        padding: 20px 15px;
    }
    .popup-style .popup-footer {
        padding: 15px;
    }
    .tf-control-layout li a,
    .tf-control-view .tf-sort {
        padding: 7px;
    }
    .tf-control-layout li a i,
    .tf-control-view .tf-sort i {
        font-size: 18px;
    }
    .tf-grid-product-2 .banner-image-product img,
    .tf-grid-product-2 .cls-category img {
        min-height: 300px;
        max-height: 350px;
    }
    .grid-cls.grid-cls-v1 {
        display: flex;
        flex-direction: column;
    }
    .card-product .tooltip {
        display: none;
    }
    .banner-image-product {
        flex-wrap: wrap;
    }
    .banner-image-product .image {
        padding: 15px;
    }
    .banner-image-product > * {
        width: 100%;
    }
    .banner-image-product-2 .item-banner {
        padding: 30px;
    }
    .banner-image-product-2 .item-image {
        width: 250px;
    }
    .banner-image-product-2 .inner {
        position: relative;
        flex-wrap: wrap;
        gap: 15px 30px;
    }
    h2,
    .h2,
    .text-xl {
        font-size: 30px;
        line-height: 40px;
    }
    h3 {
        font-size: 25px;
        line-height: 1.24;
    }
    form .cols {
        flex-wrap: wrap;
    }
    .payment-choose-card .payment-body {
        padding: 15px;
    }
    .flat-title-tab-product-des .tab-main {
        padding: 15px;
    }
    .tf-product-info-wrap {
        margin-top: 40px;
    }
    .tf-product-info-choose-option {
        padding: 15px;
    }
    .news-item.style-row {
        flex-wrap: wrap;
    }
    .news-item.style-row .entry_image {
        width: 100%;
    }
    .news-item.style-row .content {
        width: 100%;
    }
    .footer-heading-mobile {
        display: block;
        position: relative;
        padding-right: 20px;
    }
    .footer-heading-mobile::after {
        position: absolute;
        content: "";
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        width: 12px;
        height: 1px;
        background-color: var(--black);
        transition: 0.25s ease-in-out;
    }
    .footer-heading-mobile::before {
        position: absolute;
        content: "";
        right: 15px;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 1px;
        height: 12px;
        background-color: var(--black);
        transition: 0.25s ease-in-out;
    }
    .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;
    }
}
@media (max-width: 575px) {
    .main-title-3 {
        font-size: 16px;
        line-height: 24px;
    }
    .ft-bottom .ft-menu-list-2 {
        gap: 10px;
    }
    .ft-bottom .ft-menu-list-2 a {
        font-size: 14px;
        line-height: 16px;
    }
    .banner-product.style-2 .product-wrap .item-product {
        margin-top: -50px;
        margin-bottom: -50px;
    }
    .product-thumb-slider .tf-product-view-main .tf-image-view {
        max-width: 575px;
        width: 100%;
    }
    .canvas-sidebar {
        width: 320px !important;
    }
    .banner-image-product-4 {
        padding: 15px;
        position: relative;
    }
    .banner-image-product-4 .content {
        width: 100%;
        position: relative;
        z-index: 2;
    }
    .banner-image-product-4 .img-item {
        position: absolute;
        max-width: 250px;
        width: 100%;
        bottom: 15px;
        right: 15px;
        z-index: 0;
    }
    .popup-shopping-cart {
        width: 340px !important;
    }
    .grid-cls-v2:not(.type-2) .card-product .card-product-wrapper {
        max-width: unset;
    }
    .product-thumb-slider {
        overflow: hidden;
    }
    .product-thumb-slider,
    .slider-thumb-deal {
        max-width: 575px;
        width: 100%;
    }
    .box-sale-wrap.style-2 {
        top: 0;
        bottom: unset;
        height: 45px;
        width: 90px;
    }
    .flat-grid-product .card-product {
        align-items: center;
    }
    .flat-grid-product .card-product .card-product-info {
        width: 100%;
    }
    .flat-animate-tab .flat-title-tab-default {
        overflow: auto;
        white-space: nowrap;
    }
    .flat-animate-tab .flat-title-tab-default::-webkit-scrollbar {
        display: none;
    }
    .flat-animate-tab .flat-title-tab-default .menu-tab-line {
        gap: 15px;
    }
    .banner-image-product-2 .item-banner {
        padding: 30px 15px;
    }
    .banner-image-product-2 .item-banner .inner h3 {
        width: 100%;
    }
    .banner-image-product-2 .item-image {
        top: unset;
        bottom: 20px;
        right: 5px;
        transform: unset;
        width: 150px;
    }
    .banner-image-product-2.type-sp-2 .item-banner {
        padding: 30px 15px;
    }
    .banner-image-product-2.type-sp-2 .item-image {
        top: 10px;
        bottom: unset;
        right: 5px;
        transform: unset;
    }
    .flat-title-tab-product-des .card-usually {
        max-width: unset;
    }
    .tab-usually {
        justify-content: center;
    }
}
@media (max-width: 425px) {
    .banner-image-product-4 .img-item {
        max-width: 200px;
    }
    .card-product.style-row.row-small-2 {
        flex-direction: column;
    }
    .card-product.style-row.row-small-2 .card-product-wrapper {
        max-width: unset;
    }
}
@keyframes infiniteslider {
    0% {
        transform: translate3d(0, 0, 0);
    }
    100% {
        transform: translate3d(-1272px, 0, 0);
    }
}
.infiniteslide_wrap:hover .infiniteslide {
    animation-play-state: paused !important;
}
.zoom-magnifier-containing .drift-zoom-pane {
    border-radius: 50%;
    width: 150px !important;
    height: 150px !important;
    overflow: hidden;
}
.tfSubscribeMsg {
    display: none;
    max-height: 0px;
    overflow: hidden;
}
.tfSubscribeMsg.active {
    margin-top: 10px;
    margin-bottom: 10px;
    max-height: 180px;
    display: block;
}
@media only screen and (max-width: 767px) {
    .footer-col-block .tf-collapse-content {
        overflow-y: hidden;
        display: block;
        height: 0;
        transition: 0.5s;
    }
}
@media (max-width: 1199px) {
    .tf-grid-product.sliders {
        row-gap: 60px;
    }
}
@media (max-width: 700px) {
    .tf-grid-product.sliders {
        row-gap: 40px;
    }
}
@media (max-width: 767px) {
    .sm-pt--30 {
        padding-top: 30px;
    }
}