*,: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 / .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 / .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: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Switzer,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;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,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,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,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{--tw-bg-opacity: 1;background-color:rgb(var(--c-bg) / var(--tw-bg-opacity, 1));font-family:Switzer,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;--tw-text-opacity: 1;color:rgb(var(--c-ink) / var(--tw-text-opacity, 1));font-weight:430;overflow-x:clip}::-moz-selection{background:rgb(var(--c-ink) / .14)}::selection{background:rgb(var(--c-ink) / .14)}:focus-visible{outline:2px solid rgb(var(--c-accent));outline-offset:2px}h1,h2,h3,h4,h5,h6{font-family:Switzer,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;letter-spacing:-.025em}.prose-link,main p a{text-decoration-line:underline;text-decoration-color:rgb(var(--c-ink) / .3);text-underline-offset:4px;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.prose-link:hover,main p a:hover{text-decoration-color:rgb(var(--c-accent) / 1)}.container-page{width:min(1120px,100% - 3rem);margin-inline:auto}.container-narrow{width:min(760px,100% - 3rem);margin-inline:auto}.hairline{border-top-width:1px;--tw-border-opacity: 1;border-color:rgb(var(--c-line) / var(--tw-border-opacity, 1))}.meta{font-size:.75rem;line-height:1rem;text-transform:uppercase;letter-spacing:.18em;color:rgb(var(--c-ink) / .55)}.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.22em;color:rgb(var(--c-ink) / .55)}.dot-accent{display:inline-block;height:.375rem;width:.375rem;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(var(--c-accent) / var(--tw-bg-opacity, 1))}.surface{background:var(--card);border:1px solid rgb(var(--c-line));border-radius:1.25rem;box-shadow:0 1px 2px rgb(var(--shadow) / calc(var(--shadow-strength) * .4))}.surface-hover{transition:transform .45s cubic-bezier(.16,1,.3,1),border-color .3s,box-shadow .45s,background-color .3s}.surface-hover:hover{transform:translateY(-3px);background:var(--card-hover);border-color:rgb(var(--c-ink) / .18);box-shadow:0 24px 50px -30px rgb(var(--shadow) / var(--shadow-strength))}.tag{display:inline-flex;align-items:center;gap:.25rem;border-radius:9999px;border-width:1px;--tw-border-opacity: 1;border-color:rgb(var(--c-line) / var(--tw-border-opacity, 1));padding:.25rem .625rem;font-size:11px;font-weight:500;letter-spacing:.025em;color:rgb(var(--c-ink) / .7);background:rgb(var(--c-bg-2))}.icon-tile{display:grid;height:2.5rem;width:2.5rem;place-items:center;border-radius:.75rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(var(--c-line) / var(--tw-border-opacity, 1));color:rgb(var(--c-ink) / .8);background:rgb(var(--c-bg-2))}.logo-chip{display:flex;flex-shrink:0;align-items:center;justify-content:center;overflow:hidden;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));border:1px solid rgb(0 0 0 / .06);box-shadow:0 0 0 1px rgb(var(--c-line) / .6),0 8px 20px -14px #00000059}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;font-weight:600;height:3rem;padding:0 1.4rem;border-radius:999px;font-size:.95rem;transition:transform .25s cubic-bezier(.16,1,.3,1),background-color .2s,box-shadow .3s,border-color .2s,color .2s,opacity .2s}.btn:active{transform:scale(.98)}.btn-sm{height:2.5rem;padding:0 1.1rem;font-size:.875rem}.btn-primary{--tw-bg-opacity: 1;background-color:rgb(var(--c-ink) / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(var(--c-bg) / var(--tw-text-opacity, 1));box-shadow:0 10px 26px -14px rgb(var(--shadow) / calc(var(--shadow-strength) + .2)),inset 0 1px #ffffff1f}.btn-primary:hover{transform:translateY(-1px);opacity:.92}.btn-ink{--tw-bg-opacity: 1;background-color:rgb(var(--c-ink) / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(var(--c-bg) / var(--tw-text-opacity, 1))}.btn-ink:hover{transform:translateY(-1px);opacity:.92}.btn-ghost{border:1px solid rgb(var(--c-ink) / .14);color:rgb(var(--c-ink));background:rgb(var(--c-bg) / .5);backdrop-filter:blur(8px)}.btn-ghost:hover{background:rgb(var(--c-ink) / .05);border-color:rgb(var(--c-ink) / .26)}.btn-quiet{color:rgb(var(--c-ink) / .6);padding:0 .6rem}.btn-quiet:hover{color:rgb(var(--c-ink))}.field{width:100%;border-radius:.75rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(var(--c-ink) / var(--tw-text-opacity, 1))}.field::-moz-placeholder{color:rgb(var(--c-ink) / .4)}.field::placeholder{color:rgb(var(--c-ink) / .4)}.field{background:rgb(var(--c-bg));border:1px solid rgb(var(--c-line));transition:border-color .2s,box-shadow .2s}.field:focus{outline:none;border-color:rgb(var(--c-accent) / .7);box-shadow:0 0 0 3px rgb(var(--c-accent) / .15)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.-bottom-0\.5{bottom:-.125rem}.-bottom-5{bottom:-1.25rem}.-left-16{left:-4rem}.-left-7{left:-1.75rem}.-right-0\.5{right:-.125rem}.-right-8{right:-2rem}.bottom-14{bottom:3.5rem}.bottom-2{bottom:.5rem}.left-6{left:1.5rem}.left-\[7px\]{left:7px}.top-0{top:0}.top-1\.5{top:.375rem}.top-2{top:.5rem}.top-8{top:2rem}.z-50{z-index:50}.col-span-2{grid-column:span 2 / span 2}.mx-auto{margin-left:auto;margin-right:auto}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.my-8{margin-top:2rem;margin-bottom:2rem}.\!mt-0{margin-top:0!important}.\!mt-6{margin-top:1.5rem!important}.mb-1\.5{margin-bottom:.375rem}.mb-10{margin-bottom:2.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-7{margin-bottom:1.75rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-2{margin-top:.5rem}.mt-28{margin-top:7rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.mt-9{margin-top:2.25rem}.mt-auto{margin-top:auto}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.\!h-9{height:2.25rem!important}.\!h-auto{height:auto!important}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[15px\]{height:15px}.h-\[4\.5rem\]{height:4.5rem}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[15px\]{width:15px}.w-\[4\.5rem\]{width:4.5rem}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.max-w-2xl{max-width:42rem}.max-w-\[19rem\]{max-width:19rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.basis-full{flex-basis:100%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-y{resize:vertical}.scroll-mt-24{scroll-margin-top:6rem}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-16{gap:4rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-3\.5{gap:.875rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.-space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-.5rem * var(--tw-space-x-reverse));margin-left:calc(-.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-20>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * 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))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-base-300\/70>:not([hidden])~:not([hidden]){border-color:rgb(var(--c-line) / .7)}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.\!rounded-2xl{border-radius:1rem!important}.\!rounded-\[2rem\]{border-radius:2rem!important}.rounded-2xl{border-radius:1rem}.rounded-\[1\.4rem\]{border-radius:1.4rem}.rounded-\[1\.65rem\]{border-radius:1.65rem}.rounded-\[2rem\]{border-radius:2rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-t{border-top-width:1px}.border-base-300{--tw-border-opacity: 1;border-color:rgb(var(--c-line) / var(--tw-border-opacity, 1))}.border-base-content{--tw-border-opacity: 1;border-color:rgb(var(--c-ink) / var(--tw-border-opacity, 1))}.border-base-content\/50{border-color:rgb(var(--c-ink) / .5)}.\!bg-base-100\/80{background-color:rgb(var(--c-bg) / .8)!important}.bg-accent{--tw-bg-opacity: 1;background-color:rgb(var(--c-accent) / var(--tw-bg-opacity, 1))}.bg-base-100{--tw-bg-opacity: 1;background-color:rgb(var(--c-bg) / var(--tw-bg-opacity, 1))}.bg-base-200{--tw-bg-opacity: 1;background-color:rgb(var(--c-bg-2) / var(--tw-bg-opacity, 1))}.bg-base-300{--tw-bg-opacity: 1;background-color:rgb(var(--c-line) / var(--tw-bg-opacity, 1))}.bg-base-content{--tw-bg-opacity: 1;background-color:rgb(var(--c-ink) / var(--tw-bg-opacity, 1))}.bg-base-content\/25{background-color:rgb(var(--c-ink) / .25)}.bg-base-content\/30{background-color:rgb(var(--c-ink) / .3)}.bg-base-content\/40{background-color:rgb(var(--c-ink) / .4)}.bg-base-content\/60{background-color:rgb(var(--c-ink) / .6)}.bg-base-content\/70{background-color:rgb(var(--c-ink) / .7)}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.from-base-content\/25{--tw-gradient-from: rgb(var(--c-ink) / .25) var(--tw-gradient-from-position);--tw-gradient-to: rgb(var(--c-ink) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-base-300{--tw-gradient-to: rgb(var(--c-line) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(var(--c-line) / 1) var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.fill-base-100{fill:rgb(var(--c-bg) / 1)}.fill-base-content{fill:rgb(var(--c-ink) / 1)}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}.\!px-3{padding-left:.75rem!important;padding-right:.75rem!important}.\!px-3\.5{padding-left:.875rem!important;padding-right:.875rem!important}.\!px-4{padding-left:1rem!important;padding-right:1rem!important}.\!py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.\!py-2\.5{padding-top:.625rem!important;padding-bottom:.625rem!important}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-14{padding-bottom:3.5rem}.pb-16{padding-bottom:4rem}.pb-20{padding-bottom:5rem}.pb-4{padding-bottom:1rem}.pb-7{padding-bottom:1.75rem}.pl-7{padding-left:1.75rem}.pt-14{padding-top:3.5rem}.pt-16{padding-top:4rem}.pt-20{padding-top:5rem}.pt-24{padding-top:6rem}.pt-28{padding-top:7rem}.pt-32{padding-top:8rem}.pt-6{padding-top:1.5rem}.pt-7{padding-top:1.75rem}.text-center{text-align:center}.font-display{font-family:Switzer,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.\!text-\[13px\]{font-size:13px!important}.\!text-xs{font-size:.75rem!important;line-height:1rem!important}.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-5xl{font-size:3rem;line-height:1}.text-\[0\.95rem\]{font-size:.95rem}.text-\[0\.98rem\]{font-size:.98rem}.text-\[1\.05rem\]{font-size:1.05rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[15px\]{font-size:15px}.text-\[2\.5rem\]{font-size:2.5rem}.text-\[2\.75rem\]{font-size:2.75rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-\[1\.02\]{line-height:1.02}.leading-\[1\.04\]{line-height:1.04}.leading-\[1\.08\]{line-height:1.08}.leading-\[1\.1\]{line-height:1.1}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-tight{letter-spacing:-.025em}.text-\[\#ff3b3b\]{--tw-text-opacity: 1;color:rgb(255 59 59 / var(--tw-text-opacity, 1))}.text-accent{--tw-text-opacity: 1;color:rgb(var(--c-accent) / var(--tw-text-opacity, 1))}.text-base-100{--tw-text-opacity: 1;color:rgb(var(--c-bg) / var(--tw-text-opacity, 1))}.text-base-content{--tw-text-opacity: 1;color:rgb(var(--c-ink) / var(--tw-text-opacity, 1))}.text-base-content\/30{color:rgb(var(--c-ink) / .3)}.text-base-content\/35{color:rgb(var(--c-ink) / .35)}.text-base-content\/40{color:rgb(var(--c-ink) / .4)}.text-base-content\/50{color:rgb(var(--c-ink) / .5)}.text-base-content\/55{color:rgb(var(--c-ink) / .55)}.text-base-content\/60{color:rgb(var(--c-ink) / .6)}.text-base-content\/65{color:rgb(var(--c-ink) / .65)}.text-base-content\/70{color:rgb(var(--c-ink) / .7)}.text-base-content\/75{color:rgb(var(--c-ink) / .75)}.text-base-content\/80{color:rgb(var(--c-ink) / .8)}.text-neutral-400{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity, 1))}.decoration-accent{text-decoration-color:rgb(var(--c-accent) / 1)}.underline-offset-4{text-underline-offset:4px}.opacity-40{opacity:.4}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(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-\[0_6px_18px_-8px_rgba\(0\,0\,0\,0\.4\)\]{--tw-shadow: 0 6px 18px -8px rgba(0,0,0,.4);--tw-shadow-colored: 0 6px 18px -8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-base-100{--tw-ring-opacity: 1;--tw-ring-color: rgb(var(--c-bg) / var(--tw-ring-opacity, 1))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}:root{color-scheme:light;--c-bg: 255 255 255;--c-bg-2: 246 246 246;--c-line: 230 230 230;--c-ink: 10 10 10;--c-accent: 255 59 48;--card: rgb(255 255 255);--card-hover: rgb(255 255 255);--light-a: rgb(0 0 0 / .035);--light-b: rgb(0 0 0 / .02);--lacquer-base: linear-gradient(180deg, #ffffff 0%, #fafafa 100%);--shimmer: linear-gradient(100deg, #0a0a0a 0%, #0a0a0a 30%, #8c8c8c 50%, #0a0a0a 70%, #0a0a0a 100%);--shadow: 0 0 0;--shadow-strength: .1;--edge: rgb(0 0 0 / .08);--grain-opacity: .035;--grain-blend: multiply}:root[data-theme=dark]{color-scheme:dark;--c-bg: 11 11 12;--c-bg-2: 20 20 22;--c-line: 38 38 41;--c-ink: 237 237 237;--c-accent: 255 98 89;--card: rgb(19 19 21);--card-hover: rgb(24 24 26);--light-a: rgb(255 255 255 / .07);--light-b: rgb(255 255 255 / .03);--lacquer-base: linear-gradient(170deg, #18181a 0%, #0b0b0c 65%);--shimmer: linear-gradient(100deg, #9a9a9a 0%, #ededed 30%, #ffffff 50%, #ededed 70%, #9a9a9a 100%);--shadow: 0 0 0;--shadow-strength: .7;--edge: rgb(255 255 255 / .1);--grain-opacity: .06;--grain-blend: overlay}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--c-bg: 11 11 12;--c-bg-2: 20 20 22;--c-line: 38 38 41;--c-ink: 237 237 237;--c-accent: 255 98 89;--card: rgb(19 19 21);--card-hover: rgb(24 24 26);--light-a: rgb(255 255 255 / .07);--light-b: rgb(255 255 255 / .03);--lacquer-base: linear-gradient(170deg, #18181a 0%, #0b0b0c 65%);--shimmer: linear-gradient(100deg, #9a9a9a 0%, #ededed 30%, #ffffff 50%, #ededed 70%, #9a9a9a 100%);--shadow: 0 0 0;--shadow-strength: .7;--edge: rgb(255 255 255 / .1);--grain-opacity: .06;--grain-blend: overlay}}.lacquer{position:relative;isolation:isolate;background:radial-gradient(60% 80% at 85% -15%,var(--light-a) 0%,transparent 60%),radial-gradient(55% 75% at -10% 110%,var(--light-b) 0%,transparent 60%),var(--lacquer-base);overflow:hidden}.lacquer-edge{border-bottom:1px solid rgb(var(--c-line) / .8)}.grain:after{content:"";position:absolute;inset:0;z-index:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:var(--grain-opacity);mix-blend-mode:var(--grain-blend);pointer-events:none}.lacquer>*{position:relative;z-index:1}.text-shimmer{background:var(--shimmer);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 10s ease-in-out infinite}@keyframes shimmer{0%,to{background-position:100% 0}50%{background-position:0% 0}}.chip{border-radius:1rem;padding:.8rem 1.05rem;background:rgb(var(--c-bg) / .78);border:1px solid var(--edge);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);box-shadow:0 18px 40px -22px rgb(var(--shadow) / calc(var(--shadow-strength) + .15))}.screen{border-radius:1rem;border:1px solid var(--edge);box-shadow:0 40px 100px -45px rgb(var(--shadow) / calc(var(--shadow-strength) + .2)),0 0 0 1px #ffffff05;overflow:hidden;background:rgb(var(--c-bg-2))}.screen img{display:block;width:100%;height:auto}.window-bar{display:flex;height:2.5rem;align-items:center;gap:.5rem;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(var(--c-line) / var(--tw-border-opacity, 1));padding-left:1rem;padding-right:1rem;font-size:11px;color:rgb(var(--c-ink) / .5);background:rgb(var(--c-bg-2))}.window-bar i{width:10px;height:10px;border-radius:999px;background:rgb(var(--c-ink) / .14)}.portrait{position:relative;padding:10px;border-radius:2.25rem;background:var(--card);border:1px solid rgb(var(--c-line));box-shadow:0 40px 90px -50px rgb(var(--shadow) / calc(var(--shadow-strength) + .25))}.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent);mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent)}.marquee-track{display:flex;width:-moz-max-content;width:max-content}.marquee-set{display:flex;align-items:center;gap:2.5rem;padding-right:2.5rem}.prose-ac{color:rgb(var(--c-ink) / .78);font-size:1.0625rem;line-height:1.75}.prose-ac>*+*{margin-top:1.1rem}.prose-ac h2{color:rgb(var(--c-ink));font-size:1.75rem;font-weight:650;line-height:1.2;margin-top:3.25rem}.prose-ac h3{color:rgb(var(--c-ink));font-size:1.2rem;font-weight:600;margin-top:2rem}.prose-ac h2+*,.prose-ac h3+*{margin-top:.75rem}.prose-ac strong{color:rgb(var(--c-ink));font-weight:600}.prose-ac ul{list-style:none;padding:0}.prose-ac ul>li{position:relative;padding-left:1.4rem}.prose-ac ul>li+li{margin-top:.5rem}.prose-ac ul>li:before{content:"";position:absolute;left:.25rem;top:.72em;width:5px;height:5px;border-radius:999px;background:rgb(var(--c-ink) / .4)}.prose-ac ol{list-style:decimal;padding-left:1.3rem}.prose-ac ol>li+li{margin-top:.5rem}.prose-ac a{text-decoration-line:underline;text-decoration-color:rgb(var(--c-ink) / .3);text-underline-offset:4px}.prose-ac a:hover{text-decoration-color:rgb(var(--c-accent) / 1)}.prose-ac code:not(pre code){font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.88em;padding:.12em .4em;border-radius:.4rem;background:rgb(var(--c-bg-2));border:1px solid rgb(var(--c-line))}.prose-ac pre:not(.astro-code){padding:1rem 1.2rem;border-radius:1rem;overflow-x:auto;font-size:.875rem;background:rgb(var(--c-bg-2));border:1px solid rgb(var(--c-line))}.prose-ac figure,.prose-ac .not-prose{margin-top:2rem;margin-bottom:2rem}.prose-ac .breakout{--bw: min(1040px, 100vw - 3rem);width:var(--bw);margin-left:calc(50% - var(--bw) / 2)}.astro-code{background:transparent!important;margin:0;padding:1.1rem 1.25rem;overflow-x:auto;font-size:.84rem;line-height:1.7}@media(max-width:640px){.astro-code{font-size:.75rem;padding:1rem}}.astro-code,.astro-code span{color:var(--shiki-light)}:root[data-theme=dark] .astro-code,:root[data-theme=dark] .astro-code span{color:var(--shiki-dark)}@media(prefers-color-scheme:dark){:root:not([data-theme]) .astro-code,:root:not([data-theme]) .astro-code span{color:var(--shiki-dark)}}:root .only-dark{display:none}:root[data-theme=dark] .only-dark{display:block}:root[data-theme=dark] .only-light{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme]) .only-dark{display:block}:root:not([data-theme]) .only-light{display:none}}.nav{transition:background-color .3s,backdrop-filter .3s,border-color .3s;border-bottom:1px solid transparent}.scrolled .nav{background:rgb(var(--c-bg) / .8);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border-color:rgb(var(--c-line) / .8)}.arrow-nudge{display:inline-block;transition:transform .22s cubic-bezier(.2,.7,.2,1)}.group:hover .arrow-nudge,a:hover .arrow-nudge,button:hover .arrow-nudge{transform:translate(3px)}.link-style{text-decoration-line:underline;text-decoration-color:rgb(var(--c-ink) / .3);text-underline-offset:4px;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.link-style:hover{text-decoration-color:rgb(var(--c-accent) / 1)}.screenshot-frame{border-radius:18px;border:1px solid rgb(var(--c-line));box-shadow:0 30px 80px -40px rgb(var(--shadow) / calc(var(--shadow-strength) + .2));overflow:hidden}@keyframes draw-line{to{stroke-dashoffset:0}}.draw-on-mount{stroke-dasharray:2000;stroke-dashoffset:2000;animation:draw-line 2.4s cubic-bezier(.22,1,.36,1) forwards}@media(prefers-reduced-motion:no-preference){.js [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);transition-delay:var(--d, 0s)}.js [data-reveal=scale]{transform:translateY(26px) scale(.97)}.js [data-reveal].is-in,.js [data-reveal].split{opacity:1;transform:none}.js .split .w{display:inline-block;opacity:0;transform:translateY(.4em);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--d, 0s) + var(--wi) * 45ms)}.js .split .w-fade{opacity:0;transition:opacity 1.1s ease;transition-delay:calc(var(--d, 0s) + var(--wi) * 45ms + .1s)}.js .split.is-in .w,.js .split.is-in .w-fade{opacity:1;transform:none}.scroll-progress{position:fixed;inset:0 0 auto;z-index:60;height:2px;background:rgb(var(--c-accent));transform:scaleX(0);transform-origin:left;pointer-events:none}.marquee-track{animation:marquee 48s linear infinite}.marquee:hover .marquee-track{animation-play-state:paused}.float{animation:float 7s ease-in-out infinite}.float-late{animation:float 8s ease-in-out 1.2s infinite}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee{-webkit-mask-image:none;mask-image:none}.marquee-track{width:auto;justify-content:center}.marquee-set{flex-wrap:wrap;justify-content:center;row-gap:1rem;padding-right:0}.marquee-dup{display:none}.text-shimmer{animation:none}}@keyframes marquee{to{transform:translate(-50%)}}.marquee-track.is-gsap{animation:none}.scroll-progress{display:none}@media(prefers-reduced-motion:no-preference){.js .scroll-progress{display:block}}[data-magnetic]{display:inline-flex}[data-magnetic]>.btn{transition-property:background-color,box-shadow,border-color,color,opacity}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:clip}@keyframes float{0%,to{translate:0 0}50%{translate:0 -8px}}.last\:pb-0:last-child{padding-bottom:0}.hover\:border-base-content\/30:hover{border-color:rgb(var(--c-ink) / .3)}.hover\:border-base-content\/60:hover{border-color:rgb(var(--c-ink) / .6)}.hover\:bg-base-content\/\[0\.04\]:hover{background-color:rgb(var(--c-ink) / .04)}.hover\:text-base-content:hover{--tw-text-opacity: 1;color:rgb(var(--c-ink) / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:rotate-45{--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:rotate-\[-8deg\]{--tw-rotate: -8deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-base-content\/30{border-color:rgb(var(--c-ink) / .3)}.group:hover .group-hover\:bg-base-content{--tw-bg-opacity: 1;background-color:rgb(var(--c-ink) / var(--tw-bg-opacity, 1))}.group:hover .group-hover\:text-base-content{--tw-text-opacity: 1;color:rgb(var(--c-ink) / var(--tw-text-opacity, 1))}.group:hover .group-hover\:opacity-100{opacity:1}@media(min-width:640px){.sm\:ml-2{margin-left:.5rem}.sm\:block{display:block}.sm\:inline-block{display:inline-block}.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:inline-flex{display:inline-flex}.sm\:hidden{display:none}.sm\:h-14{height:3.5rem}.sm\:h-20{height:5rem}.sm\:w-14{width:3.5rem}.sm\:w-20{width:5rem}.sm\:max-w-\[22rem\]{max-width:22rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:gap-2{gap:.5rem}.sm\:p-10{padding:2.5rem}.sm\:p-12{padding:3rem}.sm\:p-20{padding:5rem}.sm\:p-3{padding:.75rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:p-7{padding:1.75rem}.sm\:p-8{padding:2rem}.sm\:p-9{padding:2.25rem}.sm\:pb-20{padding-bottom:5rem}.sm\:pb-24{padding-bottom:6rem}.sm\:pb-28{padding-bottom:7rem}.sm\:pt-16{padding-top:4rem}.sm\:pt-40{padding-top:10rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-6xl{font-size:3.75rem;line-height:1}.sm\:text-7xl{font-size:4.5rem;line-height:1}.sm\:text-\[1\.4rem\]{font-size:1.4rem}.sm\:text-\[2\.5rem\]{font-size:2.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1024px){.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:mr-0{margin-right:0}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[1\.2fr_1fr\]{grid-template-columns:1.2fr 1fr}.lg\:grid-cols-\[1\.35fr_1fr\]{grid-template-columns:1.35fr 1fr}.lg\:grid-cols-\[1\.3fr_1fr\]{grid-template-columns:1.3fr 1fr}.lg\:grid-cols-\[1\.6fr_1fr_1fr_1\.2fr\]{grid-template-columns:1.6fr 1fr 1fr 1.2fr}.lg\:grid-cols-\[1fr_1\.15fr\]{grid-template-columns:1fr 1.15fr}.lg\:grid-cols-\[1fr_1\.1fr\]{grid-template-columns:1fr 1.1fr}.lg\:grid-cols-\[1fr_1\.25fr\]{grid-template-columns:1fr 1.25fr}.lg\:gap-12{gap:3rem}.lg\:gap-14{gap:3.5rem}.lg\:gap-16{gap:4rem}.lg\:p-14{padding:3.5rem}.lg\:text-\[4\.6rem\]{font-size:4.6rem}}.theme-choice[data-astro-cid-sz7xmlte][aria-pressed=true]{color:rgb(var(--c-ink));background:rgb(var(--c-bg));box-shadow:0 1px #ffffff0f inset,0 4px 14px -6px rgb(var(--shadow) / .5),0 0 0 1px rgb(var(--c-line))}
