.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}*,*:before,*:after{box-sizing:border-box;-webkit-font-smoothing:antialiased}body{margin:0}button{color:currentColor;cursor:pointer}a{color:currentColor}@font-face{font-family:Recursive Mono;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/Recursive/RecursiveMonoCslSt-Light.woff2) format("woff2")}@font-face{font-family:Recursive Mono;font-style:italic;font-weight:300;font-display:swap;src:url(/fonts/Recursive/RecursiveMonoCslSt-LtItalic.woff2) format("woff2")}@font-face{font-family:Recursive Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Recursive/RecursiveMonoCslSt-Regular.woff2) format("woff2")}@font-face{font-family:Recursive Mono;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/Recursive/RecursiveMonoCslSt-Italic.woff2) format("woff2")}@font-face{font-family:Recursive Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/Recursive/RecursiveMonoCslSt-Med.woff2) format("woff2")}@font-face{font-family:Recursive Mono;font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/Recursive/RecursiveMonoCslSt-MedItalic.woff2) format("woff2")}@font-face{font-family:Recursive Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/Recursive/RecursiveMonoCslSt-SemiBd.woff2) format("woff2")}@font-face{font-family:Recursive Mono;font-style:italic;font-weight:600;font-display:swap;src:url(/fonts/Recursive/RecursiveMonoCslSt-SmBdItalid.woff2) format("woff2")}@font-face{font-family:Recursive Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Recursive/RecursiveMonoCslSt-Bold.woff2) format("woff2")}@font-face{font-family:Recursive Mono;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/Recursive/RecursiveMonoCslSt-BdItalic.woff2) format("woff2")}@font-face{font-family:InterVariable;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/Inter/InterVariable.woff2) format("woff2")}@font-face{font-family:InterVariable;font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/Inter/InterVariable-Italic.woff2) format("woff2")}@font-face{font-family:BricolageGrotesque;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/BricolageGrotesque/BricolageGrotesque-Variable.woff2) format("woff2")}:root{--clr-gray-100: #f0f0f5;--clr-gray-200: #e8e8f3;--clr-gray-300: #dedeec;--clr-gray-400: #bdbdcb;--clr-gray-500: #9c9cb1;--clr-gray-600: #86869a;--clr-gray-700: #373650;--clr-gray-800: #11101b;--clr-gray-900: #0a0a10;--clr-blue-300: #c2c2ff;--clr-blue-500: #7676ff;--clr-blue-900: #0000ff;--clr-accent: var(--clr-blue-900);--size-border-sm: 4px;--size-border-md: 8px;--size-border-lg: 12px;--time-regular: .2s;--ff-title: "BricolageGrotesque", "Inter", "Helvetica", "Arial", sans-serif;--ff-sans-serif: "Inter", "Helvetica", "Arial", sans-serif;--ff-mono: "Recursive Mono", monospace;@supports (font-variation-settings: normal){--ff-sans-serif: "InterVariable", "Helvetica", "Arial", sans-serif;font-optical-sizing:auto}}*,:before,:after{box-sizing:border-box}h2{margin-block:2.5rem 1rem;font-size:2rem}h1,h2,h3,h4,h5,h6{font-family:var(--ff-title);line-height:1.125}a,button{-webkit-tap-highlight-color:transparent}a{color:var(--clr-gray-700);font-weight:500;transition:color .2s;&:hover{color:var(--clr-blue-900)}}em{font-weight:600}:is(p,li)>code{display:inline-block;padding-inline:.375em;background-color:var(--clr-gray-200);border:solid 1px var(--clr-gray-300);border-radius:var(--size-border-md);color:#ee5a05;font-family:var(--ff-mono);font-size:1.125rem;font-style:italic}pre{display:block;margin-inline:-15px;margin-block:15px;padding:20px 15px;border-radius:var(--size-border-lg);font-size:1rem;& code{font-family:var(--ff-mono)}}ul{padding-inline-start:1em}li{margin-block:.25rem;&::marker{color:var(--clr-accent)}}img{display:block;max-width:100%;height:fit-content}blockquote{font-style:italic;border:solid 1px var(--clr-gray-400);margin:0 -15px;padding:15px;background-color:var(--clr-gray-300);border-radius:12px;>:first-child{margin-top:0}>:last-child{margin-bottom:0}}.container{margin-inline:auto;width:100%;max-width:960px;padding-inline:30px}.visually-hidden{display:inline-block;position:absolute;overflow:hidden;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0}.menu-mobile{--clr-accent: var(--clr-blue-500);display:block;@media screen and (min-width: 768px){display:none}}.menu-desktop{display:none;@media screen and (min-width: 768px){display:block}}.menu-dialog{width:100%;max-width:340px;height:100%;max-height:100%;margin-inline:auto 0;margin-block:0;padding:0;border:0;animation:slide-in .3s cubic-bezier(.215,.61,.355,1) forwards;will-change:transform;&[data-closing]{animation:slide-out .15s cubic-bezier(.215,.61,.355,1) forwards}}.menu-dialog::backdrop{animation:fade-in .2s cubic-bezier(.215,.61,.355,1) forwards}.menu-dialog[data-closing]::backdrop{animation:fade-out .15s cubic-bezier(.215,.61,.355,1) forwards}.menu-dialog-content{display:flex;align-items:flex-start;gap:15px;width:100%;height:100%;padding:20px 30px;background-color:#000;color:#fff}.menu-close-btn{order:1}.link-item{margin-block:0}.links{display:flex;flex-direction:column;gap:20px;width:100%;margin:0;padding:0;list-style:none;@media screen and (min-width: 768px){flex-direction:row}}.link{display:block;margin-top:.1em;color:var(--clr-gray-100);font-size:1.2rem;font-weight:700;text-decoration:none;transition:color .25s;@media screen and (min-width: 768px){&:after{content:"";display:block;width:100%;height:3px;background-color:currentColor;border-radius:100vw;opacity:0;transform:scale(.98) translateY(-6px);transition:opacity var(--time-regular),transform var(--time-regular)}&.link-current:after,&:hover:after,&:focus:after{opacity:1;transform:translateY(-2px)}&.link-current{color:var(--clr-accent)}color:var(--clr-gray-900)}}.icon-btn{display:flex;background-color:transparent;border:0;padding:0;line-height:1}[data-icon]{color:currentColor}@keyframes slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slide-out{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes fade-in{0%{backdrop-filter:blur(0);background-color:transparent}to{backdrop-filter:blur(10px);background-color:#00000040}}@keyframes fade-out{0%{backdrop-filter:blur(10px);background-color:#00000040}to{backdrop-filter:blur(0);background-color:transparent}}svg[data-astro-cid-jwiz4kkf]{transition:fill var(--time-regular)}svg[data-astro-cid-jwiz4kkf]:hover{fill:var(--colorPrimary)}.navbar[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:1;height:fit-content;background-color:color-mix(in srgb,var(--clr-gray-100),transparent 20%);backdrop-filter:blur(10px);@media print{display:none}.container[data-astro-cid-3ef6ksr2]{display:flex;justify-content:space-between;align-items:center;padding-block:20px}}.navbar-right[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:20px}.logo-link[data-astro-cid-3ef6ksr2]{display:block;line-height:0}.social-link[data-astro-cid-yxtifmrq]{display:inline-grid;place-content:center;width:40px;aspect-ratio:1;border:solid 1px transparent;border-radius:var(--size-border-lg);color:var(--clr-gray-900);text-decoration:none;transition:border-color var(--time-regular),color var(--time-regular),scale var(--time-regular);&:hover,&:focus-visible{border-color:var(--clr-accent);color:var(--clr-accent);scale:1.05}}footer[data-astro-cid-sz7xmlte]{padding-block:10px;background-color:var(--clr-gray-300);color:var(--clr-gray-700);font-size:.925rem;transition:background-color var(--time-regular)}.footer-content[data-astro-cid-sz7xmlte]{display:flex;align-items:center;justify-content:space-between;gap:20px;height:fit-content;text-align:center}.social-links[data-astro-cid-sz7xmlte]{display:flex;gap:8px}.page-title[data-astro-cid-guvttfii]{margin:0;padding-block:20px 10px;border-bottom:solid 2px var(--clr-gray-300);color:var(--clr-gray-800);font-size:3rem;font-weight:700;letter-spacing:-.03em}.page-header[data-astro-cid-guvttfii]{margin-bottom:30px}html{height:100%;background-color:var(--clr-gray-100);color:var(--clr-gray-900);transition:background var(--time-regular),color var(--time-regular);text-wrap:pretty}body{display:flex;flex-direction:column;min-height:100%;font-family:var(--ff-sans-serif);font-size:1.25rem;line-height:1.65;text-wrap:pretty}main[data-astro-cid-37fxchfa]{isolation:isolate;display:flex;flex-direction:column;flex:1;padding-block:30px;&.home{justify-content:center}}
