@charset "UTF-8";:root{--step--2: clamp(.69rem, calc(.68rem + .05vw), .72rem);--step--1: clamp(.83rem, calc(.81rem + .13vw), .9rem);--step-0: clamp(1rem, calc(.95rem + .24vw), 1.13rem);--step-1: clamp(1.2rem, calc(1.12rem + .4vw), 1.41rem);--step-2: clamp(1.44rem, calc(1.32rem + .62vw), 1.76rem);--step-3: clamp(1.73rem, calc(1.54rem + .92vw), 2.2rem);--step-4: clamp(2.07rem, calc(1.81rem + 1.31vw), 2.75rem);--step-5: clamp(2.49rem, calc(2.12rem + 1.84vw), 3.43rem)}.btn{color:var(--fg);background:var(--button-bg);font-size:var(--step-0);border:2px solid var(--border-color);padding:.25rem .5rem;border-radius:.25rem;box-shadow:0 5px 0 0 var(--border-color);transition-property:box-shadow background color transform;transition-duration:30ms}@media screen and (prefers-reduced-motion: no-preference){.btn:active{background:var(--button-pressed-bg);box-shadow:0 0 0 0 var(--border-color);transform:translateY(5px)}}:root{--bg: #151513;--fg: #fff;--button-bg: #30302b;--button-pressed-bg: #151513;--hero-bg: radial-gradient(circle at .72% 50.16%, #ff240066, transparent 27%), radial-gradient(circle at 99.28% 23.26%, #6112ff55, transparent 24%), radial-gradient(circle at 50% 50%, #151513, #151513 100%);--border-color: #fff;--anchor-color: #BFBFFF}@media screen and (prefers-color-scheme: light){:root{--bg: #fff;--fg: #151513;--button-bg: #fff;--button-pressed-bg: #e6e6e6;--hero-bg: radial-gradient( circle at .72% 50.16%, #ff240033, transparent 24% ), radial-gradient(circle at 99.28% 23.26%, #6112ff33, transparent 20%), radial-gradient(circle at 50% 50%, #fff, #fff 100%);--border-color: #151513;--anchor-color: blue}}/**
 * @license
 *
 * Font Family: Switzer
 * Designed by: Jérémie Hornus
 * URL: https://www.fontshare.com/fonts/switzer
 * © 2022 Indian Type Foundry
 *
 * Font Styles:
 * Switzer Variable(Variable font)
 * Switzer Variable Italic(Variable font)
 *
*/@font-face{font-family:Switzer-Variable;src:url(/fonts/Switzer-Variable.woff2) format("woff2"),url(/fonts/Switzer-Variable.woff) format("woff"),url(/fonts/Switzer-Variable.ttf) format("truetype");font-weight:100 900;font-display:swap;font-style:normal}@font-face{font-family:Switzer-VariableItalic;src:url(/fonts/Switzer-VariableItalic.woff2) format("woff2"),url(/fonts/Switzer-VariableItalic.woff) format("woff"),url(/fonts/Switzer-VariableItalic.ttf) format("truetype");font-weight:100 900;font-display:swap;font-style:italic}header nav{display:grid;min-height:3rem;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:2px solid var(--border-color);align-items:center;padding:0 1rem}@media (max-width: 39.99em){header nav{grid-template-columns:1fr 1fr;grid-template-rows:1fr fit-content}}header nav section.home{width:fit-content;display:flex;align-items:center;color:#ff2400;user-select:none;font-weight:600}header nav button.toggle-links{height:2rem;padding:0 .25rem;width:2.5rem;font-size:1.75rem;justify-self:end;position:relative;bottom:3px}header nav ul.links{list-style:none;display:flex;flex-direction:row;align-items:center;margin:0;padding:0;gap:1rem}@media (min-width: 40em){header nav ul.links{justify-content:end;grid-column:3/4}}@media (max-width: 39.99em){header nav ul.links{justify-content:center;grid-row-start:2;grid-column:1/3;display:none;padding-bottom:.5rem}}header nav ul.links a{color:var(--fg);transition:color .1s}header nav ul.links a:hover{color:#ff2400}header nav ul.links a [class*=i-]{font-size:2rem;height:2rem;width:2rem}*{box-sizing:border-box}body{min-height:100vh;margin:0;font-size:var(--step-0);font-family:Switzer-Variable,sans-serif;line-height:1.5;color:var(--fg);background-color:var(--bg)}a,a:visited,a:active{color:var(--anchor-color)}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgba(0,0,0,0);--un-ring-shadow:0 0 rgba(0,0,0,0);--un-shadow-inset: ;--un-shadow:0 0 rgba(0,0,0,0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgba(147,197,253,.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgba(0,0,0,0);--un-ring-shadow:0 0 rgba(0,0,0,0);--un-shadow-inset: ;--un-shadow:0 0 rgba(0,0,0,0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgba(147,197,253,.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.i-material-symbols\:menu-rounded{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M4 18q-.425 0-.713-.288T3 17q0-.425.288-.713T4 16h16q.425 0 .713.288T21 17q0 .425-.288.713T20 18H4Zm0-5q-.425 0-.713-.288T3 12q0-.425.288-.713T4 11h16q.425 0 .713.288T21 12q0 .425-.288.713T20 13H4Zm0-5q-.425 0-.713-.288T3 7q0-.425.288-.713T4 6h16q.425 0 .713.288T21 7q0 .425-.288.713T20 8H4Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1em;height:1em}.i-simple-icons\:codeberg{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M11.955.49A12 12 0 0 0 0 12.49a12 12 0 0 0 1.832 6.373L11.838 5.928a.187.14 0 0 1 .324 0l10.006 12.935A12 12 0 0 0 24 12.49a12 12 0 0 0-12-12a12 12 0 0 0-.045 0zm.375 6.467l4.416 16.553a12 12 0 0 0 5.137-4.213z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1em;height:1em}.i-simple-icons\:npm{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M1.763 0C.786 0 0 .786 0 1.763v20.474C0 23.214.786 24 1.763 24h20.474c.977 0 1.763-.786 1.763-1.763V1.763C24 .786 23.214 0 22.237 0zM5.13 5.323l13.837.019l-.009 13.836h-3.464l.01-10.382h-3.456L12.04 19.17H5.113z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1em;height:1em}.icon-link{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M11 17H7q-2.075 0-3.538-1.463T2 12q0-2.075 1.463-3.538T7 7h4v2H7q-1.25 0-2.125.875T4 12q0 1.25.875 2.125T7 15h4v2Zm-3-4v-2h8v2H8Zm5 4v-2h4q1.25 0 2.125-.875T20 12q0-1.25-.875-2.125T17 9h-4V7h4q2.075 0 3.538 1.463T22 12q0 2.075-1.463 3.538T17 17h-4Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1em;height:1em}.m-4{margin:1rem}.h-full{height:100%}.w-full{width:100%}.flex{display:flex}.items-center{align-items:center}.justify-center{justify-content:center}.text-center{text-align:center}.decoration-none{text-decoration:none}@media (min-width: 640px){.sm\:hidden{display:none}}
