/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:host,:root{--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-600:oklch(57.7% .245 27.325);--color-green-400:oklch(79.2% .209 151.711);--color-green-600:oklch(62.7% .194 149.214);--color-emerald-500:oklch(69.6% .17 162.48);--color-sky-500:oklch(68.5% .169 237.323);--color-blue-500:oklch(62.3% .214 259.815);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-zinc-50:oklch(98.5% 0 0);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-300:oklch(87.1% .006 286.286);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-neutral-100:oklch(97% 0 0);--color-black:#000;--color-white:#fff;--spacing:.25rem;--breakpoint-md:48rem;--container-sm:24rem;--container-lg:32rem;--container-xl:36rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-7xl:4.5rem;--text-7xl--line-height:1;--text-8xl:6rem;--text-8xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-normal:0em;--leading-relaxed:1.625;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1) infinite;--blur-xs:4px;--blur-sm:8px;--blur-md:12px;--blur-lg:16px;--blur-xl:24px;--blur-2xl:40px;--aspect-video:16/9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--site-font-family);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*,::backdrop,:after,:before{border-color:var(--color-gray-200,currentColor)}::file-selector-button{border-color:var(--color-gray-200,currentColor)}button{transition-property:all}h1,h2,h3,h4,h5,h6{color:var(--site-heading)}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.inset-x-0{inset-inline:0}.top-0{top:0}.top-1{top:var(--spacing)}.top-1\/2{top:50%}.top-4{top:calc(var(--spacing) * 4)}.top-6{top:calc(var(--spacing) * 6)}.top-full{top:100%}.top-px{top:1px}.right-0{right:0}.right-4{right:calc(var(--spacing) * 4)}.right-6{right:calc(var(--spacing) * 6)}.bottom-0\.5{bottom:calc(var(--spacing) * .5)}.left-0{left:0}.left-1\/2{left:50%}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.-mx-3{margin-inline:calc(var(--spacing) * -3)}.mx-auto{margin-inline:auto}.\!my-8{margin-block:calc(var(--spacing) * 8)!important}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after,.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after,.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose{--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:oklab(21% -.00316127 -.0338527/.1);--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733);font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-lg{font-size:1.125rem;line-height:1.77778}.prose-lg :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.33333em;margin-bottom:1.33333em}.prose-lg :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.09091em;margin-bottom:1.09091em;font-size:1.22222em;line-height:1.45455}.prose-lg :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.66667em;margin-bottom:1.66667em;padding-inline-start:1em}.prose-lg :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:.833333em;font-size:2.66667em;line-height:1}.prose-lg :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.86667em;margin-bottom:1.06667em;font-size:1.66667em;line-height:1.33333}.prose-lg :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.66667em;margin-bottom:.666667em;font-size:1.33333em;line-height:1.5}.prose-lg :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.77778em;margin-bottom:.444444em;line-height:1.55556}.prose-lg :where(img):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-lg :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.77778em;margin-bottom:1.77778em}.prose-lg :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-lg :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.77778em;margin-bottom:1.77778em}.prose-lg :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.222222em;padding-inline-end:.444444em;padding-bottom:.222222em;border-radius:.3125rem;padding-inline-start:.444444em;font-size:.888889em}.prose-lg :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.888889em}.prose-lg :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.866667em}.prose-lg :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.prose-lg :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:1em;padding-inline-end:1.5em;padding-bottom:1em;border-radius:.375rem;margin-top:2em;margin-bottom:2em;padding-inline-start:1.5em;font-size:.888889em;line-height:1.75}.prose-lg :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-lg :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.33333em;margin-bottom:1.33333em;padding-inline-start:1.55556em}.prose-lg :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.666667em;margin-bottom:.666667em}.prose-lg :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-lg :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.444444em}.prose-lg :where(.prose-lg>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.888889em;margin-bottom:.888889em}.prose-lg :where(.prose-lg>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.33333em}.prose-lg :where(.prose-lg>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.33333em}.prose-lg :where(.prose-lg>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.33333em}.prose-lg :where(.prose-lg>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.33333em}.prose-lg :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.888889em;margin-bottom:.888889em}.prose-lg :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.33333em;margin-bottom:1.33333em}.prose-lg :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.33333em}.prose-lg :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.666667em;padding-inline-start:1.55556em}.prose-lg :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:3.11111em;margin-bottom:3.11111em}.prose-lg :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-lg :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-lg :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-lg :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.888889em;line-height:1.5}.prose-lg :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.75em;padding-bottom:.75em;padding-inline-start:.75em}.prose-lg :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-lg :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-lg :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.75em;padding-inline-end:.75em;padding-bottom:.75em;padding-inline-start:.75em}.prose-lg :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-lg :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-lg :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.77778em;margin-bottom:1.77778em}.prose-lg :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-lg :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1em;font-size:.888889em;line-height:1.5}.prose-lg :where(.prose-lg>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(.prose-lg>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.\!mt-1{margin-top:var(--spacing)!important}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-20{margin-top:calc(var(--spacing) * 20)}.mt-24{margin-top:calc(var(--spacing) * 24)}.mt-auto{margin-top:auto}.mr-1{margin-right:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.mb-32{margin-bottom:calc(var(--spacing) * 32)}.mb-\[\.2rem\]{margin-bottom:.2rem}.mb-\[16rem\]{margin-bottom:16rem}.-ml-2{margin-left:calc(var(--spacing) * -2)}.ml-1{margin-left:var(--spacing)}.ml-\[\.2rem\]{margin-left:.2rem}.ml-auto{margin-left:auto}.no-scrollbar{scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.table{display:table}.aspect-video{aspect-ratio:var(--aspect-video)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-24{width:calc(var(--spacing) * 24);height:calc(var(--spacing) * 24)}.h-1{height:var(--spacing)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-12{height:calc(var(--spacing) * 12)}.h-40\.5{height:calc(var(--spacing) * 40.5)}.h-\[1px\]{height:1px}.h-\[18px\]{height:18px}.h-\[300px\]{height:300px}.h-auto{height:auto}.h-fit{height:fit-content}.h-full{height:100%}.h-px{height:1px}.max-h-\[calc\(100dvh-2rem\)\]{max-height:calc(100dvh - 2rem)}.min-h-6{min-height:calc(var(--spacing) * 6)}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-32{min-height:calc(var(--spacing) * 32)}.min-h-52{min-height:calc(var(--spacing) * 52)}.min-h-\[4\.5rem\]{min-height:4.5rem}.min-h-\[55vh\]{min-height:55vh}.min-h-\[400px\]{min-height:400px}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-11{width:calc(var(--spacing) * 11)}.w-52{width:calc(var(--spacing) * 52)}.w-\[1px\]{width:1px}.w-\[18px\]{width:18px}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.\!max-w-xl{max-width:var(--container-xl)!important}.max-w-0{max-width:0}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-\[min\(100\%\,56rem\)\]{max-width:min(100%,56rem)}.max-w-full{max-width:100%}.max-w-none{max-width:none}.max-w-screen-md{max-width:var(--breakpoint-md)}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:0}.min-w-11{min-width:calc(var(--spacing) * 11)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}.origin-left{transform-origin:0}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1)}.-translate-x-1\/2,.-translate-y-1\/2{translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1)}.translate-y-\[calc\(-50\%_-_2px\)\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-95{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-\[var\(--scale\)\]{scale:var(--scale)}.rotate-45{rotate:45deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.transform-gpu{transform:translateZ(0) var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-marquee{animation:marquee var(--duration) linear infinite}.animate-marquee-vertical{animation:marquee-vertical var(--duration) linear infinite}.animate-none{animation:none}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-help{cursor:help}.cursor-pointer{cursor:pointer}.cursor-zoom-in{cursor:zoom-in}.resize{resize:both}.resize-y{resize:vertical}.scroll-mt-8{scroll-margin-top:calc(var(--spacing) * 8)}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-around{justify-content:space-around}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.\[gap\:var\(--gap\)\]{gap:var(--gap)}.gap-0{gap:0}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-\[1px\]{gap:1px}:where(.space-y-0>:not(:last-child)){--tw-space-y-reverse:0;margin-block:0}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-10>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 10) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 10) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-16>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 16) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 16) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-24>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 24) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 24) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}:where(.space-x-3>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 3) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-4{row-gap:calc(var(--spacing) * 4)}.gap-y-10{row-gap:calc(var(--spacing) * 10)}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[2px\]{border-radius:2px}.rounded-\[15px\]{border-radius:15px}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-xs{border-radius:var(--radius-xs)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-8{border-style:var(--tw-border-style);border-width:8px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-\[\#282828\]{border-color:#282828}.border-current{border-color:currentColor}.border-transparent{border-color:#0000}.border-zinc-100{border-color:var(--color-zinc-100)}.border-zinc-200{border-color:var(--color-zinc-200)}.border-zinc-200\/60{border-color:#e4e4e799}@supports (color:color-mix(in lab,red,red)){.border-zinc-200\/60{border-color:color-mix(in oklab,var(--color-zinc-200) 60%,transparent)}}.border-zinc-800{border-color:var(--color-zinc-800)}.border-t-zinc-900{border-top-color:var(--color-zinc-900)}.bg-\[\#161616\]{background-color:#161616}.bg-\[\#E3E3E3\]{background-color:#e3e3e3}.bg-\[\#F4F4F5\]{background-color:#f4f4f5}.bg-\[\#fb7575\]{background-color:#fb7575}.bg-background{background-color:var(--background)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-current{background-color:currentColor}.bg-foreground{background-color:var(--foreground)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-green-400{background-color:var(--color-green-400)}.bg-neutral-100{background-color:var(--color-neutral-100)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/40{background-color:#fff6}@supports (color:color-mix(in lab,red,red)){.bg-white\/40{background-color:color-mix(in oklab,var(--color-white) 40%,transparent)}}.bg-zinc-50{background-color:var(--color-zinc-50)}.bg-zinc-50\/40{background-color:#fafafa66}@supports (color:color-mix(in lab,red,red)){.bg-zinc-50\/40{background-color:color-mix(in oklab,var(--color-zinc-50) 40%,transparent)}}.bg-zinc-100{background-color:var(--color-zinc-100)}.bg-zinc-100\/50{background-color:#f4f4f580}@supports (color:color-mix(in lab,red,red)){.bg-zinc-100\/50{background-color:color-mix(in oklab,var(--color-zinc-100) 50%,transparent)}}.bg-zinc-300\/30{background-color:#d4d4d84d}@supports (color:color-mix(in lab,red,red)){.bg-zinc-300\/30{background-color:color-mix(in oklab,var(--color-zinc-300) 30%,transparent)}}.bg-zinc-800{background-color:var(--color-zinc-800)}.bg-zinc-900{background-color:var(--color-zinc-900)}.from-zinc-900{--tw-gradient-from:var(--color-zinc-900);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-zinc-800{--tw-gradient-via:var(--color-zinc-800);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-zinc-700{--tw-gradient-to:var(--color-zinc-700);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.scroll-fade-x{-webkit-mask-image:linear-gradient(90deg,#0000,#000 32px calc(100% - 32px),#0000);mask-image:linear-gradient(90deg,#0000,#000 32px calc(100% - 32px),#0000)}.bg-\[length\:250\%_100\%\,auto\]{background-size:250% 100%,auto}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.\[background-repeat\:no-repeat\,padding-box\]{background-repeat:no-repeat,padding-box}.fill-background{fill:var(--background)}.fill-blue-500{fill:var(--color-blue-500)}.fill-current{fill:currentColor}.fill-foreground{fill:var(--foreground)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-\[1px\]{padding:1px}.\!px-0{padding-inline:0!important}.px-0{padding-inline:0}.px-1{padding-inline:var(--spacing)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-20{padding-top:calc(var(--spacing) * 20)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.\!text-base{font-size:var(--text-base)!important;line-height:var(--tw-leading,var(--text-base--line-height))!important}.text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\!leading-7{--tw-leading:calc(var(--spacing) * 7)!important;line-height:calc(var(--spacing) * 7)!important}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-\[450\]{--tw-font-weight:450;font-weight:450}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.01em\]{--tw-tracking:-.01em;letter-spacing:-.01em}.tracking-\[-0\.025em\]{--tw-tracking:-.025em;letter-spacing:-.025em}.tracking-normal{--tw-tracking:var(--tracking-normal);letter-spacing:var(--tracking-normal)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.\[text-wrap\:pretty\]{text-wrap:pretty}.text-balance{text-wrap:balance}.text-wrap{text-wrap:wrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.text-\[\#99ffe4\]{color:#99ffe4}.text-\[\#B5B5B5\]{color:#b5b5b5}.text-\[\#a0a0a0\]{color:#a0a0a0}.text-\[\#ff2d55\]{color:#ff2d55}.text-\[\#ff2d55\]\/90{color:oklab(64.9653% .226804 .0732477/.9)}.text-background{color:var(--background)}.text-black{color:var(--color-black)}.text-black\/70{color:#000000b3}@supports (color:color-mix(in lab,red,red)){.text-black\/70{color:color-mix(in oklab,var(--color-black) 70%,transparent)}}.text-body{color:var(--site-text)}.text-emerald-500{color:var(--color-emerald-500)}.text-green-600{color:var(--color-green-600)}.text-heading{color:var(--site-heading)}.text-muted-foreground{color:var(--muted-foreground)}.text-red-600{color:var(--color-red-600)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.text-zinc-600{color:var(--color-zinc-600)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.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,)}.link-underline{text-decoration-line:underline;text-decoration-color:currentColor}@supports (color:color-mix(in lab,red,red)){.link-underline{-webkit-text-decoration-color:color-mix(in oklab,currentcolor 30%,transparent);text-decoration-color:color-mix(in oklab,currentcolor 30%,transparent)}}.link-underline{text-underline-offset:3px;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));text-decoration-thickness:1px}@media (hover:hover){.link-underline:hover{text-decoration-color:currentColor}}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a)}.shadow-lg,.shadow-xl{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-zinc-200\/50{--tw-ring-color:#e4e4e780}@supports (color:color-mix(in lab,red,red)){.ring-zinc-200\/50{--tw-ring-color:color-mix(in oklab,var(--color-zinc-200) 50%,transparent)}}.ring-zinc-900\/10{--tw-ring-color:#18181b1a}@supports (color:color-mix(in lab,red,red)){.ring-zinc-900\/10{--tw-ring-color:color-mix(in oklab,var(--color-zinc-900) 10%,transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.outline-offset-4{outline-offset:4px}.blur{--tw-blur:blur(8px)}.blur,.blur-2xl{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,)}.blur-2xl{--tw-blur:blur(var(--blur-2xl))}.blur-lg{--tw-blur:blur(var(--blur-lg))}.blur-lg,.blur-md{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,)}.blur-md{--tw-blur:blur(var(--blur-md))}.blur-none{--tw-blur: }.blur-none,.blur-sm{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,)}.blur-sm{--tw-blur:blur(var(--blur-sm))}.blur-xl{--tw-blur:blur(var(--blur-xl))}.blur-xl,.blur-xs{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,)}.blur-xs{--tw-blur:blur(var(--blur-xs))}.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,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm))}.backdrop-blur-sm,.backdrop-blur-xl{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-xl{--tw-backdrop-blur:blur(var(--blur-xl))}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[border-color\,box-shadow\]{transition-property:border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[opacity\,transform\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-1000{--tw-duration:1s;transition-duration:1s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.prose blockquote p:after,.prose blockquote p:before{content:none!important}.prose-gray{--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:oklab(21% -.00316127 -.0338527/.1);--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733)}.prose-zinc{--tw-prose-body:oklch(37% .013 285.805);--tw-prose-headings:oklch(21% .006 285.885);--tw-prose-lead:oklch(44.2% .017 285.786);--tw-prose-links:oklch(21% .006 285.885);--tw-prose-bold:oklch(21% .006 285.885);--tw-prose-counters:oklch(55.2% .016 285.938);--tw-prose-bullets:oklch(87.1% .006 286.286);--tw-prose-hr:oklch(92% .004 286.32);--tw-prose-quotes:oklch(21% .006 285.885);--tw-prose-quote-borders:oklch(92% .004 286.32);--tw-prose-captions:oklch(55.2% .016 285.938);--tw-prose-kbd:oklch(21% .006 285.885);--tw-prose-kbd-shadows:oklab(21% .00164225 -.00577088/.1);--tw-prose-code:oklch(21% .006 285.885);--tw-prose-pre-code:oklch(92% .004 286.32);--tw-prose-pre-bg:oklch(27.4% .006 286.033);--tw-prose-th-borders:oklch(87.1% .006 286.286);--tw-prose-td-borders:oklch(92% .004 286.32);--tw-prose-invert-body:oklch(87.1% .006 286.286);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.5% .015 286.067);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.5% .015 286.067);--tw-prose-invert-bullets:oklch(44.2% .017 285.786);--tw-prose-invert-hr:oklch(37% .013 285.805);--tw-prose-invert-quotes:oklch(96.7% .001 286.375);--tw-prose-invert-quote-borders:oklch(37% .013 285.805);--tw-prose-invert-captions:oklch(70.5% .015 286.067);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.1% .006 286.286);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.2% .017 285.786);--tw-prose-invert-td-borders:oklch(37% .013 285.805)}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.zoom-in-95{--tw-enter-scale:.95}.\[--base-color\:\#a1a1aa\]{--base-color:#a1a1aa}.\[--base-gradient-color\:\#000\]{--base-gradient-color:#000}.\[--bg\:linear-gradient\(90deg\,\#0000_calc\(50\%-var\(--spread\)\)\,var\(--base-gradient-color\)\,\#0000_calc\(50\%\+var\(--spread\)\)\)\]{--bg:linear-gradient(90deg,#0000 calc(50% - var(--spread)),var(--base-gradient-color),#0000 calc(50% + var(--spread)))}.\[--duration\:40s\]{--duration:40s}.\[--duration\:50s\]{--duration:50s}.\[--gap\:0\.375rem\]{--gap:.375rem}.\[--gap\:1rem\]{--gap:1rem}.\[-webkit-mask-image\:linear-gradient\(to_bottom\,black\,transparent\)\]{-webkit-mask-image:linear-gradient(#000,#0000)}.\[animation-direction\:reverse\]{animation-direction:reverse}.ring-inset{--tw-ring-inset:inset}.running{animation-play-state:running}@media (hover:hover){.group-hover\:max-w-full:is(:where(.group):hover *){max-width:100%}.group-hover\:underline:is(:where(.group):hover *){text-decoration-line:underline}.group-hover\/marquee\:\[animation-play-state\:paused\]:is(:where(.group\/marquee):hover *){animation-play-state:paused}.group-hover\/name\:scale-100:is(:where(.group\/name):hover *){--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\/name\:opacity-100:is(:where(.group\/name):hover *){opacity:1}.group-hover\/name\:ease-in:is(:where(.group\/name):hover *){--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.group-hover\/project-link\:translate-x-0\.5:is(:where(.group\/project-link):hover *){--tw-translate-x:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\/project-link\:-translate-y-0\.5:is(:where(.group\/project-link):hover *){--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\/project-link\:scale-110:is(:where(.group\/project-link):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\/project-link\:-rotate-12:is(:where(.group\/project-link):hover *){rotate:-12deg}.group-hover\/project-link\:rotate-12:is(:where(.group\/project-link):hover *){rotate:12deg}.group-hover\/project-link\:text-\[\#0EA5E9\]:is(:where(.group\/project-link):hover *){color:#0ea5e9}.group-hover\/project-link\:text-\[\#8534F3\]:is(:where(.group\/project-link):hover *){color:#8534f3}.group-hover\/project-link\:text-sky-500:is(:where(.group\/project-link):hover *){color:var(--color-sky-500)}.group-hover\/social-link\:scale-110:is(:where(.group\/social-link):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\/social-link\:-rotate-12:is(:where(.group\/social-link):hover *){rotate:-12deg}.group-hover\/social-link\:rotate-12:is(:where(.group\/social-link):hover *){rotate:12deg}.group-hover\/social-link\:fill-\[\#FF5A5F\]:is(:where(.group\/social-link):hover *){fill:#ff5a5f}.group-hover\/social-link\:fill-white:is(:where(.group\/social-link):hover *){fill:var(--color-white)}.group-hover\/social-link\:text-\[\#1DA1F2\]:is(:where(.group\/social-link):hover *){color:#1da1f2}.group-hover\/social-link\:text-\[\#34D399\]:is(:where(.group\/social-link):hover *){color:#34d399}.group-hover\/social-link\:text-\[\#0072B1\]:is(:where(.group\/social-link):hover *){color:#0072b1}.group-hover\/social-link\:text-\[\#8534F3\]:is(:where(.group\/social-link):hover *){color:#8534f3}.group-hover\/social-link\:text-\[\#FF2E55\]:is(:where(.group\/social-link):hover *){color:#ff2e55}}.group-data-\[expanded\]\:rotate-90:is(:where(.group)[data-expanded] *){rotate:90deg}.marker\:text-body ::marker{color:var(--site-text)}.marker\:text-body::marker{color:var(--site-text)}.marker\:text-body ::-webkit-details-marker,.marker\:text-body::-webkit-details-marker{color:var(--site-text)}.backdrop\:bg-black\/50::backdrop{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.backdrop\:bg-black\/50::backdrop{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.backdrop\:backdrop-blur-xs::backdrop{--tw-backdrop-blur:blur(var(--blur-xs));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.open\:flex:is([open],:popover-open,:open){display:flex}.open\:flex-col:is([open],:popover-open,:open){flex-direction:column}@media (hover:hover){.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:scale-\[1\.01\]:hover{scale:1.01}.hover\:bg-\[\#333333\]:hover{background-color:#333}.hover\:bg-zinc-100:hover{background-color:var(--color-zinc-100)}.hover\:bg-zinc-200:hover{background-color:var(--color-zinc-200)}.hover\:bg-zinc-600\/50:hover{background-color:#52525c80}@supports (color:color-mix(in lab,red,red)){.hover\:bg-zinc-600\/50:hover{background-color:color-mix(in oklab,var(--color-zinc-600) 50%,transparent)}}.hover\:bg-zinc-700:hover{background-color:var(--color-zinc-700)}.hover\:text-\[\#FF5A5F\]:hover{color:#ff5a5f}.hover\:text-\[\#ff2d55\]:hover{color:#ff2d55}.hover\:text-\[\#ffc799\]:hover{color:#ffc799}.hover\:text-heading:hover{color:var(--site-heading)}.hover\:text-zinc-50:hover{color:var(--color-zinc-50)}.hover\:text-zinc-950:hover{color:var(--color-zinc-950)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-zinc-500:focus{--tw-ring-color:var(--color-zinc-500)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:rounded-sm:focus-visible{border-radius:var(--radius-sm)}.focus-visible\:border-zinc-300:focus-visible{border-color:var(--color-zinc-300)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-zinc-300\/50:focus-visible{--tw-ring-color:#d4d4d880}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-zinc-300\/50:focus-visible{--tw-ring-color:color-mix(in oklab,var(--color-zinc-300) 50%,transparent)}}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus-visible\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-offset-3:focus-visible{outline-offset:3px}.focus-visible\:outline-offset-4:focus-visible{outline-offset:4px}.focus-visible\:outline-offset-8:focus-visible{outline-offset:8px}.focus-visible\:outline-\[\#ff2d55\]:focus-visible{outline-color:#ff2d55}.focus-visible\:outline-\[\#ffc799\]:focus-visible{outline-color:#ffc799}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:scale-\[0\.97\]:active{scale:.97}@media (hover:hover){.enabled\:hover\:bg-zinc-950:enabled:hover{background-color:var(--color-zinc-950)}.enabled\:hover\:text-zinc-50:enabled:hover{color:var(--color-zinc-50)}}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-0:disabled{opacity:0}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.data-\[level\=\"0\"\]\:fill-muted-foreground\/5[data-level="0"]{fill:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.data-\[level\=\"0\"\]\:fill-muted-foreground\/5[data-level="0"]{fill:color-mix(in oklab,var(--muted-foreground) 5%,transparent)}}:is(.\*\*\:data-\[level\=\"0\"\]\:fill-\[\#eff2f5\] *)[data-level="0"]{fill:#eff2f5}.data-\[level\=\"1\"\]\:fill-muted-foreground\/20[data-level="1"]{fill:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.data-\[level\=\"1\"\]\:fill-muted-foreground\/20[data-level="1"]{fill:color-mix(in oklab,var(--muted-foreground) 20%,transparent)}}:is(.\*\*\:data-\[level\=\"1\"\]\:fill-\[\#aceebb\] *)[data-level="1"]{fill:#aceebb}.data-\[level\=\"2\"\]\:fill-muted-foreground\/40[data-level="2"]{fill:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.data-\[level\=\"2\"\]\:fill-muted-foreground\/40[data-level="2"]{fill:color-mix(in oklab,var(--muted-foreground) 40%,transparent)}}:is(.\*\*\:data-\[level\=\"2\"\]\:fill-\[\#4ac26b\] *)[data-level="2"]{fill:#4ac26b}.data-\[level\=\"3\"\]\:fill-muted-foreground\/60[data-level="3"]{fill:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.data-\[level\=\"3\"\]\:fill-muted-foreground\/60[data-level="3"]{fill:color-mix(in oklab,var(--muted-foreground) 60%,transparent)}}:is(.\*\*\:data-\[level\=\"3\"\]\:fill-\[\#2da44e\] *)[data-level="3"]{fill:#2da44e}.data-\[level\=\"4\"\]\:fill-muted-foreground\/80[data-level="4"]{fill:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.data-\[level\=\"4\"\]\:fill-muted-foreground\/80[data-level="4"]{fill:color-mix(in oklab,var(--muted-foreground) 80%,transparent)}}:is(.\*\*\:data-\[level\=\"4\"\]\:fill-\[\#116329\] *)[data-level="4"]{fill:#116329}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}@media (prefers-reduced-motion:reduce){.motion-reduce\:animate-none{animation:none}.motion-reduce\:transition-none{transition-property:none}}@media (min-width:40rem){.sm\:h-\[360px\]{height:360px}.sm\:max-w-3xl{max-width:var(--container-3xl)}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:justify-start{justify-content:flex-start}.sm\:gap-16{gap:calc(var(--spacing) * 16)}.sm\:gap-x-4{column-gap:calc(var(--spacing) * 4)}.sm\:px-4{padding-inline:calc(var(--spacing) * 4)}.sm\:pt-6{padding-top:calc(var(--spacing) * 6)}.sm\:text-8xl{font-size:var(--text-8xl);line-height:var(--tw-leading,var(--text-8xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}}@media (min-width:48rem){.md\:static{position:static}.md\:ml-auto{margin-left:auto}.md\:w-auto{width:auto}.md\:flex-row{flex-direction:row}.md\:flex-wrap{flex-wrap:wrap}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}:where(.md\:space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}}.dark\:block:is(.dark *){display:block}.dark\:hidden:is(.dark *){display:none}.dark\:border:is(.dark *){border-style:var(--tw-border-style);border-width:1px}.dark\:border-\[\#282828\]:is(.dark *){border-color:#282828}.dark\:border-zinc-200:is(.dark *){border-color:var(--color-zinc-200)}.dark\:border-zinc-700:is(.dark *){border-color:var(--color-zinc-700)}.dark\:border-zinc-700\/40:is(.dark *){border-color:#3f3f4666}@supports (color:color-mix(in lab,red,red)){.dark\:border-zinc-700\/40:is(.dark *){border-color:color-mix(in oklab,var(--color-zinc-700) 40%,transparent)}}.dark\:border-zinc-800:is(.dark *){border-color:var(--color-zinc-800)}.dark\:border-t-zinc-100:is(.dark *){border-top-color:var(--color-zinc-100)}.dark\:bg-\[\#222\]:is(.dark *){background-color:#222}.dark\:bg-\[\#09090B\]:is(.dark *){background-color:#09090b}.dark\:bg-\[\#27272A\]:is(.dark *){background-color:#27272a}.dark\:bg-\[\#101010\]:is(.dark *){background-color:#101010}.dark\:bg-\[\#161616\]:is(.dark *){background-color:#161616}.dark\:bg-\[\#181818\]:is(.dark *){background-color:#181818}.dark\:bg-\[\#252525\]:is(.dark *){background-color:#252525}.dark\:bg-black\/40:is(.dark *){background-color:#0006}@supports (color:color-mix(in lab,red,red)){.dark\:bg-black\/40:is(.dark *){background-color:color-mix(in oklab,var(--color-black) 40%,transparent)}}.dark\:bg-zinc-50:is(.dark *){background-color:var(--color-zinc-50)}.dark\:bg-zinc-100:is(.dark *){background-color:var(--color-zinc-100)}.dark\:bg-zinc-200:is(.dark *){background-color:var(--color-zinc-200)}.dark\:bg-zinc-800:is(.dark *){background-color:var(--color-zinc-800)}.dark\:bg-zinc-900:is(.dark *){background-color:var(--color-zinc-900)}.dark\:bg-zinc-950:is(.dark *){background-color:var(--color-zinc-950)}.dark\:bg-zinc-950\/40:is(.dark *){background-color:#09090b66}@supports (color:color-mix(in lab,red,red)){.dark\:bg-zinc-950\/40:is(.dark *){background-color:color-mix(in oklab,var(--color-zinc-950) 40%,transparent)}}.dark\:from-zinc-100:is(.dark *){--tw-gradient-from:var(--color-zinc-100);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.dark\:via-zinc-200:is(.dark *){--tw-gradient-via:var(--color-zinc-200);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.dark\:to-zinc-50:is(.dark *){--tw-gradient-to:var(--color-zinc-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.dark\:text-black:is(.dark *){color:var(--color-black)}.dark\:text-green-400:is(.dark *){color:var(--color-green-400)}.dark\:text-heading:is(.dark *){color:var(--site-heading)}.dark\:text-red-400:is(.dark *){color:var(--color-red-400)}.dark\:text-zinc-100:is(.dark *){color:var(--color-zinc-100)}.dark\:text-zinc-100\/70:is(.dark *){color:#f4f4f5b3}@supports (color:color-mix(in lab,red,red)){.dark\:text-zinc-100\/70:is(.dark *){color:color-mix(in oklab,var(--color-zinc-100) 70%,transparent)}}.dark\:text-zinc-300:is(.dark *){color:var(--color-zinc-300)}.dark\:text-zinc-400:is(.dark *){color:var(--color-zinc-400)}.dark\:text-zinc-950:is(.dark *){color:var(--color-zinc-950)}.dark\:ring-white\/10:is(.dark *){--tw-ring-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:ring-white\/10:is(.dark *){--tw-ring-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.dark\:ring-zinc-800\/50:is(.dark *){--tw-ring-color:#27272a80}@supports (color:color-mix(in lab,red,red)){.dark\:ring-zinc-800\/50:is(.dark *){--tw-ring-color:color-mix(in oklab,var(--color-zinc-800) 50%,transparent)}}.dark\:invert:is(.dark *){--tw-invert:invert(100%);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,)}.dark\:prose-invert:is(.dark *){--tw-prose-body:var(--tw-prose-invert-body);--tw-prose-headings:var(--tw-prose-invert-headings);--tw-prose-lead:var(--tw-prose-invert-lead);--tw-prose-links:var(--tw-prose-invert-links);--tw-prose-bold:var(--tw-prose-invert-bold);--tw-prose-counters:var(--tw-prose-invert-counters);--tw-prose-bullets:var(--tw-prose-invert-bullets);--tw-prose-hr:var(--tw-prose-invert-hr);--tw-prose-quotes:var(--tw-prose-invert-quotes);--tw-prose-quote-borders:var(--tw-prose-invert-quote-borders);--tw-prose-captions:var(--tw-prose-invert-captions);--tw-prose-kbd:var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows:var(--tw-prose-invert-kbd-shadows);--tw-prose-code:var(--tw-prose-invert-code);--tw-prose-pre-code:var(--tw-prose-invert-pre-code);--tw-prose-pre-bg:var(--tw-prose-invert-pre-bg);--tw-prose-th-borders:var(--tw-prose-invert-th-borders);--tw-prose-td-borders:var(--tw-prose-invert-td-borders)}.dark\:\[--base-color\:\#71717a\]:is(.dark *){--base-color:#71717a}.dark\:\[--base-gradient-color\:\#ffffff\]:is(.dark *){--base-gradient-color:#fff}.dark\:\[--bg\:linear-gradient\(90deg\,\#0000_calc\(50\%-var\(--spread\)\)\,var\(--base-gradient-color\)\,\#0000_calc\(50\%\+var\(--spread\)\)\)\]:is(.dark *){--bg:linear-gradient(90deg,#0000 calc(50% - var(--spread)),var(--base-gradient-color),#0000 calc(50% + var(--spread)))}@media (hover:hover){.dark\:group-hover\/project-link\:text-\[\#38BDF8\]:is(.dark *):is(:where(.group\/project-link):hover *){color:#38bdf8}.dark\:group-hover\/project-link\:text-\[\#8534F3\]:is(.dark *):is(:where(.group\/project-link):hover *){color:#8534f3}.dark\:group-hover\/social-link\:text-\[\#34D399\]:is(.dark *):is(:where(.group\/social-link):hover *){color:#34d399}.dark\:group-hover\/social-link\:text-\[\#0072B1\]:is(.dark *):is(:where(.group\/social-link):hover *){color:#0072b1}.dark\:group-hover\/social-link\:text-\[\#8534F3\]:is(.dark *):is(:where(.group\/social-link):hover *){color:#8534f3}.dark\:group-hover\/social-link\:text-\[\#FF2E55\]:is(.dark *):is(:where(.group\/social-link):hover *){color:#ff2e55}.dark\:group-hover\/social-link\:text-white:is(.dark *):is(:where(.group\/social-link):hover *){color:var(--color-white)}.dark\:hover\:bg-\[\#303030\]:is(.dark *):hover{background-color:#303030}.dark\:hover\:bg-\[\#333333\]:is(.dark *):hover{background-color:#333}.dark\:hover\:bg-white:is(.dark *):hover{background-color:var(--color-white)}.dark\:hover\:bg-zinc-800:is(.dark *):hover{background-color:var(--color-zinc-800)}.dark\:hover\:bg-zinc-900:is(.dark *):hover{background-color:var(--color-zinc-900)}.dark\:hover\:text-\[\#ff2d55\]:is(.dark *):hover{color:#ff2d55}.dark\:hover\:text-zinc-50:is(.dark *):hover{color:var(--color-zinc-50)}}.dark\:focus-visible\:border-zinc-600:is(.dark *):focus-visible{border-color:var(--color-zinc-600)}.dark\:focus-visible\:ring-zinc-600\/50:is(.dark *):focus-visible{--tw-ring-color:#52525c80}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-zinc-600\/50:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab,var(--color-zinc-600) 50%,transparent)}}@media (hover:hover){.dark\:enabled\:hover\:bg-zinc-700:is(.dark *):enabled:hover{background-color:var(--color-zinc-700)}}:is(.dark\:\*\*\:data-\[level\=\"0\"\]\:fill-\[\#181818\]:is(.dark *) *)[data-level="0"]{fill:#181818}:is(.dark\:\*\*\:data-\[level\=\"1\"\]\:fill-\[\#033a16\]:is(.dark *) *)[data-level="1"]{fill:#033a16}:is(.dark\:\*\*\:data-\[level\=\"2\"\]\:fill-\[\#196c2e\]:is(.dark *) *)[data-level="2"]{fill:#196c2e}:is(.dark\:\*\*\:data-\[level\=\"3\"\]\:fill-\[\#2ea043\]:is(.dark *) *)[data-level="3"]{fill:#2ea043}:is(.dark\:\*\*\:data-\[level\=\"4\"\]\:fill-\[\#56d364\]:is(.dark *) *)[data-level="4"]{fill:#56d364}.prose-headings\:font-medium :where(h1,h2,h3,h4,h5,h6,th):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.prose-h1\:mb-1 :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:var(--spacing)}.prose-h1\:text-2xl :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.prose-h1\:text-xl :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.prose-h1\:font-medium :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.prose-h1\:tracking-\[-0\.04em\] :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-tracking:-.04em;letter-spacing:-.04em}.prose-h2\:mt-0 :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-h2\:mt-12 :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:calc(var(--spacing) * 12)}.prose-h2\:scroll-m-20 :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){scroll-margin:calc(var(--spacing) * 20)}.prose-h2\:text-lg :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.prose-h2\:text-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.prose-h2\:font-medium :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.prose-h2\:tracking-\[0\.08em\] :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-tracking:.08em;letter-spacing:.08em}.prose-h2\:text-heading :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--site-heading)}.prose-h2\:uppercase :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){text-transform:uppercase}.prose-h3\:text-base :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.prose-h3\:font-medium :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1rem;line-height:1.75}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:.888889em;font-size:2.25em;line-height:1.11111}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:1em;font-size:1.5em;line-height:1.33333}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;line-height:1.6}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(img):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-size:.875em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;line-height:1.71429}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(.prose-h4\:prose-base>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(.prose-h4\:prose-base>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(.prose-h4\:prose-base>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(.prose-h4\:prose-base>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(.prose-h4\:prose-base>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:3em;margin-bottom:3em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;line-height:1.71429}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(.prose-h4\:prose-base>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-h4\:prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) :where(.prose-h4\:prose-base>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-h4\:font-medium :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.prose-h5\:text-base :where(h5):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.prose-h5\:font-medium :where(h5):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.prose-h6\:text-base :where(h6):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.prose-h6\:font-medium :where(h6):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.prose-p\:text-\[17px\] :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:17px}.prose-p\:leading-8 :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-leading:calc(var(--spacing) * 8);line-height:calc(var(--spacing) * 8)}.prose-strong\:font-medium :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.prose-strong\:text-heading :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--site-heading)}.prose-li\:text-\[17px\] :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:17px}.prose-li\:leading-8 :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-leading:calc(var(--spacing) * 8);line-height:calc(var(--spacing) * 8)}.\[\&_\.prose\]\:max-w-none .prose{max-width:none}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}.staggered-content>:not(article):not(.page-heading-motion),.staggered-list>li{opacity:1;transition-property:opacity,transform;transition-duration:.25s;transition-timing-function:cubic-bezier(.23,1,.32,1);transform:translateY(0)}@starting-style{.staggered-content>:not(article):not(.page-heading-motion),.staggered-list>li{opacity:0;transform:translateY(6px)}}.staggered-content>:not(article):not(.page-heading-motion):focus-within,.staggered-list>li:focus-within{transition:none}@media (prefers-reduced-motion:reduce){.staggered-content>:not(article):not(.page-heading-motion),.staggered-list>li{transition:none}}.staggered-content>:not(article):not(.page-heading-motion){transition-delay:.3s}.staggered-content>:first-child:not(article){transition-delay:0s}.staggered-content>:nth-child(2):not(article){transition-delay:50ms}.staggered-content>:nth-child(3):not(article){transition-delay:.1s}.staggered-content>:nth-child(4):not(article){transition-delay:.15s}.staggered-content>:nth-child(5):not(article){transition-delay:.2s}.staggered-content>:nth-child(6):not(article){transition-delay:.25s}@font-face{font-family:Ioskeley Mono;src:url(/fonts/ioskeley-mono/IoskeleyMono-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Ioskeley Mono;src:url(/fonts/ioskeley-mono/IoskeleyMono-Italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Ioskeley Mono;src:url(/fonts/ioskeley-mono/IoskeleyMono-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Ioskeley Mono;src:url(/fonts/ioskeley-mono/IoskeleyMono-BoldItalic.woff2)format("woff2");font-weight:700;font-style:italic;font-display:swap}code,kbd,pre,samp{font-family:Ioskeley Mono,ui-monospace,monospace}::view-transition-group(rail-case-study-media){animation-duration:.42s;animation-timing-function:ease}::view-transition-group(sway-case-study-media){animation-duration:.42s;animation-timing-function:ease}::view-transition-group(rat-case-study-media){animation-duration:.42s;animation-timing-function:ease}::view-transition-old(rail-case-study-media){mix-blend-mode:normal;animation:none}::view-transition-old(sway-case-study-media){mix-blend-mode:normal;animation:none}::view-transition-old(rat-case-study-media){mix-blend-mode:normal;animation:none}::view-transition-new(rail-case-study-media){opacity:0;mix-blend-mode:normal;animation:none}::view-transition-new(sway-case-study-media){opacity:0;mix-blend-mode:normal;animation:none}::view-transition-new(rat-case-study-media){opacity:0;mix-blend-mode:normal;animation:none}@media (prefers-reduced-motion:reduce){::view-transition-group(rail-case-study-media){animation-duration:1ms}::view-transition-group(sway-case-study-media){animation-duration:1ms}::view-transition-group(rat-case-study-media){animation-duration:1ms}}.prose pre,.vesper-code{--sh-class:#ffc799;--sh-identifier:#fff;--sh-sign:#a0a0a0;--sh-string:#99ffe4;--sh-keyword:#a0a0a0;--sh-comment:#8b8b8b94;--sh-jsxliterals:#fff;--sh-property:#fff;--sh-entity:#ffc799;color:#fff;background-color:#101010}.blog-article pre{border:1px solid #232323}.vesper-code ::selection{background-color:#ffffff25}.prose pre ::selection{background-color:#ffffff25}.prose :not(pre)>code{color:inherit}.prose :not(pre)>code span{color:inherit!important}.prose{--article-divider-color:#eaeaea}.dark .prose{--article-divider-color:#252525}.prose :where(hr,blockquote,thead,tbody tr){border-color:var(--article-divider-color)}@keyframes pinDrop{0%{opacity:0;transform:translateY(-20px)}30%{opacity:1}to{opacity:1;transform:translateY(0)}}.bio-location-pin{color:#ff2d55;cursor:pointer;opacity:0;vertical-align:middle;width:14px;height:18px;margin-left:4px;animation:pinDrop .6s cubic-bezier(.175,.885,.32,1.275) .5s forwards;display:inline-block}.bio-location-trigger{transition:transform .2s,filter .2s}@media (hover:hover) and (pointer:fine){.bio-location-trigger:hover{filter:drop-shadow(0 4px 6px #ff2d5566);transform:translateY(-2px)rotate(8deg)scale(1.2)}}@media (prefers-reduced-motion:reduce){.bio-location-trigger{transition:filter .2s}.bio-location-trigger:hover{transform:none}}.map-wrapper{background:0 0;border-radius:1rem;width:100%;display:block;position:relative;overflow:hidden;transform:translate(0);-webkit-mask-image:-webkit-radial-gradient(#fff,#000);height:350px!important}#home-map{width:100%;height:100%}.leaflet-container{outline:0;background:0 0!important}.dark .leaflet-container{background:#09090b!important}.light .leaflet-container{background:#f9fafb!important}.leaflet-marker-icon{animation:map-marker-fade-in .2s cubic-bezier(.23,1,.32,1);background:0 0!important;border:none!important;overflow:visible!important}@keyframes map-marker-fade-in{0%{opacity:0}to{opacity:1}}.custom-pulse-marker{justify-content:center;align-items:center;display:flex;background:0 0!important;border:none!important}.custom-pulse-marker .dot{z-index:5;border:2px solid #fff;background:#ff2d55!important}.custom-pulse-marker .dot,.custom-pulse-marker .pulse{border-radius:50%;width:12px;height:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);margin:0!important}.custom-pulse-marker .pulse{z-index:4;background:#ff2d5599;animation:marker-pulse 2s infinite}.light .custom-pulse-marker .pulse{background:#ff2d554d}@keyframes marker-pulse{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(4)}}@media (prefers-reduced-motion:reduce){#home-map .custom-pulse-marker .pulse{animation:none}#home-map .map-connection-line{animation:connection-line-fade-in .25s ease-in both}}.map-connection-line{stroke-dasharray:8 12;animation:connection-line-fade-in .25s ease-in both,dash-flow 2s linear infinite}@keyframes connection-line-fade-in{0%{opacity:0}to{opacity:1}}@keyframes dash-flow{to{stroke-dashoffset:-20px}}.location-card{border-radius:2rem!important;padding:24px!important}.leaflet-tile-container img{filter:brightness()contrast()}.dark .leaflet-tile-container img{filter:brightness(.9)contrast(1.1)}@media (max-width:600px){.map-wrapper{height:250px!important}}:root{--site-background:#fafafa;--site-heading:#121212;--site-text:#333;--site-blog-text:#333;--foreground:var(--site-text);--background:var(--site-background);--muted-foreground:var(--site-text)}.dark{--site-background:#101010;--site-heading:#eee;--site-text:#b5b5b5;--site-blog-text:#dbdbdb}.site-body{--site-font-family:var(--font-inter),ui-sans-serif,system-ui,sans-serif}.theme-circle{background-color:#0000;transition:background-color .18s,transform .18s cubic-bezier(.23,1,.32,1);transform:scale(1)}.theme-circle-primary,.theme-circles[aria-checked=false] .theme-circle-secondary{background-color:currentColor}.theme-circles[aria-checked=false] .theme-circle-secondary,.theme-circles[aria-checked=true] .theme-circle-primary{transform:scale(1.08)}.theme-circles:active .theme-circle{transition-duration:.1s;transform:scale(.97)}@media (prefers-reduced-motion:reduce){.theme-circle{transition-property:background-color;transform:none!important}}.site-body,.site-font{font-family:var(--site-font-family)}.site-body{background-color:var(--background);color:var(--foreground)}:root .blog-article,:root .blog-article-toolbar{max-width:600px;margin-inline:auto}:root .balance-copy,:root .blog-article>:is(h1,h2,h3){text-wrap:balance}:root[data-theme-transition]::view-transition-old(root){z-index:1;animation:none}:root[data-theme-transition]::view-transition-new(root){mix-blend-mode:normal;z-index:2;animation:theme-reveal .3s cubic-bezier(.23,1,.32,1) both}:root[data-theme=dark]{--from:0 0 100% 0}@keyframes theme-reveal{0%{clip-path:inset(var(--from,100% 0 0 0))}to{clip-path:inset(0)}}@media (prefers-reduced-motion:reduce){:root[data-theme-transition]::view-transition-new(root){animation:none}}body:has([data-page=not-found]) [data-site-footer],body:has([data-page=not-found]) [data-site-header]{display:none}body:has([data-page=not-found]) .site-shell{padding-top:0}.prose{--prose-text:var(--site-text);--tw-prose-headings:var(--site-heading);--tw-prose-body:var(--prose-text);--tw-prose-lead:var(--prose-text);--tw-prose-links:var(--prose-text);--tw-prose-bold:var(--prose-text);--tw-prose-counters:var(--prose-text);--tw-prose-bullets:var(--prose-text);--tw-prose-quotes:var(--prose-text);--tw-prose-captions:var(--prose-text);--tw-prose-code:var(--prose-text)}.blog-article{--prose-text:var(--site-blog-text);letter-spacing:normal;text-align:start;overflow-wrap:break-word;font-size:16px;line-height:1.625}.blog-article :where(p,li){text-wrap:wrap}.blog-article p{margin-block:0 1.35em}.blog-article :where(a){text-decoration-color:currentColor}@supports (color:color-mix(in lab,red,red)){.blog-article :where(a){-webkit-text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);text-decoration-color:color-mix(in srgb,currentColor 40%,transparent)}}.blog-article :where(a){transition:text-decoration-color .3s}.blog-article :where(a:focus-visible){text-decoration-color:currentColor}@supports (color:color-mix(in lab,red,red)){.blog-article :where(a:focus-visible){-webkit-text-decoration-color:color-mix(in srgb,currentColor 90%,transparent);text-decoration-color:color-mix(in srgb,currentColor 90%,transparent)}}@media (hover:hover) and (pointer:fine){.blog-article :where(a:hover){text-decoration-color:currentColor}@supports (color:color-mix(in lab,red,red)){.blog-article :where(a:hover){-webkit-text-decoration-color:color-mix(in srgb,currentColor 90%,transparent);text-decoration-color:color-mix(in srgb,currentColor 90%,transparent)}}}.blog-article :where(h1,h2,h3,h4,h5,h6){letter-spacing:-.025em;line-height:1.3}.blog-article h1{margin-bottom:1.2em}.blog-article :where(h2,h3,h4){margin-top:2.25em;margin-bottom:.8em}.article-image{box-sizing:border-box;background:#f4f4f580;border:1px solid #e4e4e7;border-radius:.75rem;max-width:100%;padding:.5rem;display:block;position:relative;overflow:hidden}.dark .article-image{background:#161616;border-color:#282828}.article-image>img{opacity:1;border:1px solid #e4e4e7;border-radius:.5rem;width:100%;height:auto;margin:0;transition:opacity .18s ease-out;display:block}.dark .article-image>img{border-color:#282828}.article-image:has(>[data-article-size=small]){width:min(100%,26rem);margin-inline:auto}.article-image-placeholder{background:var(--article-divider-color,#eaeaea);opacity:0;pointer-events:none;border:1px solid #e4e4e7;border-radius:.5rem;transition:opacity .18s ease-out;position:absolute;inset:.5rem}.dark .article-image-placeholder{background:var(--article-divider-color,#252525);border-color:#282828}.article-image-error{text-align:center;place-items:center;padding:1.5rem;display:grid;position:absolute;inset:0}@media (scripting:enabled){.article-image:not([data-image-state=loaded]){min-height:8rem}.article-image:not([data-image-state=loaded])>img{opacity:0}.article-image:not([data-image-state=loaded])>.article-image-placeholder{opacity:1}}@media (prefers-reduced-motion:reduce){.article-image-placeholder,.article-image>img{transition:none}}.blog-article.staggered-content>:not(article){transition-duration:.15s;transition-delay:.1s}.blog-article.staggered-content>:first-child{transition-delay:0s}.blog-article.staggered-content>:nth-child(2){transition-delay:20ms}.blog-article.staggered-content>:nth-child(3){transition-delay:40ms}.blog-article.staggered-content>:nth-child(4){transition-delay:60ms}.blog-article.staggered-content>:nth-child(5){transition-delay:80ms}.blog-article.staggered-content>:focus-within{transition:none}@media (prefers-reduced-motion:reduce){.blog-article.staggered-content>:not(article){transition:none}}.copy-success-check{transform-origin:50%;animation:copy-check-fade .5s cubic-bezier(.22,1,.36,1) both,copy-check-rotate .5s cubic-bezier(.22,1,.36,1) both,copy-check-blur .5s cubic-bezier(.22,1,.36,1) both,copy-check-bob .5s cubic-bezier(.34,1.35,.64,1) both;display:inline-block}.copy-success-check svg{display:block;overflow:visible}.copy-success-check path{stroke-dasharray:20;stroke-dashoffset:20px;animation:copy-check-draw .5s cubic-bezier(.22,1,.36,1) 80ms forwards}@keyframes copy-check-fade{0%{opacity:0}to{opacity:1}}@keyframes copy-check-rotate{0%{transform:rotate(80deg)}to{transform:rotate(0)}}@keyframes copy-check-blur{0%{filter:blur(10px)}to{filter:blur()}}@keyframes copy-check-bob{0%{translate:0 40px}to{translate:0}}@keyframes copy-check-draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.copy-success-check,.copy-success-check path{animation:none}.copy-success-check path{stroke-dashoffset:0}}.contact-shake-input.is-shaking{animation:contact-input-shake .28s linear}@keyframes contact-input-shake{0%{animation-timing-function:cubic-bezier(.22,1,.36,1);transform:translate(0)}28.57%{animation-timing-function:cubic-bezier(.22,1,.36,1);transform:translate(6px)}57.14%{animation-timing-function:cubic-bezier(.22,1,.36,1);transform:translate(-6px)}78.57%{animation-timing-function:cubic-bezier(.22,1,.36,1);transform:translate(4px)}to{transform:translate(0)}}.contact-error-msg{opacity:0;visibility:hidden;transition:opacity .28s ease-out,visibility 0s linear .28s}.contact-input-wrap.is-error .contact-error-msg{opacity:1;visibility:visible;transition:opacity .28s ease-out,visibility}.contact-success{animation:contact-success-in .25s cubic-bezier(.23,1,.32,1) both}@keyframes contact-success-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.contact-shake-input.is-shaking,.contact-success{animation:none}}@media not all and (min-width:768px){:root .blog-article,:root .blog-article-toolbar{width:100%;max-width:none;margin-inline:0}body:has(.blog-article) .site-shell{width:100%;max-width:none;padding-inline:24px}}@media (prefers-reduced-motion:reduce){.animate-marquee,.animate-marquee-vertical{animation:none}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}@keyframes marquee{0%{transform:translate(0)}to{transform:translateX(calc(-100% - var(--gap)))}}@keyframes marquee-vertical{0%{transform:translateY(0)}to{transform:translateY(calc(-100% - var(--gap)))}}