*, ::before, ::after {
	--tw-border-spacing-x: 0;
	--tw-border-spacing-y: 0;
	--tw-translate-x: 0;
	--tw-translate-y: 0;
	--tw-rotate: 0;
	--tw-skew-x: 0;
	--tw-skew-y: 0;
	--tw-scale-x: 1;
	--tw-scale-y: 1;
	--tw-pan-x: ;--tw-pan-y:;
	--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;
	--tw-gradient-from-position: ;--tw-gradient-via-position:;
	--tw-gradient-to-position: ;--tw-ordinal:;
	--tw-slashed-zero: ;--tw-numeric-figure:;
	--tw-numeric-spacing: ;--tw-numeric-fraction:;
	--tw-ring-inset: ;--tw-ring-offset-width:0px;
	--tw-ring-offset-color: #fff;
	--tw-ring-color: rgb(59 130 246 / 0.5);
	--tw-ring-offset-shadow: 0 0 #0000;
	--tw-ring-shadow: 0 0 #0000;
	--tw-shadow: 0 0 #0000;
	--tw-shadow-colored: 0 0 #0000;
	--tw-blur: ;--tw-brightness:;
	--tw-contrast: ;--tw-grayscale:;
	--tw-hue-rotate: ;--tw-invert:;
	--tw-saturate: ;--tw-sepia:;
	--tw-drop-shadow: ;--tw-backdrop-blur:;
	--tw-backdrop-brightness: ;--tw-backdrop-contrast:;
	--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate:;
	--tw-backdrop-invert: ;--tw-backdrop-opacity:;
	--tw-backdrop-saturate: ;--tw-backdrop-sepia:;
	--tw-contain-size: ;--tw-contain-layout:;
	--tw-contain-paint: ;--tw-contain-style:
}

::backdrop {
	--tw-border-spacing-x: 0;
	--tw-border-spacing-y: 0;
	--tw-translate-x: 0;
	--tw-translate-y: 0;
	--tw-rotate: 0;
	--tw-skew-x: 0;
	--tw-skew-y: 0;
	--tw-scale-x: 1;
	--tw-scale-y: 1;
	--tw-pan-x: ;--tw-pan-y:;
	--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;
	--tw-gradient-from-position: ;--tw-gradient-via-position:;
	--tw-gradient-to-position: ;--tw-ordinal:;
	--tw-slashed-zero: ;--tw-numeric-figure:;
	--tw-numeric-spacing: ;--tw-numeric-fraction:;
	--tw-ring-inset: ;--tw-ring-offset-width:0px;
	--tw-ring-offset-color: #fff;
	--tw-ring-color: rgb(59 130 246 / 0.5);
	--tw-ring-offset-shadow: 0 0 #0000;
	--tw-ring-shadow: 0 0 #0000;
	--tw-shadow: 0 0 #0000;
	--tw-shadow-colored: 0 0 #0000;
	--tw-blur: ;--tw-brightness:;
	--tw-contrast: ;--tw-grayscale:;
	--tw-hue-rotate: ;--tw-invert:;
	--tw-saturate: ;--tw-sepia:;
	--tw-drop-shadow: ;--tw-backdrop-blur:;
	--tw-backdrop-brightness: ;--tw-backdrop-contrast:;
	--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate:;
	--tw-backdrop-invert: ;--tw-backdrop-opacity:;
	--tw-backdrop-saturate: ;--tw-backdrop-sepia:;
	--tw-contain-size: ;--tw-contain-layout:;
	--tw-contain-paint: ;--tw-contain-style:
}/* ! tailwindcss v3.4.16 | MIT License | https://tailwindcss.com */*,::after,::before {
	box-sizing: border-box;
	border-width: 0;
	border-style: solid;
	border-color: #e5e7eb
}

::after,::before {
	--tw-content: ''
}

:host,html {
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
	-moz-tab-size: 4;
	tab-size: 4;
	font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-feature-settings: normal;
	font-variation-settings: normal;
	-webkit-tap-highlight-color: transparent
}

body {
	margin: 0;
	line-height: inherit
}

hr {
	height: 0;
	color: inherit;
	border-top-width: 1px
}

abbr:where([title]) {
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted
}

h1,h2,h3,h4,h5,h6 {
	font-size: inherit;
	font-weight: inherit
}

a {
	color: inherit;
	text-decoration: inherit
}

b,strong {
	font-weight: bolder
}

code,kbd,pre,samp {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	font-feature-settings: normal;
	font-variation-settings: normal;
	font-size: 1em
}

small {
	font-size: 80%
}

sub,sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline
}

sub {
	bottom: -.25em
}

sup {
	top: -.5em
}

table {
	text-indent: 0;
	border-color: inherit;
	border-collapse: collapse
}

button,input,optgroup,select,textarea {
	font-family: inherit;
	font-feature-settings: inherit;
	font-variation-settings: inherit;
	font-size: 100%;
	font-weight: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	color: inherit;
	margin: 0;
	padding: 0
}

button,select {
	text-transform: none
}

button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]) {
	-webkit-appearance: button;
	background-color: transparent;
	background-image: none
}

:-moz-focusring {
	outline: auto
}

:-moz-ui-invalid {
	box-shadow: none
}

progress {
	vertical-align: baseline
}

::-webkit-inner-spin-button,::-webkit-outer-spin-button {
	height: auto
}[type=search] {
	-webkit-appearance: textfield;
	outline-offset: -2px
}

::-webkit-search-decoration {
	-webkit-appearance: none
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit
}

summary {
	display: list-item
}

blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre {
	margin: 0
}

fieldset {
	margin: 0;
	padding: 0
}

legend {
	padding: 0
}

menu,ol,ul {
	list-style: none;
	margin: 0;
	padding: 0
}

dialog {
	padding: 0
}

textarea {
	resize: vertical
}

input::placeholder,textarea::placeholder {
	opacity: 1;
	color: #9ca3af
}[role=button],button {
	cursor: pointer
}

:disabled {
	cursor: default
}

audio,canvas,embed,iframe,img,object,svg,video {
	display: block;
	vertical-align: middle
}

img,video {
	max-width: 100%;
	height: auto
}[hidden]:where(:not([hidden=until-found])) {
	display: none
}

.container {
	width: 100%
}

@media (min-width: 640px) {
	.container {
		max-width: 640px
	}
}

@media (min-width: 768px) {
	.container {
		max-width: 768px
	}
}

@media (min-width: 1024px) {
	.container {
		max-width: 1024px
	}
}

@media (min-width: 1280px) {
	.container {
		max-width: 1280px
	}
}

@media (min-width: 1536px) {
	.container {
		max-width: 1536px
	}
}

.fixed {
	position: fixed
}

.absolute {
	position: absolute
}

.relative {
	position: relative
}

.inset-0 {
	inset: 0px
}

.left-0 {
	left: 0px
}

.left-1\/2 {
	left: 50%
}

.right-0 {
	right: 0px
}

.top-0 {
	top: 0px
}

.top-24 {
	top: 6rem
}

.top-full {
	top: 100%
}

.z-40 {
	z-index: 40
}

.z-50 {
	z-index: 50
}

.col-span-2 {
	grid-column: span 2 / span 2
}

.mx-auto {
	margin-left: auto;
	margin-right: auto
}

.mb-12 {
	margin-bottom: 3rem
}

.mb-16 {
	margin-bottom: 4rem
}

.mb-2 {
	margin-bottom: 0.5rem
}

.mb-3 {
	margin-bottom: 0.75rem
}

.mb-4 {
	margin-bottom: 1rem
}

.mb-6 {
	margin-bottom: 1.5rem
}

.mb-8 {
	margin-bottom: 2rem
}

.ml-4 {
	margin-left: 1rem
}

.mr-2 {
	margin-right: 0.5rem
}

.mr-3 {
	margin-right: 0.75rem
}

.mt-1 {
	margin-top: 0.25rem
}

.mt-auto {
	margin-top: auto
}

.block {
	display: block
}

.flex {
	display: flex
}

.grid {
	display: grid
}

.hidden {
	display: none
}

.h-10 {
	height: 2.5rem
}

.h-16 {
	height: 4rem
}

.h-6 {
	height: 1.5rem
}

.h-8 {
	height: 2rem
}

.h-\[400px\] {
	height: 400px
}

.h-full {
	height: 100%
}

.w-10 {
	width: 2.5rem
}

.w-24 {
	width: 6rem
}

.w-48 {
	width: 12rem
}

.w-6 {
	width: 1.5rem
}

.w-8 {
	width: 2rem
}

.w-full {
	width: 100%
}

.max-w-3xl {
	max-width: 48rem
}

.flex-1 {
	flex: 1 1 0%
}

.-translate-x-1\/2 {
	--tw-translate-x: -50%;
	transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.transform {
	transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.cursor-pointer {
	cursor: pointer
}

.grid-cols-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr))
}

.flex-col {
	flex-direction: column
}

.flex-wrap {
	flex-wrap: wrap
}

.items-start {
	align-items: flex-start
}

.items-center {
	align-items: center
}

.justify-center {
	justify-content: center
}

.justify-between {
	justify-content: space-between
}

.gap-12 {
	gap: 3rem
}

.gap-3 {
	gap: 0.75rem
}

.gap-6 {
	gap: 1.5rem
}

.space-x-12 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-x-reverse: 0;
	margin-right: calc(3rem * var(--tw-space-x-reverse));
	margin-left: calc(3rem * calc(1 - var(--tw-space-x-reverse)))
}

.space-x-2 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-x-reverse: 0;
	margin-right: calc(0.5rem * var(--tw-space-x-reverse));
	margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)))
}

.space-x-4 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-x-reverse: 0;
	margin-right: calc(1rem * var(--tw-space-x-reverse));
	margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)))
}

.space-y-2 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-y-reverse: 0;
	margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
	margin-bottom: calc(0.5rem * var(--tw-space-y-reverse))
}

.space-y-4 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-y-reverse: 0;
	margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
	margin-bottom: calc(1rem * var(--tw-space-y-reverse))
}

.space-y-6 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-y-reverse: 0;
	margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
	margin-bottom: calc(1.5rem * var(--tw-space-y-reverse))
}

.overflow-hidden {
	overflow: hidden
}

.overflow-y-auto {
	overflow-y: auto
}

.whitespace-nowrap {
	white-space: nowrap
}

.rounded-button {
	border-radius: 8px
}

.rounded-full {
	border-radius: 9999px
}

.rounded-lg {
	border-radius: 16px
}

.rounded-xl {
	border-radius: 20px
}

.rounded-l-lg {
	border-top-left-radius: 16px;
	border-bottom-left-radius: 16px
}

.rounded-r-lg {
	border-top-right-radius: 16px;
	border-bottom-right-radius: 16px
}

.border {
	border-width: 1px
}

.border-b {
	border-bottom-width: 1px
}

.border-r {
	border-right-width: 1px
}

.border-t {
	border-top-width: 1px
}

.border-gray-200 {
	--tw-border-opacity: 1;
	border-color: rgb(229 231 235 / var(--tw-border-opacity, 1))
}

.border-gray-300 {
	--tw-border-opacity: 1;
	border-color: rgb(209 213 219 / var(--tw-border-opacity, 1))
}

.border-gray-800 {
	--tw-border-opacity: 1;
	border-color: rgb(31 41 55 / var(--tw-border-opacity, 1))
}

.bg-blue-600 {
	--tw-bg-opacity: 1;
	background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1))
}

.bg-gray-100 {
	--tw-bg-opacity: 1;
	background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1))
}

.bg-gray-50 {
	--tw-bg-opacity: 1;
	background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1))
}

.bg-gray-800 {
	--tw-bg-opacity: 1;
	background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1))
}

.bg-gray-900 {
	--tw-bg-opacity: 1;
	background-color: rgb(17 24 39 / var(--tw-bg-opacity, 1))
}

.bg-primary {
	--tw-bg-opacity: 1;
	background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1))
}

.bg-white {
	--tw-bg-opacity: 1;
	background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1))
}

.object-cover {
	object-fit: cover
}

.p-4 {
	padding: 1rem
}

.p-6 {
	padding: 1.5rem
}

.p-8 {
	padding: 2rem
}

.px-1 {
	padding-left: 0.25rem;
	padding-right: 0.25rem
}

.px-3 {
	padding-left: 0.2rem;
	padding-right: 0.75rem
}

.px-4 {
	padding-left: 1rem;
	padding-right: 1rem
}

.px-6 {
	padding-left: 1.5rem;
	padding-right: 1.5rem
}

.px-8 {
	padding-left: 2rem;
	padding-right: 2rem
}

.py-12 {
	padding-top: 3rem;
	padding-bottom: 3rem
}

.py-16 {
	padding-top: 4rem;
	padding-bottom: 4rem
}

.py-2 {
	padding-top: 0.5rem;
	padding-bottom: 0.5rem
}

.py-3 {
	padding-top: 0.75rem;
	padding-bottom: 0.75rem
}

.py-4 {
	padding-top: 1rem;
	padding-bottom: 1rem
}

.py-6 {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem
}

.pt-16 {
	padding-top: 4rem
}

.pt-20 {
	padding-top: 5rem
}

.pt-8 {
	padding-top: 2rem
}

.text-left {
	text-align: left
}

.text-center {
	text-align: center
}

.text-2xl {
	font-size: 1.5rem;
	line-height: 2rem
}

.text-3xl {
	font-size: 1.875rem;
	line-height: 2.25rem
}

.text-4xl {
	font-size: 2.25rem;
	line-height: 2.5rem
}

.text-lg {
	font-size: 1.125rem;
	line-height: 1.75rem
}

.text-sm {
	font-size: 0.875rem;
	line-height: 1.25rem
}

.text-xl {
	font-size: 1.25rem;
	line-height: 1.75rem
}

.font-bold {
	font-weight: 700
}

.font-medium {
	font-weight: 500
}

.font-semibold {
	font-weight: 600
}

.text-gray-400 {
	--tw-text-opacity: 1;
	color: rgb(156 163 175 / var(--tw-text-opacity, 1))
}

.text-gray-500 {
	--tw-text-opacity: 1;
	color: rgb(107 114 128 / var(--tw-text-opacity, 1))
}

.text-gray-600 {
	--tw-text-opacity: 1;
	color: rgb(75 85 99 / var(--tw-text-opacity, 1))
}

.text-gray-700 {
	--tw-text-opacity: 1;
	color: rgb(55 65 81 / var(--tw-text-opacity, 1))
}

.text-gray-800 {
	--tw-text-opacity: 1;
	color: rgb(31 41 55 / var(--tw-text-opacity, 1))
}

.text-gray-900 {
	--tw-text-opacity: 1;
	color: rgb(17 24 39 / var(--tw-text-opacity, 1))
}

.text-primary {
	--tw-text-opacity: 1;
	color: rgb(37 99 235 / var(--tw-text-opacity, 1))
}

.text-white {
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity, 1))
}

.shadow-2xl {
	--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
	--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.shadow-lg {
	--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
	--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.shadow-sm {
	--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
	--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.transition-colors {
	transition-property: color, background-color, border-color, fill, stroke, -webkit-text-decoration-color;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, -webkit-text-decoration-color;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 150ms
}

.hover\:bg-gray-100:hover {
	--tw-bg-opacity: 1;
	background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1))
}

.hover\:bg-gray-200:hover {
	--tw-bg-opacity: 1;
	background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1))
}

.hover\:bg-primary\/90:hover {
	background-color: rgb(37 99 235 / 0.9)
}

.hover\:text-gray-600:hover {
	--tw-text-opacity: 1;
	color: rgb(75 85 99 / var(--tw-text-opacity, 1))
}

.hover\:text-primary:hover {
	--tw-text-opacity: 1;
	color: rgb(37 99 235 / var(--tw-text-opacity, 1))
}

.hover\:text-primary\/90:hover {
	color: rgb(37 99 235 / 0.9)
}

.hover\:text-white:hover {
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity, 1))
}

.hover\:underline:hover {
	-webkit-text-decoration-line: underline;
	text-decoration-line: underline
}

.focus\:outline-none:focus {
	outline: 2px solid transparent;
	outline-offset: 2px
}

@media (min-width: 640px) {
	.sm\:grid-cols-3 {
		grid-template-columns: repeat(3, minmax(0, 1fr))
	}
}

@media (min-width: 768px) {
	.md\:col-span-4 {
		grid-column: span 4 / span 4
	}

	.md\:mb-12 {
		margin-bottom: 3rem
	}

	.md\:grid-cols-2 {
		grid-template-columns: repeat(2, minmax(0, 1fr))
	}

	.md\:grid-cols-4 {
		grid-template-columns: repeat(4, minmax(0, 1fr))
	}

	.md\:gap-8 {
		gap: 2rem
	}

	.md\:space-x-4 > :not([hidden]) ~ :not([hidden]) {
		--tw-space-x-reverse: 0;
		margin-right: calc(1rem * var(--tw-space-x-reverse));
		margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)))
	}

	.md\:px-4 {
		padding-left: 1rem;
		padding-right: 1rem
	}

	.md\:px-6 {
		padding-left: 1.5rem;
		padding-right: 1.5rem
	}

	.md\:py-16 {
		padding-top: 4rem;
		padding-bottom: 4rem
	}
}

@media (min-width: 1024px) {
	.lg\:col-span-1 {
		grid-column: span 1 / span 1
	}

	.lg\:flex {
		display: flex
	}

	.lg\:hidden {
		display: none
	}

	.lg\:grid-cols-5 {
		grid-template-columns: repeat(5, minmax(0, 1fr))
	}
}