*,*:before,*:after{box-sizing:border-box}*{margin:0}ul[role=list],ol[role=list]{list-style:none;margin:0;padding:0}body{min-height:100vh;-webkit-font-smoothing:antialiased}a:not([class]){text-decoration-skip-ink:auto}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root,#__next{isolation:isolate}@font-face{font-family:Inter;src:url(/fonts/inter-v12-latin-regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-v12-latin-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-v12-latin-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-v12-latin-900.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Gentium Book Basic;src:url(/fonts/gentium-book-basic-v16-latin-regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Gentium Book Basic;src:url(/fonts/gentium-book-basic-v16-latin-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Gentium Book Basic;src:url(/fonts/gentium-book-basic-v16-latin-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--base-hue: 227deg;--blue-600: hsl(var(--base-hue), 100%, 50%);--blue-800: hsl(var(--base-hue), 100%, 36%);--pink-600: hsl(333, 100%, 54%);--pink-800: hsl(333, 100%, 36%);--gray-50: hsl(var(--base-hue), 25%, 98%);--gray-100: hsl(var(--base-hue), 18%, 96%);--gray-200: hsl(var(--base-hue), 15%, 91%);--gray-300: hsl(var(--base-hue), 12%, 84%);--gray-350: hsl(var(--base-hue), 12%, 74%);--gray-400: hsl(var(--base-hue), 9%, 65%);--gray-500: hsl(var(--base-hue), 9%, 46%);--gray-600: hsl(var(--base-hue), 12%, 36%);--gray-700: hsl(var(--base-hue), 20%, 24%);--gray-800: hsl(var(--base-hue), 24%, 17%);--gray-900: hsl(var(--base-hue), 39%, 11%);--white: #fff;--space-1: .125rem ;--space-2: .25rem ;--space-3: .5rem ;--space-4: .75rem ;--space-5: 1rem ;--space-6: 1.5rem ;--space-7: 2rem ;--space-8: 3rem ;--space-9: 4rem ;--space-10: 6rem ;--space-11: 8rem ;--space-12: 12rem ;--color-text-primary: var(--gray-800);--color-text-secondary: var(--gray-600);--color-text-tertiary: var(--gray-500);--color-text-primary-inverse: var(--gray-100);--color-text-accent: var(--blue-600);--color-text-on-accent: white;--color-background-primary: var(--gray-100);--color-background-secondary: var(--white);--color-background-tertiary: var(--gray-200);--color-background-accent: var(--blue-600);--color-border-primary: var(--gray-800);--color-border-secondary: var(--gray-600);--color-border-tertiary: var(--gray-300);--color-border-accent: var(--blue-600);--color-hover: var(--blue-800);--text-xs: .75rem ;--text-sm: .875rem ;--text-base: 1rem ;--text-lg: 1.25rem ;--text-xl: 2rem ;--text-2xl: 3rem ;--text-3xl: 4.5rem ;--text-4xl: 6.25rem ;--text-serif: 1.3125rem ;--text-code: 1.125rem ;--font-sans: "Inter", "Fira Sans", Helvetica, sans-serif;--font-serif: "Gentium Book Basic", serif;--font-mono: Dank Mono, Operator Mono, Inconsolata, Fira Mono, ui-monospace, SF Mono, Monaco, Droid Sans Mono, Source Code Pro, monospace;--font-normal: 400;--font-medium: 500;--font-bold: 700;--font-black: 900;--leading-tight: 1.1;--leading-small: 1.3;--leading-normal: 1.5;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 20px;--section-padding-block: var(--space-9);--container-max-width-md: 48rem;--container-max-width-lg: 60rem;--container-max-width-xl: 75rem;--container-max-width-2xl: 120rem;--flow-space: 2rem;--shadow-lg: .2px .2px .6px rgba(0, 0, 0, .006), .5px .5px 1.4px rgba(0, 0, 0, .008), 1px 1px 2.6px rgba(0, 0, 0, .01), 1.8px 1.8px 4.7px rgba(0, 0, 0, .012), 3.3px 3.3px 8.8px rgba(0, 0, 0, .014), 8px 8px 21px rgba(0, 0, 0, .02);--shadow-xl: 1px 1.1px 2.2px rgba(0, 0, 0, .017), 2.3px 2.7px 5.3px rgba(0, 0, 0, .024), 4.4px 5px 10px rgba(0, 0, 0, .03), 7.8px 8.9px 17.9px rgba(0, 0, 0, .036), 14.6px 16.7px 33.4px rgba(0, 0, 0, .043), 35px 40px 80px rgba(0, 0, 0, .06)}@media (prefers-color-scheme: dark){:root{--color-text-primary: var(--gray-100);--color-text-secondary: var(--gray-350);--color-text-accent: var(--pink-600);--color-text-on-accent: var(--gray-900);--color-background-primary: var(--gray-800);--color-background-secondary: var(--gray-900);--color-background-tertiary: var(--gray-700);--color-background-accent: var(--pink-600);--color-border-primary: var(--gray-600);--color-border-secondary: var(--gray-700);--color-border-tertiary: var(--gray-700);--color-border-accent: var(--pink-600);--color-hover: var(--pink-800)}}@media (min-width: 992px){:root{--text-xs: .75rem ;--text-sm: .875rem ;--text-base: 1rem ;--text-lg: 1.5rem ;--text-xl: 2.25rem ;--text-2xl: 3rem ;--text-3xl: 4.5rem ;--text-4xl: 6.25rem ;--section-padding-block: var(--space-10)}}body{display:grid;grid-template-rows:auto 1fr auto;font-family:var(--font-serif);color:var(--color-text-primary);background-color:var(--color-background-primary);line-height:var(--leading-normal);font-size:var(--text-serif)}h1,h2,h3,h4{font-family:var(--font-sans);font-weight:var(--font-black);line-height:var(--leading-tight);word-wrap:break-word;overflow-wrap:break-word;hyphens:auto}h1{font-size:var(--text-2xl);color:var(--color-text-accent)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}h4{font-size:var(--text-base)}.lead{font-size:var(--font-size-1)}::selection{background:var(--color-background-accent);color:var(--color-text-primary-inverse)}*:focus-visible{outline-style:dashed;outline-offset:4px;outline-width:3px;outline-color:var(--color-border-accent)}ul:not([role=list]) li+li{margin-top:1rem}a{color:var(--color-text-accent);text-decoration:underline;text-decoration-skip-ink:auto;text-underline-offset:.125em}a:hover,a:active{color:var(--color-active);text-decoration-style:dotted;text-decoration-color:currentColor}ul{list-style-type:square}ul li::marker{color:var(--color-text-accent)}hr{border:none;border-top:2px dotted var(--gray-400)}kbd{font-family:var(--font-mono);background-color:var(--color-background-secondary);padding:.25em .35em;border-radius:var(--radius-sm)}pre{--offset: 2rem;margin-inline:calc(-1 * var(--offset));padding:var(--offset);border-radius:var(--radius-md)}.text-lead{font-size:1.25rem}.flow>*+*{margin-top:var(--flow-space)}.article{--article-space: var(--space-6)}.article>:first-child{margin-top:0}.article :where(h1,h2,h3){margin-top:1.75em;margin-bottom:1em}.article>* :where(h1,h2,h3){margin-top:0}.article p:not(:last-child),.article :where(ol,ul):not(:last-child){margin-bottom:var(--article-space)}.article :where(figure){margin-top:var(--article-space);margin-bottom:calc(var(--article-space) * 2)}.article :where(ul,ol) li::marker{color:var(--color-text-accent);font-weight:var(--text-black);font-family:var(--font-sans)}.article ul li:not(:last-child),.article ol li:not(:last-child){margin-bottom:calc(var(--article-space) / 2)}.article li ul{margin-top:calc(var(--article-space) / 2);margin-bottom:0}.article code{font-family:monospace;background-color:var(--color-background-tertiary);border-radius:var(--radius-sm);padding-left:.25em;padding-right:.25em;font-size:var(--text-code)}.article pre{font-size:var(--text-code);border-radius:var(--radius-md);padding:0 3rem}.article pre code{background-color:transparent}@supports (initial-letter: 1 1) or (-webkit-initial-letter: 1 1){.article .has-dropcap:first-letter{initial-letter:2;-webkit-initial-letter:2;margin-right:1rem;font-family:var(--font-sans);font-weight:var(--font-bold)}}.article a{color:var(--color-text-accent);text-decoration:underline;text-decoration-skip-ink:auto;text-underline-offset:.125em}a:hover,a:active{color:var(--color-hover);text-decoration-style:dotted;text-decoration-color:currentColor}.article hr{border:none;border-top:2px dotted var(--gray-400)}.article img{height:auto}.mt-0{margin-top:0}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mt-7{margin-top:var(--space-7)}.mt-8{margin-top:var(--space-8)}.mt-9{margin-top:var(--space-9)}.mt-10{margin-top:var(--space-10)}.mt-11{margin-top:var(--space-11)}.mt-12{margin-top:var(--space-12)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.mb-6{margin-bottom:var(--space-6)}.mb-7{margin-bottom:var(--space-7)}.mb-8{margin-bottom:var(--space-8)}.mb-9{margin-bottom:var(--space-9)}.mb-10{margin-bottom:var(--space-10)}.mb-11{margin-bottom:var(--space-11)}.mb-12{margin-bottom:var(--space-12)}.my-0{margin-top:0;margin-bottom:0}.my-1{margin-top:var(--space-1);margin-bottom:var(--space-1)}.my-2{margin-top:var(--space-2);margin-bottom:var(--space-2)}.my-3{margin-top:var(--space-3);margin-bottom:var(--space-3)}.my-4{margin-top:var(--space-4);margin-bottom:var(--space-4)}.my-5{margin-top:var(--space-5);margin-bottom:var(--space-5)}.my-6{margin-top:var(--space-6);margin-bottom:var(--space-6)}.my-7{margin-top:var(--space-7);margin-bottom:var(--space-7)}.my-8{margin-top:var(--space-8);margin-bottom:var(--space-8)}.my-9{margin-top:var(--space-9);margin-bottom:var(--space-9)}.my-10{margin-top:var(--space-10);margin-bottom:var(--space-10)}.my-11{margin-top:var(--space-11);margin-bottom:var(--space-11)}.my-12{margin-top:var(--space-12);margin-bottom:var(--space-12)}.mt-auto{margin-top:auto}@media (min-width: 768px){.md\:mt-0{margin-top:0}.md\:mt-1{margin-top:var(--space-1)}.md\:mt-2{margin-top:var(--space-2)}.md\:mt-3{margin-top:var(--space-3)}.md\:mt-4{margin-top:var(--space-4)}.md\:mt-5{margin-top:var(--space-5)}.md\:mt-6{margin-top:var(--space-6)}.md\:mt-7{margin-top:var(--space-7)}.md\:mt-8{margin-top:var(--space-8)}.md\:mt-9{margin-top:var(--space-9)}.md\:mt-10{margin-top:var(--space-10)}.md\:mt-11{margin-top:var(--space-11)}.md\:mt-12{margin-top:var(--space-12)}.md\:mb-0{margin-bottom:0}.md\:mb-1{margin-bottom:var(--space-1)}.md\:mb-2{margin-bottom:var(--space-2)}.md\:mb-3{margin-bottom:var(--space-3)}.md\:mb-4{margin-bottom:var(--space-4)}.md\:mb-5{margin-bottom:var(--space-5)}.md\:mb-6{margin-bottom:var(--space-6)}.md\:mb-7{margin-bottom:var(--space-7)}.md\:mb-8{margin-bottom:var(--space-8)}.md\:mb-9{margin-bottom:var(--space-9)}.md\:mb-10{margin-bottom:var(--space-10)}.md\:mb-11{margin-bottom:var(--space-11)}.md\:mb-12{margin-bottom:var(--space-12)}.md\:my-0{margin-top:0;margin-bottom:0}.md\:my-1{margin-top:var(--space-1);margin-bottom:var(--space-1)}.md\:my-2{margin-top:var(--space-2);margin-bottom:var(--space-2)}.md\:my-3{margin-top:var(--space-3);margin-bottom:var(--space-3)}.md\:my-4{margin-top:var(--space-4);margin-bottom:var(--space-4)}.md\:my-5{margin-top:var(--space-5);margin-bottom:var(--space-5)}.md\:my-6{margin-top:var(--space-6);margin-bottom:var(--space-6)}.md\:my-7{margin-top:var(--space-7);margin-bottom:var(--space-7)}.md\:my-8{margin-top:var(--space-8);margin-bottom:var(--space-8)}.md\:my-9{margin-top:var(--space-9);margin-bottom:var(--space-9)}.md\:my-10{margin-top:var(--space-10);margin-bottom:var(--space-10)}.md\:my-11{margin-top:var(--space-11);margin-bottom:var(--space-11)}.md\:my-12{margin-top:var(--space-12);margin-bottom:var(--space-12)}}@media (min-width: 992px){.lg\:mt-0{margin-top:0}.lg\:mt-1{margin-top:var(--space-1)}.lg\:mt-2{margin-top:var(--space-2)}.lg\:mt-3{margin-top:var(--space-3)}.lg\:mt-4{margin-top:var(--space-4)}.lg\:mt-5{margin-top:var(--space-5)}.lg\:mt-6{margin-top:var(--space-6)}.lg\:mt-7{margin-top:var(--space-7)}.lg\:mt-8{margin-top:var(--space-8)}.lg\:mt-9{margin-top:var(--space-9)}.lg\:mt-10{margin-top:var(--space-10)}.lg\:mt-11{margin-top:var(--space-11)}.lg\:mt-12{margin-top:var(--space-12)}.lg\:mb-0{margin-bottom:0}.lg\:mb-1{margin-bottom:var(--space-1)}.lg\:mb-2{margin-bottom:var(--space-2)}.lg\:mb-3{margin-bottom:var(--space-3)}.lg\:mb-4{margin-bottom:var(--space-4)}.lg\:mb-5{margin-bottom:var(--space-5)}.lg\:mb-6{margin-bottom:var(--space-6)}.lg\:mb-7{margin-bottom:var(--space-7)}.lg\:mb-8{margin-bottom:var(--space-8)}.lg\:mb-9{margin-bottom:var(--space-9)}.lg\:mb-10{margin-bottom:var(--space-10)}.lg\:mb-11{margin-bottom:var(--space-11)}.lg\:mb-12{margin-bottom:var(--space-12)}.lg\:my-0{margin-top:0;margin-bottom:0}.lg\:my-1{margin-top:var(--space-1);margin-bottom:var(--space-1)}.lg\:my-2{margin-top:var(--space-2);margin-bottom:var(--space-2)}.lg\:my-3{margin-top:var(--space-3);margin-bottom:var(--space-3)}.lg\:my-4{margin-top:var(--space-4);margin-bottom:var(--space-4)}.lg\:my-5{margin-top:var(--space-5);margin-bottom:var(--space-5)}.lg\:my-6{margin-top:var(--space-6);margin-bottom:var(--space-6)}.lg\:my-7{margin-top:var(--space-7);margin-bottom:var(--space-7)}.lg\:my-8{margin-top:var(--space-8);margin-bottom:var(--space-8)}.lg\:my-9{margin-top:var(--space-9);margin-bottom:var(--space-9)}.lg\:my-10{margin-top:var(--space-10);margin-bottom:var(--space-10)}.lg\:my-11{margin-top:var(--space-11);margin-bottom:var(--space-11)}.lg\:my-12{margin-top:var(--space-12);margin-bottom:var(--space-12)}}.py0{padding-top:0;padding-bottom:0}.pb0{padding-bottom:0}.pt0{padding-top:0}.text-center{text-align:center}.block{display:block}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-code{font-size:var(--font-size-3)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.font-serif{font-family:var(--font-serif)}.font-sans{font-family:var(--font-sans)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);overflow:hidden;white-space:nowrap}.inline-block{display:inline-block}.background-primary{background-color:var(--color-background-primary)}.text-primary{color:var(--color-text-primary)}.text-tertiary{color:var(--color-text-tertiary)}.text-secondary{color:var(--color-text-secondary)}.background-secondary{background-color:var(--color-background-secondary)}.relative{position:relative}.object-cover{object-fit:cover}.height-auto{height:auto}.rounded-md{border-radius:var(--radius-md)}.font-normal{font-weight:var(--font-normal)}.font-bold{font-weight:var(--font-bold)}.grid-container[data-astro-cid-utggucxy]{width:min(100% - 2rem,var(--container-max-width-md));margin-inline:auto}footer[data-astro-cid-sz7xmlte]{padding:6rem 0;background-color:var(--color-background-secondary)}.footer-wrapper[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;justify-content:space-between;text-align:center}.footer-wrapper[data-astro-cid-sz7xmlte] div[data-astro-cid-sz7xmlte]{display:flex;justify-content:center;flex-wrap:wrap;gap:2rem}.footer-wrapper[data-astro-cid-sz7xmlte] div[data-astro-cid-sz7xmlte]:first-child{margin-bottom:2rem}a[data-astro-cid-sz7xmlte]{text-decoration:none;color:var(--color-text-primary)}a[data-astro-cid-sz7xmlte]:hover{color:var(--color-text-accent)}a[data-astro-cid-sz7xmlte]:hover svg[data-astro-cid-sz7xmlte]{fill:currentColor}svg[data-astro-cid-sz7xmlte]{height:1em;display:inline;fill:var(--color-text-primary)}.footer-legal-wrapper[data-astro-cid-sz7xmlte]{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;padding:var(--space-10) 0 var(--space-5)}.footer-legal-wrapper[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--color-text-secondary);font-family:var(--font-serif)}@media (min-width: 768px){.footer-wrapper[data-astro-cid-sz7xmlte]{flex-direction:row}.footer-wrapper[data-astro-cid-sz7xmlte] div[data-astro-cid-sz7xmlte]:first-child{margin-bottom:0}.footer-legal-wrapper[data-astro-cid-sz7xmlte]{display:flex;justify-content:flex-start}}header[data-astro-cid-dmqpwcec]{font-family:var(--font-sans);padding:1rem;display:flex;flex-direction:column;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem}a[data-astro-cid-dmqpwcec]{color:var(--color-text-primary);text-decoration:none;font-size:var(--text-code);font-weight:var(--font-bold);text-underline-offset:.3em;text-decoration-skip-ink:auto}a[data-astro-cid-dmqpwcec]:hover,a[data-astro-cid-dmqpwcec][aria-current=page]{color:var(--color-text-accent);text-decoration:underline;text-decoration-thickness:2px}ul[data-astro-cid-dmqpwcec]{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;column-gap:2rem}li[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]{font-weight:var(--font-normal)}@media (min-width: 768px){header[data-astro-cid-dmqpwcec]{justify-content:space-between;flex-direction:row;align-items:baseline}}@media (min-width: 992px){header[data-astro-cid-dmqpwcec]{padding:2rem 3rem}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}section[data-astro-cid-sh445jdo]{padding:var(--section-padding-block) 0}.secondary[data-astro-cid-sh445jdo]{background-color:var(--color-background-secondary)}.gradient[data-astro-cid-sh445jdo]{background:radial-gradient(266.48% 111.62% at 69% 22.89%,#9639cc,#473ef3 87.3%),url(https://grainy-gradients.vercel.app/noise.svg)}.py0[data-astro-cid-sh445jdo]{padding-top:0;padding-bottom:0}.pb0[data-astro-cid-sh445jdo]{padding-bottom:0}.pt0[data-astro-cid-sh445jdo]{padding-top:0}.container{width:min(100% - 2rem,var(--container-max-width-md));margin-inline:auto}.container--lg{width:min(100% - 2rem,var(--container-max-width-lg))}.container--xl{width:min(100% - 2rem,var(--container-max-width-xl))}.container--2xl{width:min(100% - 2rem,var(--container-max-width-2xl))}
