.counter-box {
	display: block;
	background: #ffffff;
	padding: 20px 20px 20px;
	text-align: center;
	transition: .3s transform cubic-bezier(.155, 1.105, .295, 1.12), .3s box-shadow, .3s -webkit-transform cubic-bezier(.155, 1.105, .295, 1.12);
	cursor: pointer;
}

.counter-box:hover {
	transform: scale(1.05);
	box-shadow: 0 10px 20px rgba(0, 0, 0, .12), 0 4px 8px rgba(0, 0, 0, .06);
}

.counter-box p {
	margin: 5px 0 0;
	padding: 0;
	color: #909090;
	font-size: 18px;
	font-weight: 500;
}

.counter-box i {
	font-size: 45px;
	margin: 0 0 15px;
	color: #d2d2d2
}

.counter {
	display: block;
	font-size: 32px;
	font-weight: 700;
	color: #666;
	line-height: 28px
}

.counter-box.colored {
	background: #3acf87;
}

.counter-box.colored p,
.counter-box.colored i,
.counter-box.colored .counter {
	color: #fff
}

.modal {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1060;
	display: none;
	width: 100%;
	height: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	outline: 0
}

.modal-dialog {
	position: relative;
	width: auto;
	margin: .5rem;
	pointer-events: none
}

.modal.fade .modal-dialog {
	transition: transform .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% - 1rem)
}

.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% - 1rem)
}

.modal-content {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	pointer-events: auto;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid rgba(0, 0, 0, .2);
	border-radius: .3rem;
	outline: 0
}

.modal-backdrop {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1040;
	width: 100vw;
	height: 100vh;
	background-color: #000
}

.modal-backdrop.fade {
	opacity: 0
}

.modal-backdrop.show {
	opacity: .5
}

.modal-header {
	display: flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: space-between;
	padding: 1rem 1rem;
	border-bottom: 1px solid #dee2e6;
	border-top-left-radius: calc(.3rem - 1px);
	border-top-right-radius: calc(.3rem - 1px)
}

.modal-header .btn-close {
	padding: .5rem .5rem;
	margin: -.5rem -.5rem -.5rem auto
}

.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: .25em .25em;
	color: var(--bs-btn-close-color);
	background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;
	border: 0;
	border-radius: .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)
}

.modal-title {
	margin-bottom: 0;
	line-height: 1.5
}

.modal-body {
	position: relative;
	flex: 1 1 auto;
	padding: 1rem
}

.modal-footer {
	display: flex;
	flex-wrap: wrap;
	flex-shrink: 0;
	align-items: center;
	justify-content: flex-end;
	padding: .75rem;
	border-top: 1px solid #dee2e6;
	border-bottom-right-radius: calc(.3rem - 1px);
	border-bottom-left-radius: calc(.3rem - 1px)
}

.modal-footer>* {
	margin: .25rem
}

@media (min-width:576px) {
	.modal-dialog {
		max-width: 500px;
		margin: 1.75rem auto
	}

	.modal-dialog-scrollable {
		height: calc(100% - 3.5rem)
	}

	.modal-dialog-centered {
		min-height: calc(100% - 3.5rem)
	}

	.modal-sm {
		max-width: 300px
	}
}

@media (min-width:992px) {

	.modal-lg,
	.modal-xl {
		max-width: 800px
	}
}

@media (min-width:1200px) {
	.modal-xl {
		max-width: 1140px
	}
}

.modal-fullscreen {
	width: 100vw;
	max-width: none;
	height: 100%;
	margin: 0
}

.modal-fullscreen .modal-content {
	height: 100%;
	border: 0;
	border-radius: 0
}

.modal-fullscreen .modal-header {
	border-radius: 0
}

.modal-fullscreen .modal-body {
	overflow-y: auto
}

.modal-fullscreen .modal-footer {
	border-radius: 0
}

@media (max-width:575.98px) {
	.modal-fullscreen-sm-down {
		width: 100vw;
		max-width: none;
		height: 100%;
		margin: 0
	}

	.modal-fullscreen-sm-down .modal-content {
		height: 100%;
		border: 0;
		border-radius: 0
	}

	.modal-fullscreen-sm-down .modal-header {
		border-radius: 0
	}

	.modal-fullscreen-sm-down .modal-body {
		overflow-y: auto
	}

	.modal-fullscreen-sm-down .modal-footer {
		border-radius: 0
	}
}

@media (max-width:767.98px) {
	.modal-fullscreen-md-down {
		width: 100vw;
		max-width: none;
		height: 100%;
		margin: 0
	}

	.modal-fullscreen-md-down .modal-content {
		height: 100%;
		border: 0;
		border-radius: 0
	}

	.modal-fullscreen-md-down .modal-header {
		border-radius: 0
	}

	.modal-fullscreen-md-down .modal-body {
		overflow-y: auto
	}

	.modal-fullscreen-md-down .modal-footer {
		border-radius: 0
	}
}

@media (max-width:991.98px) {
	.modal-fullscreen-lg-down {
		width: 100vw;
		max-width: none;
		height: 100%;
		margin: 0
	}

	.modal-fullscreen-lg-down .modal-content {
		height: 100%;
		border: 0;
		border-radius: 0
	}

	.modal-fullscreen-lg-down .modal-header {
		border-radius: 0
	}

	.modal-fullscreen-lg-down .modal-body {
		overflow-y: auto
	}

	.modal-fullscreen-lg-down .modal-footer {
		border-radius: 0
	}
}

@media (max-width:1199.98px) {
	.modal-fullscreen-xl-down {
		width: 100vw;
		max-width: none;
		height: 100%;
		margin: 0
	}

	.modal-fullscreen-xl-down .modal-content {
		height: 100%;
		border: 0;
		border-radius: 0
	}

	.modal-fullscreen-xl-down .modal-header {
		border-radius: 0
	}

	.modal-fullscreen-xl-down .modal-body {
		overflow-y: auto
	}

	.modal-fullscreen-xl-down .modal-footer {
		border-radius: 0
	}
}

@media (max-width:1399.98px) {
	.modal-fullscreen-xxl-down {
		width: 100vw;
		max-width: none;
		height: 100%;
		margin: 0
	}

	.modal-fullscreen-xxl-down .modal-content {
		height: 100%;
		border: 0;
		border-radius: 0
	}

	.modal-fullscreen-xxl-down .modal-header {
		border-radius: 0
	}

	.modal-fullscreen-xxl-down .modal-body {
		overflow-y: auto
	}

	.modal-fullscreen-xxl-down .modal-footer {
		border-radius: 0
	}
}

.offcanvas {
	background-color: initial !important;
	border: 0 !important;
	flex-grow: 1;
	height: auto !important;
	position: static;
	transform: none !important;
	transition: none;
	visibility: visible !important;
	width: auto !important;
	z-index: auto
}

.navbar-expand-sm .offcanvas .offcanvas-header {
	display: none
}

.navbar-expand-sm .offcanvas .offcanvas-body {
	display: flex;
	flex-grow: 0;
	overflow-y: visible;
	padding: 0
}

@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-left: var(--bs-navbar-nav-link-padding-x);
		padding-right: 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 {
		background-color: initial !important;
		border: 0 !important;
		flex-grow: 1;
		height: auto !important;
		position: static;
		transform: none !important;
		transition: none;
		visibility: visible !important;
		width: auto !important;
		z-index: auto
	}

	.navbar-expand-md .offcanvas .offcanvas-header {
		display: none
	}

	.navbar-expand-md .offcanvas .offcanvas-body {
		display: flex;
		flex-grow: 0;
		overflow-y: visible;
		padding: 0
	}
}

@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-left: var(--bs-navbar-nav-link-padding-x);
		padding-right: 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 {
		background-color: initial !important;
		border: 0 !important;
		flex-grow: 1;
		height: auto !important;
		position: static;
		transform: none !important;
		transition: none;
		visibility: visible !important;
		width: auto !important;
		z-index: auto
	}

	.navbar-expand-lg .offcanvas .offcanvas-header {
		display: none
	}

	.navbar-expand-lg .offcanvas .offcanvas-body {
		display: flex;
		flex-grow: 0;
		overflow-y: visible;
		padding: 0
	}
}

@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-left: var(--bs-navbar-nav-link-padding-x);
		padding-right: 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 {
		background-color: initial !important;
		border: 0 !important;
		flex-grow: 1;
		height: auto !important;
		position: static;
		transform: none !important;
		transition: none;
		visibility: visible !important;
		width: auto !important;
		z-index: auto
	}

	.navbar-expand-xl .offcanvas .offcanvas-header {
		display: none
	}

	.navbar-expand-xl .offcanvas .offcanvas-body {
		display: flex;
		flex-grow: 0;
		overflow-y: visible;
		padding: 0
	}
}

@media (min-width:1400px) {
	.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-left: var(--bs-navbar-nav-link-padding-x);
		padding-right: 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 {
		background-color: initial !important;
		border: 0 !important;
		flex-grow: 1;
		height: auto !important;
		position: static;
		transform: none !important;
		transition: none;
		visibility: visible !important;
		width: auto !important;
		z-index: auto
	}

	.navbar-expand-xxl .offcanvas .offcanvas-header {
		display: none
	}

	.navbar-expand-xxl .offcanvas .offcanvas-body {
		display: flex;
		flex-grow: 0;
		overflow-y: visible;
		padding: 0
	}
}

.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-left: var(--bs-navbar-nav-link-padding-x);
	padding-right: 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 {
	background-color: initial !important;
	border: 0 !important;
	flex-grow: 1;
	height: auto !important;
	position: static;
	transform: none !important;
	transition: none;
	visibility: visible !important;
	width: auto !important;
	z-index: auto
}

.navbar-expand .offcanvas .offcanvas-header {
	display: none
}

.navbar-expand .offcanvas .offcanvas-body {
	display: flex;
	flex-grow: 0;
	overflow-y: visible;
	padding: 0
}

.navbar-dark,
.navbar[data-bs-theme=dark] {
	--bs-navbar-color: #ffffff8c;
	--bs-navbar-hover-color: #ffffffbf;
	--bs-navbar-disabled-color: #ffffff40;
	--bs-navbar-active-color: #fff;
	--bs-navbar-brand-color: #fff;
	--bs-navbar-brand-hover-color: #fff;
	--bs-navbar-toggler-border-color: #ffffff1a
}

.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: 0 0.125rem 0.25rem rgba(0, 0, 0, .075);
	--bs-offcanvas-transition: transform 0.3s ease-in-out;
	--bs-offcanvas-title-line-height: 1.5
}

@media (max-width:575.98px) {
	.offcanvas-sm {
		background-clip: padding-box;
		background-color: var(--bs-offcanvas-bg);
		bottom: 0;
		color: var(--bs-offcanvas-color);
		display: flex;
		flex-direction: column;
		max-width: 100%;
		outline: 0;
		position: fixed;
		transition: var(--bs-offcanvas-transition);
		visibility: hidden;
		z-index: var(--bs-offcanvas-zindex)
	}
}

@media (max-width:575.98px) and (prefers-reduced-motion:reduce) {
	.offcanvas-sm {
		transition: none
	}
}

@media (max-width:575.98px) {
	.offcanvas-sm.offcanvas-start {
		border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		left: 0;
		top: 0;
		transform: translateX(-100%);
		width: var(--bs-offcanvas-width)
	}

	.offcanvas-sm.offcanvas-end {
		border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		right: 0;
		top: 0;
		transform: translateX(100%);
		width: var(--bs-offcanvas-width)
	}

	.offcanvas-sm.offcanvas-top {
		border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		top: 0;
		transform: translateY(-100%)
	}

	.offcanvas-sm.offcanvas-bottom,
	.offcanvas-sm.offcanvas-top {
		height: var(--bs-offcanvas-height);
		left: 0;
		max-height: 100%;
		right: 0
	}

	.offcanvas-sm.offcanvas-bottom {
		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: initial !important
	}

	.offcanvas-sm .offcanvas-header {
		display: none
	}

	.offcanvas-sm .offcanvas-body {
		background-color: initial !important;
		display: flex;
		flex-grow: 0;
		overflow-y: visible;
		padding: 0
	}
}

@media (max-width:767.98px) {
	.offcanvas-md {
		background-clip: padding-box;
		background-color: var(--bs-offcanvas-bg);
		bottom: 0;
		color: var(--bs-offcanvas-color);
		display: flex;
		flex-direction: column;
		max-width: 100%;
		outline: 0;
		position: fixed;
		transition: var(--bs-offcanvas-transition);
		visibility: hidden;
		z-index: var(--bs-offcanvas-zindex)
	}
}

@media (max-width:767.98px) and (prefers-reduced-motion:reduce) {
	.offcanvas-md {
		transition: none
	}
}

@media (max-width:767.98px) {
	.offcanvas-md.offcanvas-start {
		border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		left: 0;
		top: 0;
		transform: translateX(-100%);
		width: var(--bs-offcanvas-width)
	}

	.offcanvas-md.offcanvas-end {
		border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		right: 0;
		top: 0;
		transform: translateX(100%);
		width: var(--bs-offcanvas-width)
	}

	.offcanvas-md.offcanvas-top {
		border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		top: 0;
		transform: translateY(-100%)
	}

	.offcanvas-md.offcanvas-bottom,
	.offcanvas-md.offcanvas-top {
		height: var(--bs-offcanvas-height);
		left: 0;
		max-height: 100%;
		right: 0
	}

	.offcanvas-md.offcanvas-bottom {
		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: initial !important
	}

	.offcanvas-md .offcanvas-header {
		display: none
	}

	.offcanvas-md .offcanvas-body {
		background-color: initial !important;
		display: flex;
		flex-grow: 0;
		overflow-y: visible;
		padding: 0
	}
}

@media (max-width:991.98px) {
	.offcanvas-lg {
		background-clip: padding-box;
		background-color: var(--bs-offcanvas-bg);
		bottom: 0;
		color: var(--bs-offcanvas-color);
		display: flex;
		flex-direction: column;
		max-width: 100%;
		outline: 0;
		position: fixed;
		transition: var(--bs-offcanvas-transition);
		visibility: hidden;
		z-index: var(--bs-offcanvas-zindex)
	}
}

@media (max-width:991.98px) and (prefers-reduced-motion:reduce) {
	.offcanvas-lg {
		transition: none
	}
}

@media (max-width:991.98px) {
	.offcanvas-lg.offcanvas-start {
		border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		left: 0;
		top: 0;
		transform: translateX(-100%);
		width: var(--bs-offcanvas-width)
	}

	.offcanvas-lg.offcanvas-end {
		border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		right: 0;
		top: 0;
		transform: translateX(100%);
		width: var(--bs-offcanvas-width)
	}

	.offcanvas-lg.offcanvas-top {
		border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		top: 0;
		transform: translateY(-100%)
	}

	.offcanvas-lg.offcanvas-bottom,
	.offcanvas-lg.offcanvas-top {
		height: var(--bs-offcanvas-height);
		left: 0;
		max-height: 100%;
		right: 0
	}

	.offcanvas-lg.offcanvas-bottom {
		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: initial !important
	}

	.offcanvas-lg .offcanvas-header {
		display: none
	}

	.offcanvas-lg .offcanvas-body {
		background-color: initial !important;
		display: flex;
		flex-grow: 0;
		overflow-y: visible;
		padding: 0
	}
}

@media (max-width:1199.98px) {
	.offcanvas-xl {
		background-clip: padding-box;
		background-color: var(--bs-offcanvas-bg);
		bottom: 0;
		color: var(--bs-offcanvas-color);
		display: flex;
		flex-direction: column;
		max-width: 100%;
		outline: 0;
		position: fixed;
		transition: var(--bs-offcanvas-transition);
		visibility: hidden;
		z-index: var(--bs-offcanvas-zindex)
	}
}

@media (max-width:1199.98px) and (prefers-reduced-motion:reduce) {
	.offcanvas-xl {
		transition: none
	}
}

@media (max-width:1199.98px) {
	.offcanvas-xl.offcanvas-start {
		border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		left: 0;
		top: 0;
		transform: translateX(-100%);
		width: var(--bs-offcanvas-width)
	}

	.offcanvas-xl.offcanvas-end {
		border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		right: 0;
		top: 0;
		transform: translateX(100%);
		width: var(--bs-offcanvas-width)
	}

	.offcanvas-xl.offcanvas-top {
		border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		top: 0;
		transform: translateY(-100%)
	}

	.offcanvas-xl.offcanvas-bottom,
	.offcanvas-xl.offcanvas-top {
		height: var(--bs-offcanvas-height);
		left: 0;
		max-height: 100%;
		right: 0
	}

	.offcanvas-xl.offcanvas-bottom {
		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: initial !important
	}

	.offcanvas-xl .offcanvas-header {
		display: none
	}

	.offcanvas-xl .offcanvas-body {
		background-color: initial !important;
		display: flex;
		flex-grow: 0;
		overflow-y: visible;
		padding: 0
	}
}

@media (max-width:1399.98px) {
	.offcanvas-xxl {
		background-clip: padding-box;
		background-color: var(--bs-offcanvas-bg);
		bottom: 0;
		color: var(--bs-offcanvas-color);
		display: flex;
		flex-direction: column;
		max-width: 100%;
		outline: 0;
		position: fixed;
		transition: var(--bs-offcanvas-transition);
		visibility: hidden;
		z-index: var(--bs-offcanvas-zindex)
	}
}

@media (max-width:1399.98px) and (prefers-reduced-motion:reduce) {
	.offcanvas-xxl {
		transition: none
	}
}

@media (max-width:1399.98px) {
	.offcanvas-xxl.offcanvas-start {
		border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		left: 0;
		top: 0;
		transform: translateX(-100%);
		width: var(--bs-offcanvas-width)
	}

	.offcanvas-xxl.offcanvas-end {
		border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		right: 0;
		top: 0;
		transform: translateX(100%);
		width: var(--bs-offcanvas-width)
	}

	.offcanvas-xxl.offcanvas-top {
		border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
		top: 0;
		transform: translateY(-100%)
	}

	.offcanvas-xxl.offcanvas-bottom,
	.offcanvas-xxl.offcanvas-top {
		height: var(--bs-offcanvas-height);
		left: 0;
		max-height: 100%;
		right: 0
	}

	.offcanvas-xxl.offcanvas-bottom {
		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: initial !important
	}

	.offcanvas-xxl .offcanvas-header {
		display: none
	}

	.offcanvas-xxl .offcanvas-body {
		background-color: initial !important;
		display: flex;
		flex-grow: 0;
		overflow-y: visible;
		padding: 0
	}
}

.offcanvas {
	background-clip: padding-box;
	background-color: var(--bs-offcanvas-bg);
	bottom: 0;
	color: var(--bs-offcanvas-color);
	display: flex;
	flex-direction: column;
	max-width: 100%;
	outline: 0;
	position: fixed;
	transition: var(--bs-offcanvas-transition);
	visibility: hidden;
	z-index: var(--bs-offcanvas-zindex)
}

@media (prefers-reduced-motion:reduce) {
	.offcanvas {
		transition: none
	}
}

.offcanvas.offcanvas-start {
	border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
	left: 0;
	top: 0;
	transform: translateX(-100%);
	width: var(--bs-offcanvas-width)
}

.offcanvas.offcanvas-end {
	border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
	right: 0;
	top: 0;
	transform: translateX(100%);
	width: var(--bs-offcanvas-width)
}

.offcanvas.offcanvas-top {
	border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
	top: 0;
	transform: translateY(-100%)
}

.offcanvas.offcanvas-bottom,
.offcanvas.offcanvas-top {
	height: var(--bs-offcanvas-height);
	left: 0;
	max-height: 100%;
	right: 0
}

.offcanvas.offcanvas-bottom {
	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 {
	background-color: #000;
	height: 100vh;
	left: 0;
	position: fixed;
	top: 0;
	width: 100vw;
	z-index: 1040
}

.offcanvas-backdrop.fade {
	opacity: 0
}

.offcanvas-backdrop.show {
	opacity: .5
}

.offcanvas-header {
	align-items: center;
	display: flex;
	justify-content: space-between;
	padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)
}

.offcanvas-header .btn-close {
	margin-bottom: calc(var(--bs-offcanvas-padding-y)*-.5);
	margin-right: calc(var(--bs-offcanvas-padding-x)*-.5);
	margin-top: calc(var(--bs-offcanvas-padding-y)*-.5);
	padding: calc(var(--bs-offcanvas-padding-y)*.5) calc(var(--bs-offcanvas-padding-x)*.5)
}

.offcanvas-title {
	line-height: var(--bs-offcanvas-title-line-height);
	margin-bottom: 0
}

.offcanvas-body {
	flex-grow: 1;
	overflow-y: auto;
	padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)
}

.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: #fff;
	--bs-pagination-border-width: 1px;
	--bs-pagination-border-color: #dee2e6;
	--bs-pagination-border-radius: 0.375rem;
	--bs-pagination-hover-color: var(--bs-link-hover-color);
	--bs-pagination-hover-bg: #e9ecef;
	--bs-pagination-hover-border-color: #dee2e6;
	--bs-pagination-focus-color: var(--bs-link-hover-color);
	--bs-pagination-focus-bg: #e9ecef;
	--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: #3b7ddd;
	--bs-pagination-active-border-color: #3b7ddd;
	--bs-pagination-disabled-color: #6c757d;
	--bs-pagination-disabled-bg: #fff;
	--bs-pagination-disabled-border-color: #dee2e6;
	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 .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .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: -1px
}

.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: 0.5rem
}

.pagination-sm {
	--bs-pagination-padding-x: 0.5rem;
	--bs-pagination-padding-y: 0.25rem;
	--bs-pagination-font-size: 0.875rem;
	--bs-pagination-border-radius: 0.25rem
}

.basic .tree-node,
.basic .tree-node-group,
.checkbox .tree,
.checkbox .tree-node,
.checkbox .tree-node-group,
.directory .tree,
.directory .tree-node,
.directory .tree-node-group,
.filtered .tree,
.filtered .tree-node,
.filtered .tree-node-group,
.ide .tree,
.ide .tree-node,
.ide .tree-node-group {
	list-style: none;
	margin: 0;
	padding: 0;
}

.basic .tree-branch-wrapper,
.basic .tree-node__leaf,
.checkbox .tree-branch-wrapper,
.checkbox .tree-node__leaf,
.directory .tree-branch-wrapper,
.directory .tree-node__leaf,
.filtered .tree-branch-wrapper,
.ide .tree-branch-wrapper,
.ide .tree-node__leaf,
[data-reach-tab-panel],
body:not(.navigation-with-keyboard) :not(input):focus {
	outline: 0;
}

.checkbox .tree-node {
	cursor: pointer;
	display: inline-block;
}

.checkbox .arrow,
.filtered .arrow {
	margin-left: 5px;
}

.checkbox .checkbox-icon,
.filtered .checkbox-icon {
	margin: 0 5px;
	vertical-align: middle;
}

.arrow--open {
	transform: rotate(90deg);
}

@keyframes spinner {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

.loading-icon {
	animation: spinner 1.5s linear infinite;
	margin-left: 5px;
	margin-right: 5px;
}

.visually-hidden {
	position: absolute;
	clip-path: circle(0);
	border: 0;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	width: 1px;
	white-space: nowrap;
}

.table-header-fixed thead th {
	position: sticky;
	top: 0;
	z-index: 1;
	background-color: white;
	/* Optional, to give the header a background */
}