/* #################### HELPERS #################### */

.d-none { display: none !important; }
.d-inline { display: inline !important; }
.d-inline-block { display: inline-block !important; }
.d-block { display: block !important; }
.d-table { display: table !important; }
.d-table-cell { display: table-cell !important; }
.d-table-row { display: table-row !important; }
.d-flex { display: flex !important; }
.d-inline-flex { display: inline-flex !important; }
.d-contents { display: contents !important; }

.w-auto { width: auto !important; }
.w-fit { width: fit-content !important; }
.w-0 { width: 0 !important; }
.w-10 { width: 10% !important; }
.w-25 { width: 25% !important; }
.w-33 { width: 33.3333333333% !important; }
.w-50 { width: 50% !important; }
.w-66 { width: 66.6666666667% !important; }
.w-75 { width: 75% !important; }
.w-100 { width: 100% !important; }

.mw-none { max-width: none !important; }
.mw-0 { max-width: 0 !important; }
.mw-10 { max-width: 10% !important; }
.mw-25 { max-width: 25% !important; }
.mw-33 { max-width: 33.3333333333% !important; }
.mw-50 { max-width: 50% !important; }
.mw-66 { max-width: 66.6666666667% !important; }
.mw-75 { max-width: 75% !important; }
.mw-100 { max-width: 100% !important; }

.h-auto {	height: auto !important; }
.h-0 {	height: 0 !important; }
.h-10 {	height: 10% !important; }
.h-25 {	height: 25% !important; }
.h-33 {	height: 33.3333333333% !important; }
.h-50 {	height: 50% !important; }
.h-66 {	height: 66.6666666667% !important; }
.h-75 {	height: 75% !important; }
.h-100 {	height: 100% !important; }

.fa-start {
	display: flex;
	align-items: flex-start;
}
.fa-end {
	display: flex;
	align-items: flex-end;
}
.fa-center {
	display: flex;
	align-items: center;
}
.fa-stretch {
	display: flex;
	align-items: stretch;
}
.fa-baseline {
	display: flex;
	align-items: baseline;
}

.container-relative {
	position: relative;
}
.container-flex {
	display: flex;
	align-items: center;
}
.container-flex.__space {
	justify-content: space-between;
}
.container-flex.__start {
 justify-content: flex-start;
}
.container-flex.__center {
	justify-content: center;
}
.container-flex.__end {
	justify-content: flex-end;
}
.container-flex.__col {
	flex-direction: column;
}
.container-flex.__wrap {
	flex-wrap: wrap;
}

.fb-auto { flex-basis: auto; }
.fb-10 { flex-basis: 10%; }
.fb-25 { flex-basis: 25%; }
.fb-33 { flex-basis: 33.3333333333%; }
.fb-50 { flex-basis: 50%; }
.fb-66 { flex-basis: 66.6666666667%; }
.fb-75 { flex-basis: 75%; }
.fb-100 { flex-basis: 100%; }

.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-wrap {	flex-wrap: wrap !important; }
.flex-nowrap {	flex-wrap: nowrap !important; }
.flex-wrap-reverse {	flex-wrap: wrap-reverse !important; }

.flex-fill {	flex: 1 1 0 !important; }
.flex-auto {	flex: 0 0 auto !important; }
.flex-fill-auto {	flex: 1 1 auto !important; }
.flex-fill-100 {	flex: 1 1 100% !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; }

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

.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-0 { order: 0; }
.order-1 { order: 1; }
.order-2 { order: 2; }
.order-3 { order: 3; }
.order-4 { order: 4; }
.order-5 { order: 5; }
.order-6 { order: 6; }
.order-7 { order: 7; }
.order-8 { order: 8; }
.order-9 { order: 9; }
.order-10 { order: 10; }
.order-11 { order: 11; }
.order-12 { order: 12; }
.order-first { order: -1; }
.order-last { order: 13; }

.m-n { margin: 0 !important; }
.mt-n { margin-top: 0 !important; }
.mr-n { margin-right: 0 !important; }
.mb-n { margin-bottom: 0 !important; }
.ml-n { margin-left: 0 !important; }
.mx-n {
	margin-right: 0 !important;
	margin-left: 0 !important;
}
.my-n {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.p-n { padding: 0 !important; }
.pt-n { padding-top: 0 !important; }
.pr-n { padding-right: 0 !important; }
.pb-n { padding-bottom: 0 !important; }
.pl-n { padding-left: 0 !important; }
.px-n {
	padding-right: 0 !important;
	padding-left: 0 !important;
}
.py-n {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.m-t { margin: 4px !important; }
.mt-t {	margin-top: 4px !important; }
.mr-t {	margin-right: 4px !important; }
.mb-t {	margin-bottom: 4px !important; }
.ml-t {	margin-left: 4px !important; }
.mx-t {
	margin-right: 4px !important;
	margin-left: 4px !important;
}
.my-t {
	margin-top: 4px !important;
	margin-bottom: 4px !important;
}

.p-t { padding: 4px !important; }
.pt-t { padding-top: 4px !important; }
.pr-t { padding-right: 4px !important; }
.pb-t { padding-bottom: 4px !important; }
.pl-t { padding-left: 4px !important; }
.px-t {
	padding-right: 4px !important;
	padding-left: 4px !important;
}
.py-t {
	padding-top: 4px !important;
	padding-bottom: 4px !important;
}

.m-s { margin: 8px !important; }
.mt-s { margin-top: 8px !important; }
.mr-s { margin-right: 8px !important; }
.mb-s { margin-bottom: 8px !important; }
.ml-s { margin-left: 8px !important; }
.mx-s {
	margin-right: 8px !important;
	margin-left: 8px !important;
}
.my-s {
	margin-top: 8px !important;
	margin-bottom: 8px !important;
}

.p-s {	padding: 8px !important; }
.pt-s {	padding-top: 8px !important; }
.pr-s {	padding-right: 8px !important; }
.pb-s {	padding-bottom: 8px !important; }
.pl-s {	padding-left: 8px !important; }
.px-s {
	padding-right: 8px !important;
	padding-left: 8px !important;
}
.py-s {
	padding-top: 8px !important;
	padding-bottom: 8px !important;
}

.m-r { margin: 16px !important; }
.mt-r { margin-top: 16px !important; }
.mr-r { margin-right: 16px !important; }
.mb-r { margin-bottom: 16px !important; }
.ml-r { margin-left: 16px !important; }
.mx-r {
	margin-right: 16px !important;
	margin-left: 16px !important;
}
.my-r {
	margin-top: 16px !important;
	margin-bottom: 16px !important;
}

.p-r { padding: 16px !important; }
.pt-r { padding-top: 16px !important; }
.pr-r { padding-right: 16px !important; }
.pb-r { padding-bottom: 16px !important; }
.pl-r { padding-left: 16px !important; }
.px-r {
	padding-right: 16px !important;
	padding-left: 16px !important;
}
.py-r {
	padding-top: 16px !important;
	padding-bottom: 16px !important;
}

.m-l {margin: 32px !important; }
.mt-l {margin-top: 32px !important; }
.mr-l {margin-right: 32px !important; }
.mb-l {margin-bottom: 32px !important; }
.ml-l {margin-left: 32px !important; }
.mx-l {
	margin-right: 32px !important;
	margin-left: 32px !important;
}
.my-l {
	margin-top: 32px !important;
	margin-bottom: 32px !important;
}

.p-l { padding: 32px !important; }
.pt-l { padding-top: 32px !important; }
.pr-l { padding-right: 32px !important; }
.pb-l { padding-bottom: 32px !important; }
.pl-l { padding-left: 32px !important; }
.px-l {
	padding-right: 32px !important;
	padding-left: 32px !important;
}
.py-l {
	padding-top: 32px !important;
	padding-bottom: 32px !important;
}

.m-a { margin: auto !important; }
.mt-a { margin-top: auto !important; }
.mr-a { margin-right: auto !important; }
.mb-a { margin-bottom: auto !important; }
.ml-a { margin-left: auto !important; }
.mx-a {
	margin-right: auto !important;
	margin-left: auto !important
}
.my-a {
	margin-top: auto !important;
	margin-bottom: auto !important;
}

@media (min-width: 320px) {
	.d-sm-none { display: none !important; }
	.d-sm-inline { display: inline !important; }
	.d-sm-inline-block { display: inline-block !important; }
	.d-sm-block { display: block !important; }
	.d-sm-table { display: table !important; }
	.d-sm-table-cell { display: table-cell !important; }
	.d-sm-table-row { display: table-row !important; }
	.d-sm-flex { display: flex !important; }
	.d-sm-inline-flex { display: inline-flex !important; }
	.d-sm-contents { display: contents !important; }

	.w-sm-auto { width: auto !important; }
	.w-sm-fit { width: fit-content !important; }
	.w-sm-0 { width: 0 !important; }
	.w-sm-10 { width: 10% !important; }
	.w-sm-25 { width: 25% !important; }
	.w-sm-33 { width: 33.3333333333% !important; }
	.w-sm-50 { width: 50% !important; }
	.w-sm-66 { width: 66.6666666667% !important; }
	.w-sm-75 { width: 75% !important; }
	.w-sm-100 { width: 100% !important; }

	.mw-sm-none { max-width: none !important; }
	.mw-sm-0 { max-width: 0 !important; }
	.mw-sm-10 { max-width: 10% !important; }
	.mw-sm-25 { max-width: 25% !important; }
	.mw-sm-33 { max-width: 33.3333333333% !important; }
	.mw-sm-50 { max-width: 50% !important; }
	.mw-sm-66 { max-width: 66.6666666667% !important; }
	.mw-sm-75 { max-width: 75% !important; }
	.mw-sm-100 { max-width: 100% !important; }

	.h-sm-auto { height: auto !important; }
	.h-sm-0 { height: 0 !important; }
	.h-sm-10 { height: 10% !important; }
	.h-sm-25 { height: 25% !important; }
	.h-sm-33 { height: 33.3333333333% !important; }
	.h-sm-50 { height: 50% !important; }
	.h-sm-66 { height: 66.6666666667% !important; }
	.h-sm-75 { height: 75% !important; }
	.h-sm-100 { height: 100% !important; }

	.fa-sm-start {
		display: flex;
		align-items: flex-start;
	}
	.fa-sm-end {
		display: flex;
		align-items: flex-end;
	}
	.fa-sm-center {
		display: flex;
		align-items: center;
	}
	.fa-sm-stretch {
		display: flex;
		align-items: stretch;
	}
	.fa-sm-baseline {
		display: flex;
		align-items: baseline;
	}

	.container-sm-relative {
		position: relative;
	}
	.container-sm-flex {
		display: flex;
		align-items: center;
	}
	.container-sm-flex.__space {
		justify-content: space-between;
	}
	.container-sm-flex.__start {
	 justify-content: flex-start;
	}
	.container-sm-flex.__center {
		justify-content: center;
	}
	.container-sm-flex.__end {
		justify-content: flex-end;
	}
	.container-sm-flex.__col {
		flex-direction: column;
	}
	.container-sm-flex.__wrap {
		flex-wrap: wrap;
	}

	.fb-sm-auto { flex-basis: auto; }
	.fb-sm-10 { flex-basis: 10%; }
	.fb-sm-25 { flex-basis: 25%; }
	.fb-sm-33 { flex-basis: 33.3333333333%; }
	.fb-sm-50 { flex-basis: 50%; }
	.fb-sm-66 { flex-basis: 66.6666666667%; }
	.fb-sm-75 { flex-basis: 75%; }
	.fb-sm-100 { flex-basis: 100%; }

	.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-wrap { flex-wrap: wrap !important; }
	.flex-sm-nowrap { flex-wrap: nowrap !important; }
	.flex-sm-wrap-reverse { flex-wrap: wrap-reverse !important; }

	.flex-sm-fill { flex: 1 1 0 !important; }
	.flex-sm-auto { flex: 0 0 auto !important; }
	.flex-sm-fill-auto { flex: 1 1 auto !important; }
	.flex-sm-fill-100 { flex: 1 1 100% !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; }

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

	.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-0 { order: 0; }
	.order-sm-1 { order: 1; }
	.order-sm-2 { order: 2; }
	.order-sm-3 { order: 3; }
	.order-sm-4 { order: 4; }
	.order-sm-5 { order: 5; }
	.order-sm-6 { order: 6; }
	.order-sm-7 { order: 7; }
	.order-sm-8 { order: 8; }
	.order-sm-9 { order: 9; }
	.order-sm-10 { order: 10; }
	.order-sm-11 { order: 11; }
	.order-sm-12 { order: 12; }
	.order-sm-first { order: -1; }
	.order-sm-last { order: 13; }

	.m-sm-n { margin: 0 !important; }
	.mt-sm-n { margin-top: 0 !important; }
	.mr-sm-n { margin-right: 0 !important; }
	.mb-sm-n { margin-bottom: 0 !important; }
	.ml-sm-n { margin-left: 0 !important; }
	.mx-sm-n {
		margin-right: 0 !important;
		margin-left: 0 !important;
	}
	.my-sm-n {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}

	.p-sm-n { padding: 0 !important; }
	.pt-sm-n { padding-top: 0 !important; }
	.pr-sm-n { padding-right: 0 !important; }
	.pb-sm-n { padding-bottom: 0 !important; }
	.pl-sm-n { padding-left: 0 !important; }
	.px-sm-n {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}
	.py-sm-n {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}

	.m-sm-t { margin: 4px !important; }
	.mt-sm-t { margin-top: 4px !important; }
	.mr-sm-t { margin-right: 4px !important; }
	.mb-sm-t { margin-bottom: 4px !important; }
	.ml-sm-t { margin-left: 4px !important; }
	.mx-sm-t {
		margin-right: 4px !important;
		margin-left: 4px !important;
	}
	.my-sm-t {
		margin-top: 4px !important;
		margin-bottom: 4px !important;
	}

	.p-sm-t { padding: 4px !important; }
	.pt-sm-t { padding-top: 4px !important; }
	.pr-sm-t { padding-right: 4px !important; }
	.pb-sm-t { padding-bottom: 4px !important; }
	.pl-sm-t { padding-left: 4px !important; }
	.px-sm-t {
		padding-right: 4px !important;
		padding-left: 4px !important;
	}
	.py-sm-t {
		padding-top: 4px !important;
		padding-bottom: 4px !important;
	}

	.m-sm-s { margin: 8px !important; }
	.mt-sm-s { margin-top: 8px !important; }
	.mr-sm-s { margin-right: 8px !important; }
	.mb-sm-s { margin-bottom: 8px !important; }
	.ml-sm-s { margin-left: 8px !important; }
	.mx-sm-s {
		margin-right: 8px !important;
		margin-left: 8px !important;
	}
	.my-sm-s {
		margin-top: 8px !important;
		margin-bottom: 8px !important;
	}

	.p-sm-s { padding: 8px !important; }
	.pt-sm-s { padding-top: 8px !important; }
	.pr-sm-s { padding-right: 8px !important; }
	.pb-sm-s { padding-bottom: 8px !important; }
	.pl-sm-s { padding-left: 8px !important; }
	.px-sm-s {
		padding-right: 8px !important;
		padding-left: 8px !important;
	}
	.py-sm-s {
		padding-top: 8px !important;
		padding-bottom: 8px !important;
	}

	.m-sm-r { margin: 16px !important; }
	.mt-sm-r { margin-top: 16px !important; }
	.mr-sm-r { margin-right: 16px !important; }
	.mb-sm-r { margin-bottom: 16px !important; }
	.ml-sm-r { margin-left: 16px !important; }
	.mx-sm-r {
		margin-right: 16px !important;
		margin-left: 16px !important;
	}
	.my-sm-r {
		margin-top: 16px !important;
		margin-bottom: 16px !important;
	}

	.p-sm-r { padding: 16px !important; }
	.pt-sm-r { padding-top: 16px !important; }
	.pr-sm-r { padding-right: 16px !important; }
	.pb-sm-r { padding-bottom: 16px !important; }
	.pl-sm-r { padding-left: 16px !important; }
	.px-sm-r {
		padding-right: 16px !important;
		padding-left: 16px !important;
	}
	.py-sm-r {
		padding-top: 16px !important;
		padding-bottom: 16px !important;
	}

	.m-sm-l { margin: 32px !important; }
	.mt-sm-l { margin-top: 32px !important; }
	.mr-sm-l { margin-right: 32px !important; }
	.mb-sm-l { margin-bottom: 32px !important; }
	.ml-sm-l { margin-left: 32px !important; }
	.mx-sm-l {
		margin-right: 32px !important;
		margin-left: 32px !important;
	}
	.my-sm-l {
		margin-top: 32px !important;
		margin-bottom: 32px !important;
	}

	.p-sm-l { padding: 32px !important; }
	.pt-sm-l { padding-top: 32px !important; }
	.pr-sm-l { padding-right: 32px !important; }
	.pb-sm-l { padding-bottom: 32px !important; }
	.pl-sm-l { padding-left: 32px !important; }
	.px-sm-l {
		padding-right: 32px !important;
		padding-left: 32px !important;
	}
	.py-sm-l {
		padding-top: 32px !important;
		padding-bottom: 32px !important;
	}

	.m-sm-a { margin: auto !important; }
	.mt-sm-a { margin-top: auto !important; }
	.mr-sm-a { margin-right: auto !important; }
	.mb-sm-a { margin-bottom: auto !important; }
	.ml-sm-a { margin-left: auto !important; }
	.mx-sm-a {
		margin-right: auto !important;
		margin-left: auto !important;
	}
	.my-sm-a {
		margin-top: auto !important;
		margin-bottom: auto !important;
	}
}

@media (min-width: 768px) {
	.d-md-none { display: none !important; }
	.d-md-inline { display: inline !important; }
	.d-md-inline-block { display: inline-block !important; }
	.d-md-block { display: block !important; }
	.d-md-table { display: table !important; }
	.d-md-table-cell { display: table-cell !important; }
	.d-md-table-row { display: table-row !important; }
	.d-md-flex { display: flex !important; }
	.d-md-inline-flex { display: inline-flex !important; }
	.d-md-contents { display: contents !important; }

	.w-md-auto { width: auto !important; }
	.w-md-fit { width: fit-content !important; }
	.w-md-0 { width: 0 !important; }
	.w-md-10 { width: 10% !important; }
	.w-md-25 { width: 25% !important; }
	.w-md-33 { width: 33.3333333333% !important; }
	.w-md-50 { width: 50% !important; }
	.w-md-66 { width: 66.6666666667% !important; }
	.w-md-75 { width: 75% !important; }
	.w-md-100 { width: 100% !important; }

	.mw-md-none { max-width: none !important; }
	.mw-md-0 { max-width: 0 !important; }
	.mw-md-10 { max-width: 10% !important; }
	.mw-md-25 { max-width: 25% !important; }
	.mw-md-33 { max-width: 33.3333333333% !important; }
	.mw-md-50 { max-width: 50% !important; }
	.mw-md-66 { max-width: 66.6666666667% !important; }
	.mw-md-75 { max-width: 75% !important; }
	.mw-md-100 { max-width: 100% !important; }

	.h-md-auto { height: auto !important; }
	.h-md-0 { height: 0 !important; }
	.h-md-10 { height: 10% !important; }
	.h-md-25 { height: 25% !important; }
	.h-md-33 { height: 33.3333333333% !important; }
	.h-md-50 { height: 50% !important; }
	.h-md-66 { height: 66.6666666667% !important; }
	.h-md-75 { height: 75% !important; }
	.h-md-100 { height: 100% !important; }

	.fa-md-start {
		display: flex;
		align-items: flex-start;
	}
	.fa-md-end {
		display: flex;
		align-items: flex-end;
	}
	.fa-md-center {
		display: flex;
		align-items: center;
	}
	.fa-md-stretch {
		display: flex;
		align-items: stretch;
	}
	.fa-md-baseline {
		display: flex;
		align-items: baseline;
	}

	.container-md-relative {
		position: relative;
	}
	.container-md-flex {
		display: flex;
		align-items: center;
	}
	.container-md-flex.__space {
		justify-content: space-between;
	}
	.container-md-flex.__start {
	 justify-content: flex-start;
	}
	.container-md-flex.__center {
		justify-content: center;
	}
	.container-md-flex.__end {
		justify-content: flex-end;
	}
	.container-md-flex.__col {
		flex-direction: column;
	}
	.container-md-flex.__wrap {
		flex-wrap: wrap;
	}

	.fb-md-auto { flex-basis: auto; }
	.fb-md-10 { flex-basis: 10%; }
	.fb-md-25 { flex-basis: 25%; }
	.fb-md-33 { flex-basis: 33.3333333333%; }
	.fb-md-50 { flex-basis: 50%; }
	.fb-md-66 { flex-basis: 66.6666666667%; }
	.fb-md-75 { flex-basis: 75%; }
	.fb-md-100 { flex-basis: 100%; }

	.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-wrap { flex-wrap: wrap !important; }
	.flex-md-nowrap { flex-wrap: nowrap !important; }
	.flex-md-wrap-reverse { flex-wrap: wrap-reverse !important; }

	.flex-md-fill { flex: 1 1 0 !important; }
	.flex-md-auto { flex: 0 0 auto !important; }
	.flex-md-fill-auto { flex: 1 1 auto !important; }
	.flex-md-fill-100 { flex: 1 1 100% !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; }

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

	.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-0 { order: 0; }
	.order-md-1 { order: 1; }
	.order-md-2 { order: 2; }
	.order-md-3 { order: 3; }
	.order-md-4 { order: 4; }
	.order-md-5 { order: 5; }
	.order-md-6 { order: 6; }
	.order-md-7 { order: 7; }
	.order-md-8 { order: 8; }
	.order-md-9 { order: 9; }
	.order-md-10 { order: 10; }
	.order-md-11 { order: 11; }
	.order-md-12 { order: 12; }
	.order-md-first { order: -1; }
	.order-md-last { order: 13; }
	
	.m-md-n { margin: 0 !important; }
	.mt-md-n { margin-top: 0 !important; }
	.mr-md-n { margin-right: 0 !important; }
	.mb-md-n { margin-bottom: 0 !important;	}
	.ml-md-n { margin-left: 0 !important; }
	.mx-md-n {
		margin-right: 0 !important;
		margin-left: 0 !important;
	}
	.my-md-n {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}

	.p-md-n { padding: 0 !important; }
	.pt-md-n { padding-top: 0 !important; }
	.pr-md-n { padding-right: 0 !important; }
	.pb-md-n { padding-bottom: 0 !important; }
	.pl-md-n { padding-left: 0 !important; }
	.px-md-n {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}
	.py-md-n {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}

	.m-md-t { margin: 4px !important; }
	.mt-md-t { margin-top: 4px !important; }
	.mr-md-t { margin-right: 4px !important; }
	.mb-md-t { margin-bottom: 4px !important; }
	.ml-md-t { margin-left: 4px !important; }
	.mx-md-t {
		margin-right: 4px !important;
		margin-left: 4px !important;
	}
	.my-md-t {
		margin-top: 4px !important;
		margin-bottom: 4px !important;
	}

	.p-md-t { padding: 4px !important; }
	.pt-md-t { padding-top: 4px !important; }
	.pr-md-t { padding-right: 4px !important; }
	.pb-md-t { padding-bottom: 4px !important; }
	.pl-md-t { padding-left: 4px !important; }
	.px-md-t {
		padding-right: 4px !important;
		padding-left: 4px !important;
	}
	.py-md-t {
		padding-top: 4px !important;
		padding-bottom: 4px !important;
	}

	.m-md-s { margin: 8px !important; }
	.mt-md-s { margin-top: 8px !important; }
	.mr-md-s { margin-right: 8px !important; }
	.mb-md-s { margin-bottom: 8px !important; }
	.ml-md-s { margin-left: 8px !important;	}
	.mx-md-s {
		margin-right: 8px !important;
		margin-left: 8px !important;
	}
	.my-md-s {
		margin-top: 8px !important;
		margin-bottom: 8px !important;
	}

	.p-md-s { padding: 8px !important; }
	.pt-md-s { padding-top: 8px !important; }
	.pr-md-s { padding-right: 8px !important; }
	.pb-md-s { padding-bottom: 8px !important; }
	.pl-md-s { padding-left: 8px !important; }
	.px-md-s {
		padding-right: 8px !important;
		padding-left: 8px !important;
	}
	.py-md-s {
		padding-top: 8px !important;
		padding-bottom: 8px !important;
	}

	.m-md-r { margin: 16px !important; }
	.mt-md-r { margin-top: 16px !important; }
	.mr-md-r { margin-right: 16px !important; }
	.mb-md-r { margin-bottom: 16px !important; }
	.ml-md-r { margin-left: 16px !important; }
	.mx-md-r {
		margin-right: 16px !important;
		margin-left: 16px !important;
	}
	.my-md-r {
		margin-top: 16px !important;
		margin-bottom: 16px !important;
	}

	.p-md-r { padding: 16px !important;	}
	.pt-md-r { padding-top: 16px !important; }
	.pr-md-r { padding-right: 16px !important; }
	.pb-md-r { padding-bottom: 16px !important; }
	.pl-md-r { padding-left: 16px !important; }
	.px-md-r {
		padding-right: 16px !important;
		padding-left: 16px !important;
	}
	.py-md-r {
		padding-top: 16px !important;
		padding-bottom: 16px !important;
	}

	.m-md-l { margin: 32px !important; }
	.mt-md-l { margin-top: 32px !important; }
	.mr-md-l { margin-right: 32px !important; }
	.mb-md-l { margin-bottom: 32px !important; }
	.ml-md-l { margin-left: 32px !important; }
	.mx-md-l {
		margin-right: 32px !important;
		margin-left: 32px !important;
	}
	.my-md-l {
		margin-top: 32px !important;
		margin-bottom: 32px !important;
	}

	.p-md-l { padding: 32px !important; }
	.pt-md-l { padding-top: 32px !important; }
	.pr-md-l { padding-right: 32px !important; }
	.pb-md-l { padding-bottom: 32px !important; }
	.pl-md-l { padding-left: 32px !important; }
	.px-md-l {
		padding-right: 32px !important;
		padding-left: 32px !important;
	}
	.py-md-l {
		padding-top: 32px !important;
		padding-bottom: 32px !important;
	}

	.m-md-a { margin: auto !important; }
	.mt-md-a { margin-top: auto !important; }
	.mr-md-a { margin-right: auto !important; }
	.mb-md-a { margin-bottom: auto !important; }
	.ml-md-a { margin-left: auto !important; }
	.mx-md-a {
		margin-right: auto !important;
		margin-left: auto !important;
	}
	.my-md-a {
		margin-top: auto !important;
		margin-bottom: auto !important;
	}
}

@media (min-width: 1024px) {
	.d-lg-none { display: none !important; }
	.d-lg-inline { display: inline !important; }
	.d-lg-inline-block { display: inline-block !important; }
	.d-lg-block { display: block !important; }
	.d-lg-table { display: table !important; }
	.d-lg-table-cell { display: table-cell !important; }
	.d-lg-table-row { display: table-row !important; }
	.d-lg-flex { display: flex !important; }
	.d-lg-inline-flex { display: inline-flex !important; }
	.d-lg-contents { display: contents !important; }

	.w-lg-auto { width: auto !important; }
	.w-lg-fit { width: fit-content !important; }
	.w-lg-0 { width: 0 !important; }
	.w-lg-10 { width: 10% !important; }
	.w-lg-25 { width: 25% !important; }
	.w-lg-33 { width: 33.3333333333% !important; }
	.w-lg-50 { width: 50% !important; }
	.w-lg-66 { width: 66.6666666667% !important; }
	.w-lg-75 { width: 75% !important; }
	.w-lg-100 { width: 100% !important; }

	.mw-lg-none { max-width: none !important; }
	.mw-lg-0 { max-width: 0 !important; }
	.mw-lg-10 { max-width: 10% !important; }
	.mw-lg-25 { max-width: 25% !important; }
	.mw-lg-33 { max-width: 33.3333333333% !important; }
	.mw-lg-50 { max-width: 50% !important; }
	.mw-lg-66 { max-width: 66.6666666667% !important; }
	.mw-lg-75 { max-width: 75% !important; }
	.mw-lg-100 { max-width: 100% !important; }

	.h-lg-auto { height: auto !important; }
	.h-lg-0 { height: 0 !important; }
	.h-lg-10 { height: 10% !important; }
	.h-lg-25 { height: 25% !important; }
	.h-lg-33 { height: 33.3333333333% !important; }
	.h-lg-50 { height: 50% !important; }
	.h-lg-66 { height: 66.6666666667% !important; }
	.h-lg-75 { height: 75% !important; }
	.h-lg-100 { height: 100% !important; }
	
	.fa-lg-start {
		display: flex;
		align-items: flex-start;
	}
	.fa-lg-end {
		display: flex;
		align-items: flex-end;
	}
	.fa-lg-center {
		display: flex;
		align-items: center;
	}
	.fa-lg-stretch {
		display: flex;
		align-items: stretch;
	}
	.fa-lg-baseline {
		display: flex;
		align-items: baseline;
	}

	.container-lg-relative {
		position: relative;
	}
	.container-lg-flex {
		display: flex;
		align-items: center;
	}
	.container-lg-flex.__space {
		justify-content: space-between;
	}
	.container-lg-flex.__start {
		justify-content: flex-start;
	}
	.container-lg-flex.__center {
		justify-content: center;
	}
	.container-lg-flex.__end {
		justify-content: flex-end;
	}
	.container-lg-flex.__col {
		flex-direction: column;
	}
	.container-lg-flex.__wrap {
		flex-wrap: wrap;
	}

	.fb-lg-auto { flex-basis: auto; }
	.fb-lg-10 { flex-basis: 10%; }
	.fb-lg-25 { flex-basis: 25%; }
	.fb-lg-33 { flex-basis: 33.3333333333%; }
	.fb-lg-50 { flex-basis: 50%; }
	.fb-lg-66 { flex-basis: 66.6666666667%; }
	.fb-lg-75 { flex-basis: 75%; }
	.fb-lg-100 { flex-basis: 100%; }

	.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-wrap { flex-wrap: wrap !important; }
	.flex-lg-nowrap { flex-wrap: nowrap !important; }
	.flex-lg-wrap-reverse { flex-wrap: wrap-reverse !important; }

	.flex-lg-fill { flex: 1 1 0 !important; }
	.flex-lg-auto { flex: 0 0 auto !important; }
	.flex-lg-fill-auto { flex: 1 1 auto !important; }
	.flex-lg-fill-100 { flex: 1 1 100% !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; }

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

	.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-0 { order: 0; }
	.order-lg-1 { order: 1; }
	.order-lg-2 { order: 2; }
	.order-lg-3 { order: 3; }
	.order-lg-4 { order: 4; }
	.order-lg-5 { order: 5; }
	.order-lg-6 { order: 6; }
	.order-lg-7 { order: 7; }
	.order-lg-8 { order: 8; }
	.order-lg-9 { order: 9; }
	.order-lg-10 { order: 10; }
	.order-lg-11 { order: 11; }
	.order-lg-12 { order: 12; }
	.order-lg-first { order: -1; }
	.order-lg-last { order: 13; }

	.m-lg-n { margin: 0 !important; }
	.mt-lg-n { margin-top: 0 !important; }
	.mr-lg-n { margin-right: 0 !important; }
	.mb-lg-n { margin-bottom: 0 !important; }
	.ml-lg-n { margin-left: 0 !important; }
	.mx-lg-n {
		margin-right: 0 !important;
		margin-left: 0 !important;
	}
	.my-lg-n {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}

	.p-lg-n { padding: 0 !important; }
	.pt-lg-n { padding-top: 0 !important; }
	.pr-lg-n { padding-right: 0 !important; }
	.pb-lg-n { padding-bottom: 0 !important; }
	.pl-lg-n { padding-left: 0 !important; }
	.px-lg-n {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}
	.py-lg-n {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}

	.m-lg-t { margin: 4px !important; }
	.mt-lg-t { margin-top: 4px !important; }
	.mr-lg-t { margin-right: 4px !important; }
	.mb-lg-t { margin-bottom: 4px !important; }
	.ml-lg-t { margin-left: 4px !important; }
	.mx-lg-t {
		margin-right: 4px !important;
		margin-left: 4px !important;
	}
	.my-lg-t {
		margin-top: 4px !important;
		margin-bottom: 4px !important;
	}

	.p-lg-t { padding: 4px !important; }
	.pt-lg-t { padding-top: 4px !important; }
	.pr-lg-t { padding-right: 4px !important; }
	.pb-lg-t { padding-bottom: 4px !important; }
	.pl-lg-t { padding-left: 4px !important; }
	.px-lg-t {
		padding-right: 4px !important;
		padding-left: 4px !important;
	}
	.py-lg-t {
		padding-top: 4px !important;
		padding-bottom: 4px !important;
	}

	.m-lg-s { margin: 8px !important; }
	.mt-lg-s { margin-top: 8px !important; }
	.mr-lg-s { margin-right: 8px !important; }
	.mb-lg-s { margin-bottom: 8px !important; }
	.ml-lg-s { margin-left: 8px !important; }
	.mx-lg-s {
		margin-right: 8px !important;
		margin-left: 8px !important;
	}
	.my-lg-s {
		margin-top: 8px !important;
		margin-bottom: 8px !important;
	}

	.p-lg-s { padding: 8px !important; }
	.pt-lg-s { padding-top: 8px !important; }
	.pr-lg-s { padding-right: 8px !important; }
	.pb-lg-s { padding-bottom: 8px !important; }
	.pl-lg-s { padding-left: 8px !important; }
	.px-lg-s {
		padding-right: 8px !important;
		padding-left: 8px !important;
	}
	.py-lg-s {
		padding-top: 8px !important;
		padding-bottom: 8px !important;
	}

	.m-lg-r { margin: 16px !important; }
	.mt-lg-r { margin-top: 16px !important; }
	.mr-lg-r { margin-right: 16px !important; }
	.mb-lg-r { margin-bottom: 16px !important; }
	.ml-lg-r { margin-left: 16px !important; }
	.mx-lg-r {
		margin-right: 16px !important;
		margin-left: 16px !important;
	}
	.my-lg-r {
		margin-top: 16px !important;
		margin-bottom: 16px !important;
	}

	.p-lg-r { padding: 16px !important; }
	.pt-lg-r { padding-top: 16px !important; }
	.pr-lg-r { padding-right: 16px !important; }
	.pb-lg-r { padding-bottom: 16px !important; }
	.pl-lg-r { padding-left: 16px !important; }
	.px-lg-r {
		padding-right: 16px !important;
		padding-left: 16px !important;
	}
	.py-lg-r {
		padding-top: 16px !important;
		padding-bottom: 16px !important;
	}

	.m-lg-l { margin: 32px !important; }
	.mt-lg-l { margin-top: 32px !important; }
	.mr-lg-l { margin-right: 32px !important; }
	.mb-lg-l { margin-bottom: 32px !important; }
	.ml-lg-l { margin-left: 32px !important; }
	.mx-lg-l {
		margin-right: 32px !important;
		margin-left: 32px !important;
	}
	.my-lg-l {
		margin-top: 32px !important;
		margin-bottom: 32px !important;
	}

	.p-lg-l { padding: 32px !important; }
	.pt-lg-l { padding-top: 32px !important; }
	.pr-lg-l { padding-right: 32px !important; }
	.pb-lg-l { padding-bottom: 32px !important; }
	.pl-lg-l { padding-left: 32px !important; }
	.px-lg-l {
		padding-right: 32px !important;
		padding-left: 32px !important;
	}
	.py-lg-l {
		padding-top: 32px !important;
		padding-bottom: 32px !important;
	}

	.m-lg-a { margin: auto !important; }
	.mt-lg-a { margin-top: auto !important; }
	.mr-lg-a { margin-right: auto !important; }
	.mb-lg-a { margin-bottom: auto !important; }
	.ml-lg-a { margin-left: auto !important; }
	.mx-lg-a {
		margin-right: auto !important;
		margin-left: auto !important;
	}
	.my-lg-a {
		margin-top: auto !important;
		margin-bottom: auto !important;
	}
}

.h1 {
	font-size: 32px;
	font-weight: 700;
}
.h2 {
	font-size: 24px;
	font-weight: 700;
}
.h3 {
	font-size: 20px;
	font-weight: 700;
}
.h4 {
	font-size: 16px;
	font-weight: 700;
}
.h5 {
	font-size: 15px;
	font-weight: 700;
}
.microcopy.__alt {
	font-size: 12px;
}
.microlegend {
	font-size: 12px;
	color: #888;
}
.microlegend.inherit {
	color: inherit;
}

.container-bloc {
	position: relative;
	padding: 16px;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16);
}
.container-bloc.no-shadow {
	box-shadow: none;
}

.drawer {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    background: #fff;
    transform: translateX(100%);
    transition: transform 300ms cubic-bezier(0.65, 0, 0.35, 1);
    pointer-events: none;
    overflow: hidden;
    z-index: 10000;
}
.drawer.__active {
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16);
	transform: translateX(0);
	pointer-events: auto;
}
.drawer .drawer-header {
    position: relative;
    padding: 16px 56px 16px 16px;
    z-index: 1;
}
.drawer .drawer-header .kbtn.kbtn-primary.__square {
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
}
.drawer .drawer-footer {
	padding: 16px;
}
.drawer-footer .k-btn {
	border-radius: 8px;
	transition: box-shadow 300ms ease-out;
}

.drawer .__shadow {
	box-shadow: 0 0 20px -5px rgba(0,0,0,0.24);
}

@media (min-width: 768px) {
    .drawer {
		width: 768px;
	}
	.drawer.__alt {
		width: 380px;
	}
}
.overlay {
    position: fixed;	
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    background: rgba(51, 51, 51, 0.65);
    pointer-events: none;
    transition: opacity 500ms cubic-bezier(0.25, 0.1, 0.25, 1);
    z-index: 9999;
}
.overlay.__active {
    opacity: 1;
    pointer-events: auto;
}
.overlay.__transparent {
	background: transparent;
}

.dropdown {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	width: max-content;
	max-width: 320px;
	background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16);
    overflow: hidden;
    z-index: 150;
}
.dropdown.__right {
	left: auto;
	right: 0;
}
.dropdown.__active {
	display: block;
	animation: fade-in 300ms cubic-bezier(0.21, 0.61, 0.35, 1);
}
.dropdown-item {
	display: flex;
	align-items: center;
	height: 48px;
	padding: 0 16px;
	color: initial;
}
.dropdown-item:hover {
	color: initial;
	background: #f1f2f6;
}

.toast {
    position: fixed;
    right: 16px;
    bottom: 16px;
    left: 16px;
    padding: 16px;
    border-radius: 8px;
    background-color: #333;
    color: #fff;
    animation: toast 3000ms forwards;
    z-index: 1500;
}

@media (min-width: 768px) {
    .toast {
        width: 300px;
        left: 50%;
        right: auto;
    }
}
@keyframes toast {
	0% {
		opacity: 0;
		transform: translateY(100%);
		animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
	}
	12% {
		opacity: 1;
		transform: translateY(-10px);
	}
	17%,
	83% {
		opacity: 1;
		transform: translateY(0%);
		animation-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
	}
	100% {
		opacity: 0;
		transform: translateY(100%);
	}
}

@keyframes fade-in {
  0% {
  	transform: translateY(30px);
  	opacity: 0;
  }
  30% {
  	opacity: 1;
  }
  100% {
  	transform: translateY(0);
  	opacity: 1;
  }
}

@keyframes fade-in-top {
  0% {
  	transform: translateY(calc(-100% - 30px));
  	opacity: 0;
  }
  30% {
  	opacity: 1;
  }
  100% {
  	transform: translateY(-100%);
  	opacity: 1;
  }
}

label.checkbox,
label.radio {
	position: relative;
    display: inline-flex;
    align-items: center;
    width: 100%;
    height: 48px;
    padding-left: 40px;
    margin: 0;
    cursor: pointer;
    font-size: 14px;
    font-weight: 400;
}

label.checkbox.__small ,
label.radio.__background {
	height: 32px;
}

label.checkbox.__background,
label.radio.__background {
	width: auto;
	height: 24px;
	border-radius: 8px;
	padding: 0 8px 0 32px;
}

label.checkbox.__background::before,
label.radio.__background::before,
label.checkbox.__background svg,
label.radio.__background svg {
	left: 8px;
}

label.checkbox.__field,
label.radio.__field {
    flex-wrap: wrap;
    height: auto;
    border: 1px solid #c1c1c1;
    border-radius: 8px;
    padding: 8px 8px 8px 32px;
}

label.checkbox.__field::before,
label.radio.__field::before {
	content: none;
}

label.checkbox.__field .holder,
label.radio.__field .holder {
	position: relative;
}

label.checkbox.__field .holder ~ span,
label.radio.__field .holder  ~ span {
	color: initial;
}

label.checkbox.__field .holder::before,
label.radio.__field .holder:first-of-type::before {
	content: "";
    position: absolute;
    top: 50%;
    left: -8px;
    width: 16px;
    height: 16px;
    border: 1px solid #888;
    border-radius: 2px;
    transform: translate(-100%, -50%);
    transition: 150ms cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

label.checkbox.__field .holder svg,
label.radio.__field .holder svg {
    position: absolute;
    top: 50%;
    left: -8px;
    width: 16px;
    height: 16px;
    color: #fff;
    opacity: 0;
    transform: translate(-100%,-50%);
    transition: 150ms cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

label.checkbox::before,
label.radio::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 16px;
    width: 16px;
    height: 16px;
    border: 1px solid #888;
    border-radius: 2px;
    background: #fff;
    transform: translateY(-50%);
    transition: 150ms cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

label.checkbox::before,
label.checkbox.__field .holder::before  {
    border-radius: 2px;
}
	
label.radio::before,
label.radio.__field .holder::before {
    border-radius: 16px;
}

label.checkbox > svg,
label.radio > svg {
    position: absolute;
    top: 50%;
    left: 16px;
    width: 16px;
    height: 16px;
    color: #fff;
    opacity: 0;
    transform: translateY(-50%);
    transition: opacity 150ms cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

label.checkbox.__active > svg,
label.radio.__active > svg,
label.checkbox.__field .holder svg,
label.radio.__field .holder svg  {
	opacity: 1;
}

label.checkbox.__background.__active,
label.radio.__background.__active {
	background: #f1f2f6;
}

label.checkbox input,
label.radio input {
    position: absolute;
    left: -9999px;
    -webkit-appearance: none;
    appearance: none;
}

label.checkbox.__disabled,
label.radio.__disabled {
	pointer-events: none;
    filter: none;
    box-shadow: none;
    opacity: 0.6;
}

label.radio:hover {
	background: #f1f2f6;
}

#external-payment-form .adyen-checkout__field--error .adyen-checkout__input {
    border-color: #e30513;
}

#external-payment-form .adyen-checkout__field--error .adyen-checkout__label {
    color: #e30513;
}

@media (min-width: 768px) {
	#external-payment-form .adyen-checkout__input:hover {
		box-shadow: inset 0 0 0 1px #888;
	}
	#external-payment-form .adyen-checkout__field--error .adyen-checkout__input:hover {
	    box-shadow: inset 0 0 0 1px #e30513;
	}
}

.list-reset {
	margin: 0px;
	padding: 0px;
	list-style-type: none;
}
.list-disc {
	list-style-type: none;
	margin: 0;
	padding-left: 30px;
}
.list-disc li::before {
	content: "\2022";
	margin-right: 4px;
}
.pointer {
	cursor: pointer;
}


hr {
	display: block;
	margin: 0;
	border: none;
	border-top: 1px solid #c1c1c1;
}

.vr {
	display: block;
  	border-right: 1px solid #c1c1c1;
}


.text-ellipsis {
    display: block;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}
.text-wrap {
    white-space: normal !important;
}
.text-normal {
	font-weight: 400 !important;
}
.text-bold {
	font-weight: 700;
}
.text-lowercase {
    text-transform: lowercase;
}
.text-success {
	color: #25c86a;
}
.text-pending {
	color: #ff9e0d;
}
.text-error {
	color: #e30513;
}
.text-rating {
	color: #f7941d;
}
.text-grey-light {
	color: #c1c1c1;
}

.overflow-x {
    overflow-x: auto;
}
.overflow-x.__custom::-webkit-scrollbar {
    height: 5px;
}
.overflow-x.__custom::-webkit-scrollbar-thumb {
    border-radius: 3px;
    background: rgba(0, 0, 0, 0.24);
}
.overflow-x.__none {
    scrollbar-width: none;
}
.overflow-x.__none::-webkit-scrollbar {
    display: none;
}
.overflow-x:hover::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.54);
}
.overflow-y {
    overflow-y: auto;
}
.overflow-y.__custom::-webkit-scrollbar {
    width: 5px;
}
.overflow-y.__custom::-webkit-scrollbar-thumb {
    border-radius: 3px;
    background: rgba(0, 0, 0, 0.24);
}
.overflow-y.__none {
    scrollbar-width: none;
}
.overflow-y.__none::-webkit-scrollbar {
    display: none;
}
.overflow-y:hover::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.54);
}

.loading-dots {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}
.loading-dots > span {
	position: absolute;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	transform: translateX(-100px);
	animation: loading-dot 1300ms infinite;	
}
.loading-dots > span:nth-of-type(2) {
	animation-delay: 100ms;
	margin-left: -6px;
}
.loading-dots > span:nth-of-type(3) {
	animation-delay: 200ms;
	margin-left: -12px;
}
.loading-dots > span:nth-of-type(4) {
	animation-delay: 300ms;
	margin-left: -18px;
}
@keyframes loading-dot {
  0% {
  	transform: translateX(-100px);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  38.5% {
  	transform: translateX(0px);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  77% {
  	transform: translateX(100px);
    animation-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75);
    opacity: 1;
  }
  78% {
    opacity: 0;
  }
  100% {
  	transform: translateX(100px);
    opacity: 0;
  }
}

.lazy-load {
	position: relative;
	display: block;
	overflow: hidden;
	min-width: 10%;
	min-height: 18px;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	color: transparent;
}
.lazy-load::before {
	content: "";
	position: absolute;
	top: 0px;
	right: 0px;
	width: 100%;
	height: 100%;
	border-radius: 3px;
	background-image: linear-gradient(90deg,#f2f4f7 0,#e0e5eb 50%,#f2f4f7);
	background-size: 150% 100%;
	animation: loading-placeholder 1s linear infinite forwards;
	z-index: 1;
}

@keyframes loading-placeholder {
  from {background-position: 150% 0%;}
  to {background-position: -150% 0%;}
}
@keyframes slide-up {
  from {transform: translateY(100%);}
  to {transform: translateY(0%);}
}

.loading-bar {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 8px;
    border-radius: 0 0 8px 8px;
    overflow: hidden;
}

.loading-bar::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 33%;
    height: 100%;
    border-radius: 8px;
    animation: loading-bar 1.5s cubic-bezier(0.645, 0.045, 0.355, 1) infinite;
}

@keyframes loading-bar {
    0% { transform: translate(-100%); }
    100% { transform: translate(305%); }
}

.__tooltip {
	position: relative;
}

.tooltip-zone {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 48px;
    height: 48px;
}

.k-tooltip {
	display: none;
	position: absolute;
	top: 100%;
	left: 50%;
	max-width: 300px;
	padding: 8px;
	border-radius: 8px;
	background-color: #333;
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	text-align: left;
	animation: slide-up-tooltip-center 300ms cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
	z-index: 106;
}
.k-tooltip.__right {
	right: 0;
	left: auto;
}
.k-tooltip.__left {
	left: 0;
	right: auto;
}
.k-tooltip.__right,
.k-tooltip.__left {
	animation-name: slide-up-tooltip;
}
.k-tooltip.__top {
	top: 0;
	animation-name: slide-up-tooltip-top-center;
}
.k-tooltip.__right.__top,
.k-tooltip.__left.__top {
	animation-name: slide-up-tooltip-top;
}

@keyframes slide-up-tooltip {
    0% {
        opacity: 0;
    	transform: translateY(50%);
  	}
  	80% {
		opacity: 1;
  	}
  	100% {
    	transform: translateY(8px);
  	}
}

@keyframes slide-up-tooltip-center {
	0% {
    	opacity: 0;
    	transform: translate(-50%, 50%);
  	}
  	80% {
    	opacity: 1;
  	}
  	100% {
    	transform: translate(-50%, 8px);
  	}
}

@keyframes slide-up-tooltip-top {
	0% {
    	opacity: 0;
    	transform: translateY(50%);
		pointer-events: none;
  	}
  	80% {
    	opacity: 1;
  	}
  	100% {
  		transform: translateY(calc(-100% - 8px));
		pointer-events: all;
  	}
}

@keyframes slide-up-tooltip-top-center {
	0% {
    	opacity: 0;
    	transform: translate(-50%, 50%);
		pointer-events: none;
  	}
  	80% {
    	opacity: 1;
  	}
  	100% {
  		transform: translate(-50%, calc(-100% - 8px));
		pointer-events: all;
  	}
}

.step-number {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 32px;
    height: 32px;
    border-radius: 100%;
    background: #f1f2f6;
    font-size: 24px;
    font-weight: 700;
    color: #888;
}
.step-line {
	display: block;
	width: 100%;
	height: 8px;
	background: #f1f2f6;
	border-radius: 8px;
}
.step-line.__vertical {
	width: 8px;
	height: 100%;
}

.pills {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 16px;
    color: #fff;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 400;
    line-height: normal;
}
.pills.__small {
	min-height: 16px;
    padding: 0 8px;
    font-size: 10px;
}
.pills.__large {
	min-height: 32px;
    font-size: 14px;
}
.pills.__OK {
    background: #25c86a;
}
.pills.__OK.__light {
    background: #c5f4d9;
}
.pills.__RQ {
    background: #ff9e0d;
}
.pills.__RQ.__light {
    background: #ffe7c3;
}
.pills.__OP {
    background: #087fd2;
}
.pills.__OP.__light {
    background: #b9e1fc;
}
.pills.__KO {
    background: #e30513;
}
.pills.__KO.__light {
    background: #febbbf;
}
.pills.__CX {
    background: #888;
}
.pills.__UK,
.pills.__info {
    color: #333;
    background: #f1f2f6;
}
.pills.__light {
	color: #333;
}
.pills.__icon {
    padding: 0 12px 0 8px;
}
.pills.__icon svg {
    margin: 0 4px 0 0;
}
.pills.__icon.__right {
    padding: 0 8px 0 12px;
}
.pills.__icon.__right svg {
    margin: 0 0 0 4px;
}
.pills.__icon.__both {
    padding: 0 8px;
}
.pills.__icon.__both svg:last-of-type {
    margin: 0 0 0 4px
}
.__underline {
	text-decoration: underline;
}

.__index105 {
	z-index: 105;
	position: relative;
}