body {
 -webkit-font-smoothing: antialiased;
 text-rendering: optimizeLegibility;
 scroll-behavior: smooth;


}


/* --------------------------------------------- Components--------------------------------------------- */
/* Buttons */
.btn,
.btn:hover,
.btn:focus,
.btn:focus:active {
 text-decoration: none;
}


.btn-transparent {
 background-color: transparent !important;
 background-image: none !important;

}



/* ------------------------------------------------Utilities ---------------------------------------------- */


/* Font Size */
.fs-smaller {
 font-size: smaller !important;
}

.fs-small {
 font-size: small !important;
}

.fs-medium {
 font-size: medium !important;
}

.fs-large {
 font-size: large !important;
}

.fs-larger {
 font-size: larger !important;
}

.fs-xl {
 font-size: x-large !important;
}

.fs-2xl {
 font-size: xx-large !important;
}

.fs-xs {
 font-size: xx-small !important;
}

.fs-2xs {
 font-size: xx-small !important;
}

/* Background */
/* Use Bootstrap classes .bg-repeat-repeat-* instead */
.bg-none {
 background: none !important;
}

.bg-image-none {
 background-image: none !important;
}

.background-repeat {
 background-repeat: repeat !important;
}

.background-repeat-x {
 background-repeat: repeat-x !important;
}

.background-repeat-y {
 background-repeat: repeat-y !important;
}

.background-no-repeat {
 background-repeat: no-repeat !important;
}

/* Use Bootstrap class .background-size-*  instead */
.background-cover {
 background-size: cover !important;
}

.background-contain {
 background-size: contain !important;
}

.background-100 {
 background-size: 100% !important;
}

/* Use Bootstrap class .background-position-* instead */
.bg-bottom {
 background-position: bottom;
}

.bg-center {
 background-position: center;
}

.bg-left {
 background-position: left;
}

.bg-left-bottom {
 background-position: left bottom;
}

.bg-left-top {
 background-position: left top;
}

.bg-right {
 background-position: right;
}

.bg-right-bottom {
 background-position: right bottom;
}

.bg-right-top {
 background-position: right top;
}

.bg-top {
 background-position: top;
}

.bg-fixed {
 background-attachment: fixed;
}

.bg-scroll {
 background-attachment: scroll;
}

.bg-clip-text {
 -webkit-background-clip: text;
 background-clip: text;
}

.bg-clip-border {
 background-clip: border-box;
}

.bg-clip-padding {
 background-clip: padding-box;
}

.bg-clip-content {
 background-clip: content-box;
}

/* Text Styles */
.text-underline {
 text-decoration: underline !important;
}

.text-underline-under {
 text-underline-position: under !important;
}

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

.text-underline-offset-auto {
 text-underline-offset: auto !important;
}

.text-underline-offset-1 {
 text-underline-offset: 0.0625rem;
}

.underline-offset-2 {
 text-underline-offset: 0.125rem;
}

.underline-offset-3 {
 text-underline-offset: 0.1875rem;
}

.underline-offset-4 {
 text-underline-offset: 0.25rem;
}

.underline-offset-8 {
 text-underline-offset: 0.5rem;
}

.text-balance {
 text-wrap: balance;
 text-wrap-style: balance;
 text-wrap-mode: balance;
}

.text-pretty {
 text-wrap: pretty;
 text-wrap-style: pretty;
 text-wrap-mode: pretty;

}

.text-nowrap {

 text-wrap-style: nowrap;
 text-wrap-mode: nowrap;
 text-wrap: nowrap;
}

.text-wrap {
 white-space: normal;

}

.text-truncate {
 overflow: hidden;
 text-overflow: ellipsis;
 white-space: nowrap;
}

.text-ellipsis {
 text-overflow: ellipsis;
}

.text-clip {
 text-overflow: clip;
}

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

/* Text Shadow */
.text-shadow--default {
 text-shadow: 1px 1px 2px rgb(0 0 0 / 70%);
}

.text-shadow--1 {
 text-shadow: 2px 4px 3px rgba(0, 0, 0, 0.3);
}

.text-shadow--2 {
 text-shadow: 0px 2px 1px rgba(0, 0, 0, 0.56);
}

.text-shadow--3 {
 text-shadow: 0px 2px 1px rgba(0, 0, 0, 0.19);
}

.text-shadow--4 {
 text-shadow: 0px 3px 5.46px rgba(0, 0, 0, 0.51);
}

.text-shadow--5 {
 text-shadow: 0px 3px 3.72px rgba(0, 0, 0, 0.48);
}

.text-shadow-none {
 text-shadow: none !important;
}

/* Box Shadow */
.box-shadow-none {
 box-shadow: none !important;
}

.box-shadow--default {
 box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.box-shadow--1 {
 box-shadow: 0 0.3125rem 3.4375rem 0 rgb(2 2 2 / 25%);
}

.box-shadow--2 {
 box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}

.box-shadow--3 {
 box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}

.box-shadow--4 {
 box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 3px, rgba(0, 0, 0, 0.24) 0px 1px 2px;
}

.box-shadow--5 {
 box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
}

.box-shadow--6 {
 box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.box-shadow--7 {
 box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
}

.box-shadow--8 {
 box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 5px 0px, rgba(0, 0, 0, 0.1) 0px 0px 1px 0px;
}

.box-shadow--9 {
 box-shadow: rgba(67, 71, 85, 0.27) 0px 0px 0.25em, rgba(90, 125, 188, 0.05) 0px 0.25em 1em;
}

.box-shadow--10 {
 box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 1px 3px 1px;
}

.box-shadow--12 {
 box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.box-shadow--13 {
 box-shadow: 0 12px 16px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19);
}

.box-shadow--14 {
 box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .5);
}

/* Vertical Align */
.v-align-text-top {
 vertical-align: text-top;
}

.v-align-text-bottom {
 vertical-align: text-bottom;
}

.v-align-baseline {
 vertical-align: baseline;
}

/* for inline/table cell elements */
.v-align-top {
 vertical-align: top;
}

.v-align-middle {
 vertical-align: middle;
}

.v-align-bottom {
 vertical-align: bottom;
}

.v-align-sub {
 vertical-align: sub;
}

.v-align-super {
 vertical-align: super;
}

.content-none {
 content: none;
}

/*----------- Borders ----------------*/
/* Border Style */
.border-solid {
 border-style: solid !important;
}

.border-dash {
 border-style: dashed !important;
}

.border-dotted {
 border-style: dotted !important;
}

/* Bootstrap class .border-width-*, .border-left-width-*, .border-right-width-*  available*/
/* .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-7 {
 border-width: 7px !important;
}

.border-10 {
 border-width: 10px !important;
} */
/* 

.border-right-1 {
 border-right: 1px !important;
}

.border-right-2 {
 border-right: 2px !important;
}

.border-right-3 {
 border-right: 3px !important;
}

.border-right-5 {
 border-right: 5px !important;
}

.border-right-7 {
 border-right: 7px !important;
}

.border-right-10 {
 border-right: 10px !important;
}

.border-left-1 {
 border-left: 1px !important;
} */

/* Border Opacity */
.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-7 {
 --bs-border-opacity: 0.7;
}

.border-opacity-75 {
 --bs-border-opacity: 0.75;
}


/* Line Height */

.lh-1 {
 line-height: 1 !important;
}

.lh-heading {
 line-height: 1.1 !important;
}

.lh-tight {
 line-height: 1.3 !important;
}

.lh-normal {
 line-height: 1.5 !important;
}

.lh-loose {
 line-height: 1.8 !important;
}

.lh-lg {
 line-height: 2 !important;
}

/* Letter Spacing */
.tracking-tighter {
 letter-spacing: -0.05rem;
}

.tracking-tight {
 letter-spacing: -0.025rem;
}

.tracking-wide {
 letter-spacing: 0.025rem;
}

.tracking-wider {
 letter-spacing: 0.05rem;
}

.tracking-xl-wide {
 letter-spacing: 0.09375rem;
}

.tracking-xxl-wide {
 letter-spacing: 0.1rem;
}

.tracking-widest {
 letter-spacing: 0.125rem;
}


/* Bootstrap Aspect ratio class available and extended .aspect-ratio-* */
.aspect-ratio-auto {
 aspect-ratio: auto;
}

.aspect-ratio-5-4 {
 aspect-ratio: 5/4;
}

.aspect-ratio-6-4 {
 aspect-ratio: 6/4;
}

.aspect-ratio-16-9 {
 aspect-ratio: 16/9;
}

.aspect-ratio-21-9 {
 aspect-ratio: 21/9;
}

.aspect-ratio-9-16 {
 aspect-ratio: 9/16;
}

.aspect-ratio-4-1 {
 aspect-ratio: 4 / 1;
}

.aspect-ratio-2-1 {
 aspect-ratio: 2 / 1;
}

.aspect-ratio-1-1 {
 aspect-ratio: 1 / 1;
}

.sticky-bottom {
 position: fixed !important;
 bottom: 0;
 width: 100%;
 z-index: 1020;
}

/* Use extended Bootstrap position class .top-*, .bottom-*, .left-*, .right-*, .bottom-* instead */

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

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

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

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

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

.bottom-10 {
 bottom: 10% !important;
}

.left-10 {
 left: 10% !important;
}

.right-10 {
 right: 10% !important;
}

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

.bottom-15 {
 bottom: 15% !important;
}

.left-15 {
 left: 15% !important;
}

.right-15 {
 right: 15% !important;
}

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

.bottom-25 {
 bottom: 25% !important;
}

.left-25 {
 left: 25% !important;
}

.right-25 {
 right: 25% !important;
}

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

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

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

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

.position-middle {
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
}

/* Overflow */

.overflow-hidden {
 overflow: hidden;
}

.overflow-x-hidden {
 overflow-x: hidden;
}


.overflow-y-scroll {
 overflow-y: scroll;
}

.overflow-x-scroll {
 overflow-x: scroll;
}

/* Z-index - Bootstrap class .z-* available */
.z-index-1 {
 z-index: 1;
}

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

.z-index-3 {
 z-index: 3;
}

.z-index-4 {
 z-index: 4;
}

.z-index-5 {
 z-index: 5;
}

/* ------Width --------*/
/* Content Width */
.width-fit-content {
 width: -webkit-fit-content;
 width: -moz-fit-content;
 width: fit-content;
}

.width-max-content {
 width: -webkit-max-content;
 width: -moz-max-content;
 width: max-content;
}

.width-min-content {
 width: -webkit-min-content;
 width: -moz-min-content;
 width: min-content;
}

/* Helpers */
[onClick] {
 cursor: pointer;
}

.no-scroll {
 overflow: hidden !important;
}

.overflow-visible {
 overflow: visible !important;
}



/* -------------------------------------------- Transform & Animate  ---------------------------------------------- */

.flip-horizontally {
 transform: rotate(180deg);
}

.rotated-text--3deg {
 transform: rotate(3deg);
 -webkit-transform: rotate(3deg);
 -moz-transform: rotate(3deg);
 -ms-transform: rotate(3deg);
 -o-transform: rotate(3deg);
 transform-origin: bottom right;
}

.rotated--n3deg {
 transform: rotate(-3deg);
 -webkit-transform: rotate(-3deg);
 -moz-transform: rotate(-3deg);
 -ms-transform: rotate(-3deg);
 -o-transform: rotate(-3deg);
 transform-origin: bottom left;
}

.rotated-text--5deg {
 transform: rotate(5deg);
 -webkit-transform: rotate(5deg);
 -moz-transform: rotate(5deg);
 -ms-transform: rotate(5deg);
 -o-transform: rotate(5deg);
 transform-origin: bottom right;
}

.rotated-text--n5deg {
 transform: rotate(-5deg);
 -webkit-transform: rotate(-5deg);
 -moz-transform: rotate(-5deg);
 -ms-transform: rotate(-5deg);
 -o-transform: rotate(-5deg);
 transform-origin: bottom left;
}


.wiggle {
 -webkit-animation: wiggle 2s infinite;
 animation: wiggle 2s infinite;
}

@-webkit-keyframes wiggle {
 0% {
  transform: rotate(0deg);
 }

 25% {
  transform: rotate(5deg);
 }

 50% {
  transform: rotate(-5deg);
 }

 75% {
  transform: rotate(5deg);
 }

 100% {
  transform: rotate(0deg);
 }
}

@keyframes wiggle {
 0% {
  transform: rotate(0deg);
 }

 25% {
  transform: rotate(5deg);
 }

 50% {
  transform: rotate(-5deg);
 }

 75% {
  transform: rotate(5deg);
 }

 100% {
  transform: rotate(0deg);
 }
}



.sway {
 -webkit-animation: sway 2s infinite;
 animation: sway 2s infinite;
}

@-webkit-keyframes sway {
 0% {
  transform: rotate(0deg);
 }

 10% {
  transform: rotate(10deg);
 }

 30% {
  transform: rotate(-10deg);
 }

 50% {
  transform: rotate(10deg);
  -webkit-transform: rotate(10deg);
  -moz-transform: rotate(10deg);
  -ms-transform: rotate(10deg);
  -o-transform: rotate(10deg);
 }

 80% {
  transform: rotate(0deg);
 }

 100% {
  transform: rotate(0deg);
 }
}



@keyframes sway {
 0% {
  transform: rotate(0deg);
 }

 10% {
  transform: rotate(10deg);
 }

 30% {
  transform: rotate(-10deg);
 }

 50% {
  transform: rotate(10deg);
  -webkit-transform: rotate(10deg);
  -moz-transform: rotate(10deg);
  -ms-transform: rotate(10deg);
  -o-transform: rotate(10deg);
 }

 80% {
  transform: rotate(0deg);
 }



 100% {
  transform: rotate(0deg);
 }
}



.floating {
 -webkit-animation: float 2s ease-in-out infinite;
 animation: float 2s ease-in-out infinite;
}

@keyframes float {
 0% {
  transform: translateY(0);
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
 }

 50% {
  transform: translateY(-5px);
  -webkit-transform: translateY(-5px);
  -moz-transform: translateY(-5px);
  -ms-transform: translateY(-5px);
  -o-transform: translateY(-5px);
 }

 80% {
  transform: translateY(0);
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
 }

 100% {
  transform: translateY(0);
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
 }
}

@-webkit-keyframes float {
 0% {
  transform: translateY(0);
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
 }

 50% {
  transform: translateY(-5px);
  -webkit-transform: translateY(-5px);
  -moz-transform: translateY(-5px);
  -ms-transform: translateY(-5px);
  -o-transform: translateY(-5px);
 }

 80% {
  transform: translateY(0);
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
 }

 100% {
  transform: translateY(0);
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
 }
}

.wobble {
 -webkit-animation: wobble 2s infinite;
 animation: wobble 2s infinite;
}

@-webkit-keyframes wobble {
 0% {
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
 }

 25% {
  -webkit-transform: rotate(-10deg);
  -moz-transform: rotate(-10deg);
  -ms-transform: rotate(-10deg);
  -o-transform: rotate(-10deg);
  transform: rotate(-10deg);
 }

 50% {
  -webkit-transform: rotate(10deg);
  -moz-transform: rotate(10deg);
  -ms-transform: rotate(10deg);
  -o-transform: rotate(10deg);
  transform: rotate(10deg);
 }

 75% {
  -webkit-transform: rotate(-5deg);
  -moz-transform: rotate(-5deg);
  -ms-transform: rotate(-5deg);
  -o-transform: rotate(-5deg);
  transform: rotate(-5deg);
 }

 80% {
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
 }

 100% {
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
 }



}

@keyframes wobble {

 0% {
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
 }

 25% {
  -webkit-transform: rotate(-10deg);
  -moz-transform: rotate(-10deg);
  -ms-transform: rotate(-10deg);
  -o-transform: rotate(-10deg);
  transform: rotate(-10deg);
 }

 50% {
  -webkit-transform: rotate(10deg);
  -moz-transform: rotate(10deg);
  -ms-transform: rotate(10deg);
  -o-transform: rotate(10deg);
  transform: rotate(10deg);
 }

 75% {
  -webkit-transform: rotate(-5deg);
  -moz-transform: rotate(-5deg);
  -ms-transform: rotate(-5deg);
  -o-transform: rotate(-5deg);
  transform: rotate(-5deg);
 }

 80% {
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
 }

 100% {
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
 }
}


.tada {
 -webkit-animation: tada 2s infinite;
 animation: tada 2s infinite;

}

@-webkit-keyframes tada {
 from {
  transform: scale3d(1, 1, 1);
 }

 10%,
 20% {
  transform: rotate3d(0, 0, 1, -3deg);
 }

 30%,
 50% {
  transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
 }

 40%,
 60% {
  transform: rotate3d(0, 0, 1, -3deg);
 }

 70% {
  transform: scale3d(1, 1, 1);
 }

 to {
  transform: scale3d(1, 1, 1);
 }
}

@keyframes tada {
 from {
  transform: scale3d(1, 1, 1);
 }

 10%,
 20% {
  transform: rotate3d(0, 0, 1, -3deg);
 }

 30%,
 50% {
  transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
 }

 40%,
 60% {
  transform: rotate3d(0, 0, 1, -3deg);
 }

 70% {
  transform: scale3d(1, 1, 1);
 }

 to {
  transform: scale3d(1, 1, 1);
 }
}