:root{--indigo-7:#4263eb;--purple-7:#ae3ec9;--gray-12:#030507;--gray-7:#495057;--gray-0:#f8f9fa;--gray-2:#e9ecef;--gray-3:#dee2e6;--gray-4:#ced4da;--font-system-ui:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;--font-lineheight-3:1.5;--red-6:#fa5252;--red-3:#ffa8a8;--gray-6:#868e96;--indigo-3:#91a7ff;--purple-3:#e599f7;--gray-1:#f1f3f5;--gray-9:#212529;--gray-8:#343a40;--ease-2:cubic-bezier(.25,0,.4,1);--font-weight-9:900;--font-lineheight-1:1.25;--font-size-8:3.5rem;--size-header-1:20ch;--font-size-6:2.5rem;--size-header-2:25ch;--font-size-5:2rem;--font-size-4:1.5rem;--font-size-3:1.25rem;--size-header-3:35ch;--font-size-2:1.1rem;--indigo-2:#bac8ff;--purple-2:#eebefa;--size-1:.25rem;--size-2:.5rem;--size-relative-4:1.25ch;--radius-2:5px;--size-content-1:20ch;--size-3:1rem;--size-10:5rem;--font-monospace-code:Dank Mono,Operator Mono,Inconsolata,Fira Mono,ui-monospace,SF Mono,Monaco,Droid Sans Mono,Source Code Pro,Cascadia Code,Menlo,Consolas,DejaVu Sans Mono,monospace;--border-size-1:1px;--size-8:3rem;--size-content-2:45ch;--size-content-3:60ch;--font-weight-7:700;--size-5:1.5rem;--font-size-0:.75rem;--border-size-2:2px;--size-fluid-5:max(4rem,min(5vw,5rem));--font-size-1:1rem;--border-size-3:5px;--size-4:1.25rem;--red-9:#c92a2a;--red-2:#ffc9c9;--green-9:#2b8a3e;--green-1:#d3f9d8;--blue-5:#339af0;--radius-3:1rem;--shadow-6:0 -1px 2px 0 hsl(var(--shadow-color)/calc(var(--shadow-strength) + 2%)),0 3px 2px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 3%)),0 7px 5px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 3%)),0 12px 10px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 4%)),0 22px 18px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 5%)),0 41px 33px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 6%)),0 100px 80px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 7%));--size-relative-7:2ch;--shadow-2:0 3px 5px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 3%)),0 7px 14px -5px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 5%));--size-relative-6:1.75ch;--ease-3:cubic-bezier(.25,0,.3,1);--ease-4:cubic-bezier(.25,0,.2,1);--shadow-1:0 1px 2px -1px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 9%));--gray-5:#adb5bd;--inner-shadow-4:inset 0 2px 14px 0 hsl(var(--shadow-color)/calc(var(--shadow-strength) + 9%)),var(--inner-shadow-highlight);--ease-out-5:cubic-bezier(0,0,0,1);--ease-in-out-3:cubic-bezier(.5,0,.5,1);--ease-out-3:cubic-bezier(0,0,.3,1);--ease-squish-2:var(--ease-elastic-in-out-2);--layer-1:1;--size-fluid-3:max(1.5rem,min(3vw,2rem));--font-weight-4:400;--size-6:1.75rem;--layer-5:5;--radius-round:1e5px;--ease-elastic-in-out-3:cubic-bezier(.5,-.5,.1,1.5);--animation-bounce:bounce 2s var(--ease-squish-2) infinite;--radius-blob-5:49% 51% 48% 52%/57% 44% 56% 43%;--size-fluid-4:max(2rem,min(4vw,3rem));--size-12:10rem;--size-7:2rem;--font-sans:var(--font-system-ui);--shadow-color:220 40% 2%;--shadow-strength:25%;--inner-shadow-highlight:inset 0 -.5px 0 0 hsla(0,0%,100%,.067),inset 0 .5px 0 0 rgba(0,0,0,.467);--ease-elastic-in-out-2:cubic-bezier(.5,-.3,.1,1.5);--size-fluid-2:max(1rem,min(2vw,1.5rem))}:where(html){--csstools-color-scheme--light:initial;--link:var(--indigo-7);--link-visited:var(--purple-7);--text-1:var(--gray-12);--text-2:var(--gray-7);--surface-1:var(--gray-0);--surface-2:var(--gray-2);--surface-3:var(--gray-3);--surface-4:var(--gray-4);--scrollthumb-color:var(--gray-7);-webkit-text-size-adjust:none;accent-color:var(--brand,var(--link));background-color:var(--surface-1);block-size:100%;caret-color:var(--brand,var(--link));color:var(--text-1);color-scheme:light;font-family:var(--font-system-ui);line-height:var(--font-lineheight-3);scrollbar-color:var(--scrollthumb-color) transparent}@media (dynamic-range:high) or (color-gamut:p3){@supports (color:color(display-p3 0 0 0)){:where(html){--link:color(display-p3 .1 .39 1);--link-visited:color(display-p3 .6 .2 1)}}}:where(html) :where(dialog){background-color:var(--surface-1)}:where(html) :where(button,.btn){--_highlight:var(--_highlight-light);--_bg:var(--_bg-light);--_ink-shadow:var(--_ink-shadow-light)}:where(html) :where(button,.btn) :where([type=reset]){--_text:var(--red-6);--_border:var(--red-3)}:where(html) [disabled]:where(button,input[type=button],.btn){--_text:var(--gray-6)}:where(html) [disabled]:where(button,input[type=submit],.btn){--_text:var(--gray-6)}:where(html) [disabled]:where(button,input[type=reset],.btn){--_text:var(--gray-6)}:where(html) :where(textarea,select,input:not([type=button],[type=submit],[type=reset])){background-color:var(--surface-2)}@media (prefers-color-scheme:dark){:where(html){--csstools-color-scheme--light: ;--link:var(--indigo-3);--link-visited:var(--purple-3);--text-1:var(--gray-1);--text-2:var(--gray-4);--surface-1:var(--gray-9);--surface-2:var(--gray-8);--surface-3:var(--gray-7);--surface-4:var(--gray-6);--scrollthumb-color:var(--gray-6);--shadow-strength:10%;--shadow-color:220 40% 2%;color-scheme:dark}}:where(a[href]){color:var(--brand,var(--link))}:where(a[href]):where(:visited){color:var(--link-visited)}:focus-visible{outline-color:var(--brand,var(--link))}*,:after,:before{box-sizing:border-box}:where(:not(dialog)){margin:0}:where(:not(fieldset,progress,meter)){background-origin:border-box;background-repeat:no-repeat;border-style:solid;border-width:0}@media (prefers-reduced-motion:no-preference){:where(html){scroll-behavior:smooth}}@media (prefers-reduced-motion:no-preference){:where(:focus-visible){transition:outline-offset 145ms var(--ease-2)}:where(:not(:active):focus-visible){transition-duration:.25s}}:where(:not(:active):focus-visible){outline-offset:5px}:where(body){min-block-size:100%}:where(h1,h2,h3,h4,h5,h6){text-wrap:balance;font-weight:var(--font-weight-9);line-height:var(--font-lineheight-1)}:where(h1){font-size:var(--font-size-8);max-inline-size:var(--size-header-1)}:where(h2){font-size:var(--font-size-6);max-inline-size:var(--size-header-2)}:where(h3){font-size:var(--font-size-5)}:where(h4){font-size:var(--font-size-4)}:where(h5){font-size:var(--font-size-3)}:where(h3,h4,h5,h6,dt){max-inline-size:var(--size-header-3)}:where(p,ul,ol,dl,h6){font-size:var(--font-size-2)}:where(a,u,ins,abbr){text-underline-offset:1px}@supports (-moz-appearance:none){:where(a,u,ins,abbr){text-underline-offset:2px}}:where(a[href],area,button,input:not([type=text],[type=email],[type=number],[type=password],[type=""],[type=tel],[type=url]),label[for],select,summary,[tabindex]:not([tabindex*="-"],pre)){cursor:pointer}:where(a[href],area,button,input,label[for],select,summary,textarea,[tabindex]:not([tabindex*="-"])){-webkit-tap-highlight-color:transparent;touch-action:manipulation}:where(a):where([href]){text-decoration-color:var(--indigo-2)}:where(a):where([href]):where(:visited){text-decoration-color:var(--purple-2)}:where(a):where(:not(:hover)){text-decoration:inherit}:where(img,svg,video,canvas,audio,iframe,embed,object){display:block}:where(img,svg,video){block-size:auto;max-inline-size:100%}:where(input,button,textarea,select),:where(input[type=file])::-webkit-file-upload-button{color:inherit;font:inherit;font-size:inherit;letter-spacing:inherit}::-moz-placeholder{color:var(--gray-7);opacity:.75}::placeholder{color:var(--gray-7);opacity:.75}:where(input:not([type=range]),textarea){padding-block:var(--size-1);padding-inline:var(--size-2)}:where(select){field-sizing:content;padding-block:.75ch;padding-inline:var(--size-relative-4) 0}:where(textarea,select,input:not([type=button],[type=submit],[type=reset])){background-color:var(--surface-2);border-radius:var(--radius-2)}:where(textarea){field-sizing:content;min-block-size:2lh;min-inline-size:var(--size-content-1);resize:vertical}:where(input[type=checkbox],input[type=radio]){block-size:var(--size-3);inline-size:var(--size-3)}:where(svg:not([width])){inline-size:var(--size-10)}:where(code,kbd,samp,pre){font-family:var(--font-monospace-code),monospace}:where(:not(pre)>code,kbd){white-space:nowrap}:where(pre){direction:ltr;max-inline-size:-moz-max-content;max-inline-size:max-content;min-inline-size:0;white-space:pre;writing-mode:lr}:where(:not(pre)>code){background:var(--surface-2);border-radius:var(--radius-2);padding:var(--size-1) var(--size-2);writing-mode:lr}:where(kbd,var){border-color:var(--surface-4);border-radius:var(--radius-2);border-width:var(--border-size-1);padding:var(--size-1) var(--size-2)}:where(mark){border-radius:var(--radius-2);padding-inline:var(--size-1)}:where(ol,ul){padding-inline-start:var(--size-8)}:where(li){padding-inline-start:var(--size-2)}:where(li,dd,figcaption){max-inline-size:var(--size-content-2)}:where(p){text-wrap:pretty;max-inline-size:var(--size-content-3)}:where(dt,summary){font-weight:var(--font-weight-7)}:where(dt:not(:first-of-type)){margin-block-start:var(--size-5)}:where(small){font-size:max(.5em,var(--font-size-0));max-inline-size:var(--size-content-1)}:where(hr){background-color:var(--surface-3);height:var(--border-size-2);margin-block:var(--size-fluid-5)}:where(figure){display:grid;gap:var(--size-2);place-items:center}:where(figure)>:where(figcaption){text-wrap:balance;font-size:var(--font-size-1)}:where(blockquote,:not(blockquote)>cite){border-inline-start-width:var(--border-size-3)}:where(blockquote){display:grid;gap:var(--size-3);max-inline-size:var(--size-content-2);padding-block:var(--size-3);padding-inline:var(--size-4)}:where(:not(blockquote)>cite){padding-inline-start:var(--size-2)}:where(summary){background:var(--surface-3);border-radius:var(--radius-2);margin:calc(var(--size-2)*-1) calc(var(--size-3)*-1);padding:var(--size-2) var(--size-3)}:where(details){background:var(--surface-2);border-radius:var(--radius-2);padding-block:var(--size-2);padding-inline:var(--size-3)}:where(details[open]>summary){border-end-end-radius:0;border-end-start-radius:0;margin-bottom:var(--size-2)}:where(fieldset){border:var(--border-size-1) solid var(--surface-4);border-radius:var(--radius-2)}:where(del){background:var(--red-9);color:var(--red-2)}:where(ins){background:var(--green-9);color:var(--green-1)}:where(abbr){text-decoration-color:var(--blue-5)}:where(dialog){background-color:var(--surface-1);border-radius:var(--radius-3);box-shadow:var(--shadow-6);color:inherit}:where(menu){display:flex;gap:var(--size-3);padding-inline-start:0}:where(sup){font-size:.5em}:where(table){--nice-inner-radius:calc(var(--radius-3) - 2px);background:var(--surface-2);border:1px solid var(--surface-2);border-radius:var(--radius-3);width:-moz-fit-content;width:fit-content}:where(table:not(:has(tfoot)) tr:last-child td:first-child){border-end-start-radius:var(--nice-inner-radius)}:where(table:not(:has(tfoot)) tr:last-child td:last-child){border-end-end-radius:var(--nice-inner-radius)}:where(table thead tr:first-child th:first-child){border-start-start-radius:var(--nice-inner-radius)}:where(table thead tr:first-child th:last-child){border-start-end-radius:var(--nice-inner-radius)}:where(tfoot tr:last-child th:first-of-type){border-end-start-radius:var(--nice-inner-radius)}:where(tfoot tr:last-child td:first-of-type){border-end-start-radius:var(--nice-inner-radius)}:where(tfoot tr:last-child th:last-of-type){border-end-end-radius:var(--nice-inner-radius)}:where(tfoot tr:last-child td:last-of-type){border-end-end-radius:var(--nice-inner-radius)}:where(th){background-color:var(--surface-2);color:var(--text-1)}:where(table a:not(.does-not-exist):focus-visible){outline-offset:-2px}:where(table button:not(.does-not-exist):focus-visible){outline-offset:-2px}:where(table [contenteditable]:focus-visible){outline-offset:-2px}:where(td){text-wrap:pretty;background:var(--surface-1);max-inline-size:var(--size-content-2)}:where(td,th){padding:var(--size-2);text-align:left}:where(td:not([align])){text-align:center}:where(th:not([align])){text-align:center}:where(thead){border-collapse:collapse}:where(table tr:hover td),:where(tbody tr:nth-child(2n):hover td){background-color:var(--surface-3)}:where(table>caption){margin:var(--size-3)}:where(tfoot button){padding-block:var(--size-1);padding-inline:var(--size-3)}@media (prefers-color-scheme:dark){:where(textarea,select,input:not([type=button],[type=submit],[type=reset])){background-color:#171a1c}:where(dialog){background-color:var(--surface-2)}::-moz-placeholder{color:var(--gray-6)}::placeholder{color:var(--gray-6)}}:where(html){--gray-0-hsl:210 17% 98%;--gray-1-hsl:210 17% 95%;--gray-2-hsl:210 16% 93%;--gray-3-hsl:210 14% 89%;--gray-4-hsl:210 14% 83%;--gray-5-hsl:210 11% 71%;--gray-6-hsl:210 7% 56%;--gray-7-hsl:210 9% 31%;--gray-8-hsl:210 10% 23%;--gray-9-hsl:210 11% 15%;--gray-10-hsl:214 14% 10%;--gray-11-hsl:216 16% 6%;--gray-12-hsl:210 40% 2%}:where(button,input[type=button],.btn){--_accent:initial;--_text:initial;--_size:initial;--_bg-light:#fff;--_bg-dark:var(--surface-3);--_bg:var(--_bg-light);--_border:var(--surface-3);--_highlight-size:0;--_highlight-light:hsl(var(--gray-5-hsl)/25%);--_highlight-dark:hsl(var(--gray-12-hsl)/25%);--_highlight:var(--_highlight-light);--_ink-shadow-light:0 1px 0 var(--gray-3);--_ink-shadow-dark:0 1px 0 var(--surface-1);--_ink-shadow:var(--_ink-shadow-light);--_icon-size:var(--size-relative-7);--_icon-color:var(--_accent,var(--link));-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;align-items:center;background:var(--_bg);border:var(--border-size-2) solid var(--_border);border-radius:var(--radius-2);box-shadow:var(--shadow-2),0 1px var(--surface-3),0 0 0 var(--_highlight-size) var(--_highlight);color:var(--_text);display:inline-flex;font-size:var(--_size);font-weight:var(--font-weight-7);gap:var(--size-2);justify-content:center;padding-block:.75ch;padding-inline:var(--size-relative-6);text-align:center;text-shadow:var(--_ink-shadow);transition:border-color .5s var(--ease-3);-webkit-user-select:none;-moz-user-select:none;user-select:none}:where(button,input[type=submit],.btn){--_accent:initial;--_text:initial;--_size:initial;--_bg-light:#fff;--_bg-dark:var(--surface-3);--_bg:var(--_bg-light);--_border:var(--surface-3);--_highlight-size:0;--_highlight-light:hsl(var(--gray-5-hsl)/25%);--_highlight-dark:hsl(var(--gray-12-hsl)/25%);--_highlight:var(--_highlight-light);--_ink-shadow-light:0 1px 0 var(--gray-3);--_ink-shadow-dark:0 1px 0 var(--surface-1);--_ink-shadow:var(--_ink-shadow-light);--_icon-size:var(--size-relative-7);--_icon-color:var(--_accent,var(--link));-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;align-items:center;background:var(--_bg);border:var(--border-size-2) solid var(--_border);border-radius:var(--radius-2);box-shadow:var(--shadow-2),0 1px var(--surface-3),0 0 0 var(--_highlight-size) var(--_highlight);color:var(--_text);display:inline-flex;font-size:var(--_size);font-weight:var(--font-weight-7);gap:var(--size-2);justify-content:center;padding-block:.75ch;padding-inline:var(--size-relative-6);text-align:center;text-shadow:var(--_ink-shadow);transition:border-color .5s var(--ease-3);-webkit-user-select:none;-moz-user-select:none;user-select:none}:where(button,input[type=reset],.btn){--_accent:initial;--_text:initial;--_size:initial;--_bg-light:#fff;--_bg-dark:var(--surface-3);--_bg:var(--_bg-light);--_border:var(--surface-3);--_highlight-size:0;--_highlight-light:hsl(var(--gray-5-hsl)/25%);--_highlight-dark:hsl(var(--gray-12-hsl)/25%);--_highlight:var(--_highlight-light);--_ink-shadow-light:0 1px 0 var(--gray-3);--_ink-shadow-dark:0 1px 0 var(--surface-1);--_ink-shadow:var(--_ink-shadow-light);--_icon-size:var(--size-relative-7);--_icon-color:var(--_accent,var(--link));-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;align-items:center;background:var(--_bg);border:var(--border-size-2) solid var(--_border);border-radius:var(--radius-2);box-shadow:var(--shadow-2),0 1px var(--surface-3),0 0 0 var(--_highlight-size) var(--_highlight);color:var(--_text);display:inline-flex;font-size:var(--_size);font-weight:var(--font-weight-7);gap:var(--size-2);justify-content:center;padding-block:.75ch;padding-inline:var(--size-relative-6);text-align:center;text-shadow:var(--_ink-shadow);transition:border-color .5s var(--ease-3);-webkit-user-select:none;-moz-user-select:none;user-select:none}:where(input[type=file])::-webkit-file-upload-button,:where(input[type=file])::file-selector-button{--_accent:initial;--_text:initial;--_size:initial;--_bg-light:#fff;--_bg-dark:var(--surface-3);--_bg:var(--_bg-light);--_border:var(--surface-3);--_highlight-size:0;--_highlight-light:hsl(var(--gray-5-hsl)/25%);--_highlight-dark:hsl(var(--gray-12-hsl)/25%);--_highlight:var(--_highlight-light);--_ink-shadow-light:0 1px 0 var(--gray-3);--_ink-shadow-dark:0 1px 0 var(--surface-1);--_ink-shadow:var(--_ink-shadow-light);--_icon-size:var(--size-relative-7);--_icon-color:var(--_accent,var(--link));-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;align-items:center;background:var(--_bg);border:var(--border-size-2) solid var(--_border);border-radius:var(--radius-2);box-shadow:var(--shadow-2),0 1px var(--surface-3),0 0 0 var(--_highlight-size) var(--_highlight);color:var(--_text);display:inline-flex;font-size:var(--_size);font-weight:var(--font-weight-7);gap:var(--size-2);justify-content:center;padding-block:.75ch;padding-inline:var(--size-relative-6);text-align:center;text-shadow:var(--_ink-shadow);-webkit-transition:border-color .5s var(--ease-3);transition:border-color .5s var(--ease-3);-webkit-user-select:none;user-select:none}@media (prefers-color-scheme:dark){:where(button,input[type=button],.btn){--_highlight:var(--_highlight-dark);--_bg:var(--_bg-dark);--_ink-shadow:var(--_ink-shadow-dark)}:where(button,input[type=submit],.btn){--_highlight:var(--_highlight-dark);--_bg:var(--_bg-dark);--_ink-shadow:var(--_ink-shadow-dark)}:where(button,input[type=reset],.btn){--_highlight:var(--_highlight-dark);--_bg:var(--_bg-dark);--_ink-shadow:var(--_ink-shadow-dark)}:where(input[type=file])::-webkit-file-upload-button,:where(input[type=file])::file-selector-button{--_highlight:var(--_highlight-dark);--_bg:var(--_bg-dark);--_ink-shadow:var(--_ink-shadow-dark)}}@media (prefers-reduced-motion:no-preference){:where(button,input[type=button],.btn){transition:border-color .5s var(--ease-3),box-shadow 145ms var(--ease-4),outline-offset 145ms var(--ease-4)}:where(button,input[type=submit],.btn){transition:border-color .5s var(--ease-3),box-shadow 145ms var(--ease-4),outline-offset 145ms var(--ease-4)}:where(button,input[type=reset],.btn){transition:border-color .5s var(--ease-3),box-shadow 145ms var(--ease-4),outline-offset 145ms var(--ease-4)}:where(input[type=file])::-webkit-file-upload-button,:where(input[type=file])::file-selector-button{-webkit-transition:border-color .5s var(--ease-3),box-shadow 145ms var(--ease-4),outline-offset 145ms var(--ease-4);transition:border-color .5s var(--ease-3),box-shadow 145ms var(--ease-4),outline-offset 145ms var(--ease-4)}}[disabled]:where(button,input[type=button],.btn){--_bg:none;--_text:var(--gray-6);box-shadow:var(--shadow-1);cursor:not-allowed}[disabled]:where(button,input[type=submit],.btn){--_bg:none;--_text:var(--gray-6);box-shadow:var(--shadow-1);cursor:not-allowed}[disabled]:where(button,input[type=reset],.btn){--_bg:none;--_text:var(--gray-6);box-shadow:var(--shadow-1);cursor:not-allowed}@media (prefers-color-scheme:dark){[disabled]:where(button,input[type=button],.btn){--_text:var(--gray-5)}[disabled]:where(button,input[type=submit],.btn){--_text:var(--gray-5)}[disabled]:where(button,input[type=reset],.btn){--_text:var(--gray-5)}}:where(button,input[type=button],.btn):where(:not(:active):hover){--_highlight-size:var(--size-2);transition-duration:.25s}:where(button,input[type=submit],.btn):where(:not(:active):hover){--_highlight-size:var(--size-2);transition-duration:.25s}:where(button,input[type=reset],.btn):where(:not(:active):hover){--_highlight-size:var(--size-2);transition-duration:.25s}:where(button,input[type=button],.btn)>:where(svg){block-size:var(--_icon-size);filter:drop-shadow(var(--_ink-shadow));flex-shrink:0;inline-size:var(--_icon-size)}:where(button,input[type=submit],.btn)>:where(svg){block-size:var(--_icon-size);filter:drop-shadow(var(--_ink-shadow));flex-shrink:0;inline-size:var(--_icon-size)}:where(button,input[type=reset],.btn)>:where(svg){block-size:var(--_icon-size);filter:drop-shadow(var(--_ink-shadow));flex-shrink:0;inline-size:var(--_icon-size)}:where(button,input[type=button],.btn)>:where(svg>*){stroke:var(--_icon-color);stroke-width:var(--border-size-2)}:where(button,input[type=submit],.btn)>:where(svg>*){stroke:var(--_icon-color);stroke-width:var(--border-size-2)}:where(button,input[type=reset],.btn)>:where(svg>*){stroke:var(--_icon-color);stroke-width:var(--border-size-2)}:where(a.btn){-webkit-text-decoration:none;text-decoration:none}:where([type=submit],form button:not([type],[disabled])){--_text:var(--_accent,var(--link))}:where([type=reset]){--_text:var(--red-6);--_border:var(--red-3)}:where([type=reset]):focus-visible{outline-color:var(--red-6)}@media (prefers-color-scheme:dark){:where([type=reset]){--_text:var(--red-2);--_border:var(--surface-3)}}:where(form button:not([type]),[type=submit],[type=reset]):hover:not([disabled]){--_border:currentColor}:where(form button:not([type]),[type=submit],[type=reset]):focus-visible:not([disabled]){--_border:currentColor}:where(input[type=file]){align-self:flex-start;border:var(--border-size-1) solid var(--surface-2);border-radius:var(--radius-2);box-shadow:var(--inner-shadow-4);color:var(--text-2);cursor:auto;max-inline-size:100%;padding:0}:where(input[type=file])::-webkit-file-upload-button,:where(input[type=file])::file-selector-button{cursor:pointer;margin-inline-end:var(--size-relative-6)}@media (prefers-color-scheme:dark){:where([disabled]),:where([type=reset]),:where([type=submit]),:where(form button:not([type=button])){--_bg:var(--surface-1)}}:where(html){--animation-fade-in:fade-in .5s var(--ease-3);--animation-fade-in-bloom:fade-in-bloom 2s var(--ease-3);--animation-fade-out:fade-out .5s var(--ease-3);--animation-fade-out-bloom:fade-out-bloom 2s var(--ease-3);--animation-scale-up:scale-up .5s var(--ease-3);--animation-scale-down:scale-down .5s var(--ease-3);--animation-slide-out-up:slide-out-up .5s var(--ease-3);--animation-slide-out-down:slide-out-down .5s var(--ease-3);--animation-slide-out-right:slide-out-right .5s var(--ease-3);--animation-slide-out-left:slide-out-left .5s var(--ease-3);--animation-slide-in-up:slide-in-up .5s var(--ease-3);--animation-slide-in-down:slide-in-down .5s var(--ease-3);--animation-slide-in-right:slide-in-right .5s var(--ease-3);--animation-slide-in-left:slide-in-left .5s var(--ease-3);--animation-shake-x:shake-x .75s var(--ease-out-5);--animation-shake-y:shake-y .75s var(--ease-out-5);--animation-shake-z:shake-z 1s var(--ease-in-out-3);--animation-spin:spin 2s linear infinite;--animation-ping:ping 5s var(--ease-out-3) infinite;--animation-blink:blink 1s var(--ease-out-3) infinite;--animation-float:float 3s var(--ease-in-out-3) infinite;--animation-bounce:bounce 2s var(--ease-squish-2) infinite;--animation-pulse:pulse 2s var(--ease-out-3) infinite}@keyframes fade-in{to{opacity:1}}@keyframes fade-in-bloom{0%{filter:brightness(1) blur(20px);opacity:0}10%{filter:brightness(2) blur(10px);opacity:1}to{filter:brightness(1) blur(0);opacity:1}}@keyframes fade-out{to{opacity:0}}@keyframes fade-out-bloom{to{filter:brightness(1) blur(20px);opacity:0}10%{filter:brightness(2) blur(10px);opacity:1}0%{filter:brightness(1) blur(0);opacity:1}}@keyframes scale-up{to{transform:scale(1.25)}}@keyframes scale-down{to{transform:scale(.75)}}@keyframes slide-out-up{to{transform:translateY(-100%)}}@keyframes slide-out-down{to{transform:translateY(100%)}}@keyframes slide-out-right{to{transform:translate(100%)}}@keyframes slide-out-left{to{transform:translate(-100%)}}@keyframes slide-in-up{0%{transform:translateY(100%)}}@keyframes slide-in-down{0%{transform:translateY(-100%)}}@keyframes slide-in-right{0%{transform:translate(-100%)}}@keyframes slide-in-left{0%{transform:translate(100%)}}@keyframes shake-x{0%,to{transform:translate(0)}20%{transform:translate(-5%)}40%{transform:translate(5%)}60%{transform:translate(-5%)}80%{transform:translate(5%)}}@keyframes shake-y{0%,to{transform:translateY(0)}20%{transform:translateY(-5%)}40%{transform:translateY(5%)}60%{transform:translateY(-5%)}80%{transform:translateY(5%)}}@keyframes shake-z{0%,to{transform:rotate(0)}20%{transform:rotate(-2deg)}40%{transform:rotate(2deg)}60%{transform:rotate(-2deg)}80%{transform:rotate(2deg)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes ping{90%,to{opacity:0;transform:scale(2)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}@keyframes float{50%{transform:translateY(-25%)}}@keyframes bounce{25%{transform:translateY(-20%)}40%{transform:translateY(-3%)}0%,60%,to{transform:translateY(0)}}@keyframes pulse{50%{transform:scale(.9)}}@media (prefers-color-scheme:dark){@keyframes fade-in-bloom{0%{filter:brightness(1) blur(20px);opacity:0}10%{filter:brightness(.5) blur(10px);opacity:1}to{filter:brightness(1) blur(0);opacity:1}}}@media (prefers-color-scheme:dark){@keyframes fade-out-bloom{to{filter:brightness(1) blur(20px);opacity:0}10%{filter:brightness(.5) blur(10px);opacity:1}0%{filter:brightness(1) blur(0);opacity:1}}}:where([data-theme=light],.light,.light-theme){--csstools-color-scheme--light:initial;--link:var(--indigo-7);--link-visited:var(--purple-7);--text-1:var(--gray-12);--text-2:var(--gray-7);--surface-1:var(--gray-0);--surface-2:var(--gray-2);--surface-3:var(--gray-3);--surface-4:var(--gray-4);--scrollthumb-color:var(--gray-7);--shadow-color:220 3% 15%;--shadow-strength:1%;--inner-shadow-highlight:inset 0 -.5px 0 0 #fff,inset 0 .5px 0 0 rgba(0,0,0,.067);color-scheme:light}@media (dynamic-range:high) or (color-gamut:p3){@supports (color:color(display-p3 0 0 0)){:where([data-theme=light],.light,.light-theme){--link:color(display-p3 .1 .39 1);--link-visited:color(display-p3 .6 .2 1)}}}:where([data-theme=light],.light,.light-theme) :where(dialog){background-color:var(--surface-1)}:where([data-theme=light],.light,.light-theme) :where(button,.btn){--_highlight:var(--_highlight-light);--_bg:var(--_bg-light);--_ink-shadow:var(--_ink-shadow-light)}:where(.light,.light-theme,[data-theme=light]) :where(button,.btn):where([type=reset]){--_text:var(--red-6);--_border:var(--red-3)}:where(.light,.light-theme,[data-theme=light]) [disabled]:where(button,input[type=button],.btn){--_text:var(--gray-6)}:where(.light,.light-theme,[data-theme=light]) [disabled]:where(button,input[type=submit],.btn){--_text:var(--gray-6)}:where(.light,.light-theme,[data-theme=light]) [disabled]:where(button,input[type=reset],.btn){--_text:var(--gray-6)}:where([data-theme=light],.light,.light-theme) :where(textarea,select,input:not([type=button],[type=submit],[type=reset])){background-color:var(--surface-2)}:where([data-theme=dark],.dark,.dark-theme){--csstools-color-scheme--light: ;--link:var(--indigo-3);--link-visited:var(--purple-3);--text-1:var(--gray-0);--text-2:var(--gray-4);--surface-1:var(--gray-9);--surface-2:var(--gray-8);--surface-3:var(--gray-7);--surface-4:var(--gray-6);--scrollthumb-color:var(--gray-6);--shadow-strength:10%;--shadow-color:220 40% 2%;--inner-shadow-highlight:inset 0 -.5px 0 0 hsla(0,0%,100%,.067),inset 0 .5px 0 0 rgba(0,0,0,.467);color-scheme:dark}:where([data-theme=dark],.dark,.dark-theme) :where(dialog){background-color:var(--surface-2)}:where([data-theme=dark],.dark,.dark-theme) :where(button,.btn){--_highlight:var(--_highlight-dark);--_bg:var(--_bg-dark);--_ink-shadow:var(--_ink-shadow-dark)}:where(.dark,.dark-theme,[data-theme=dark]) :where(button,.btn):where([type=reset]){--_text:var(--red-2);--_border:var(--surface-3)}:where(.dark,.dark-theme,[data-theme=dark]) [disabled]:where(button,input[type=button],.btn){--_text:var(--gray-5)}:where(.dark,.dark-theme,[data-theme=dark]) [disabled]:where(button,input[type=submit],.btn){--_text:var(--gray-5)}:where(.dark,.dark-theme,[data-theme=dark]) [disabled]:where(button,input[type=reset],.btn){--_text:var(--gray-5)}:where([data-theme=dark],.dark,.dark-theme) :where(textarea,select,input:not([type=button],[type=submit],[type=reset])){background-color:#171a1c}:where([data-theme=dark],.dark,.dark-theme) :where([disabled]),:where([data-theme=dark],.dark,.dark-theme) :where([type=reset]),:where([data-theme=dark],.dark,.dark-theme) :where([type=submit]),:where([data-theme=dark],.dark,.dark-theme) :where(form button:not([type=button])){--_bg:var(--surface-1)}:where(html){--mask-edge-scoop-bottom:radial-gradient(20px at 50% 100%,transparent 97%,#000) 50% /38px 100%;--mask-edge-scoop-top:radial-gradient(20px at 50% 0,transparent 97%,#000) 50% /38px 100%;--mask-edge-scoop-vertical:radial-gradient(20px at 50% 20px,transparent 97%,#000) 50% -20px/38px 100%;--mask-edge-scoop-left:radial-gradient(20px at 0 50%,transparent 97%,#000) 50%/100% 38px;--mask-edge-scoop-right:radial-gradient(20px at 100% 50%,transparent 97%,#000) 50%/100% 38px;--mask-edge-scoop-horizontal:radial-gradient(20px at 20px 50%,transparent 97%,#000) -20px/100% 38px;--mask-edge-scalloped:radial-gradient(farthest-side,#000 97%,transparent) 0 0 /20px 20px round,linear-gradient(#000 0 0) 50%/ calc(100% - 20px) calc(100% - 20px) no-repeat;--mask-edge-scalloped-bottom:linear-gradient(0deg,transparent 20px,#000 0),radial-gradient(20px at top,#000 97%,transparent) bottom /38px 20px;--mask-edge-scalloped-top:linear-gradient(180deg,transparent 20px,#000 0),radial-gradient(20px at bottom,#000 97%,transparent) top /38px 20px;--mask-edge-scalloped-vertical:linear-gradient(0deg,transparent 40px,#000 0) 0 20px,radial-gradient(20px,#000 97%,transparent) 50% /38px 40px repeat space;--mask-edge-scalloped-left:linear-gradient(90deg,transparent 20px,#000 0),radial-gradient(20px at right,#000 97%,transparent) left /20px 38px;--mask-edge-scalloped-right:linear-gradient(270deg,transparent 20px,#000 0),radial-gradient(20px at left,#000 97%,transparent) right /20px 38px;--mask-edge-scalloped-horizontal:linear-gradient(-90deg,transparent 40px,#000 0) 20px,radial-gradient(20px,#000 97%,transparent) 50% /40px 38px space repeat;--mask-edge-drip-bottom:radial-gradient(20px at bottom,transparent 97%,#000) 50% calc(100% - 20px) /40px 100% repeat-x,radial-gradient(20px at 25% 50%,#000 97%,transparent) calc(50% - 20px) 99% /80px 40px repeat-x;--mask-edge-drip-top:radial-gradient(20px at top,transparent 97%,#000) 50% 20px /40px 100% repeat-x,radial-gradient(20px at 25% 50%,#000 97%,transparent) calc(50% - 20px) 1% /80px 40px repeat-x;--mask-edge-drip-vertical:radial-gradient(20px at top,transparent 97%,#000) 50% 20px /40px 51% repeat-x,radial-gradient(20px at bottom,transparent 97%,#000) 50% calc(100% - 20px) /40px 51% repeat-x,radial-gradient(20px at 25% 50%,#000 97%,transparent) calc(50% - 20px) 1% /80px 40px repeat-x,radial-gradient(20px at 25% 50%,#000 97%,transparent) calc(50% - 60px) 99% /80px 40px repeat-x;--mask-edge-drip-left:radial-gradient(20px at left,transparent 97%,#000) 20px 50% /100% 40px repeat-y,radial-gradient(20px at 50% 25%,#000 97%,transparent) 1% calc(50% - 20px) /40px 80px repeat-y;--mask-edge-drip-right:radial-gradient(20px at right,transparent 97%,#000) calc(100% - 20px) 50% /100% 40px repeat-y,radial-gradient(20px at 50% 25%,#000 97%,transparent) 99% calc(50% - 20px) /40px 80px repeat-y;--mask-edge-drip-horizontal:radial-gradient(20px at left,transparent 97%,#000) 20px 50% /51% 40px repeat-y,radial-gradient(20px at right,transparent 97%,#000) calc(100% - 20px) 50% /51% 40px repeat-y,radial-gradient(20px at 50% 25%,#000 97%,transparent) 1% calc(50% - 20px) /40px 80px repeat-y,radial-gradient(20px at 50% 25%,#000 97%,transparent) 99% calc(50% - 60px) /40px 80px repeat-y;--mask-edge-zig-zag-top:conic-gradient(from 135deg at top,transparent,#000 1deg 90deg,transparent 91deg) 50% /40px 100%;--mask-edge-zig-zag-bottom:conic-gradient(from -45deg at bottom,transparent,#000 1deg 90deg,transparent 91deg) 50% /40px 100%;--mask-edge-zig-zag-left:conic-gradient(from 45deg at left,transparent,#000 1deg 90deg,transparent 91deg) 50% /100% 40px;--mask-edge-zig-zag-right:conic-gradient(from -135deg at right,transparent,#000 1deg 90deg,transparent 91deg) 50% /100% 40px;--mask-edge-zig-zag-horizontal:repeating-conic-gradient(from 45deg at 20px 50%,transparent,#000 1deg 90deg,transparent 91deg 180deg) -20px 50% /100% 40px;--mask-edge-zig-zag-vertical:repeating-conic-gradient(from 135deg at 50% 20px,transparent,#000 1deg 90deg,transparent 91deg 180deg) 50% -20px /40px 100%}html{--brand-light: #013cf2;--brand-dark: #6ba4ff;--text-1-light: var(--gray-8);--text-2-light: var(--gray-7);--surface-1-light: var(--gray-0);--surface-2-light: var(--gray-1);--surface-3-light: var(--gray-2);--surface-4-light: var(--gray-3);--surface-shadow-light: var(--gray-8-hsl);--shadow-strength-light: 2%;--text-1-dark: var(--gray-2);--text-2-dark: var(--gray-3);--surface-1-dark: var(--gray-8);--surface-2-dark: var(--gray-7);--surface-3-dark: var(--gray-6);--surface-4-dark: var(--gray-5);--surface-shadow-dark: var(--gray-9-hsl);--shadow-strength-dark: 20%}:root{color-scheme:light;--brand: var(--brand-light);--text-1: var(--text-1-light);--text-2: var(--text-2-light);--surface-1: var(--surface-1-light);--surface-2: var(--surface-2-light);--surface-3: var(--surface-3-light);--surface-4: var(--surface-4-light);--surface-shadow: var(--surface-shadow-light);--shadow-strength: var(--shadow-strength-light)}@media (prefers-color-scheme: dark){:root{color-scheme:dark;--brand: var(--brand-dark);--text-1: var(--text-1-dark);--text-2: var(--text-2-dark);--surface-1: var(--surface-1-dark);--surface-2: var(--surface-2-dark);--surface-3: var(--surface-3-dark);--surface-4: var(--surface-4-dark);--surface-shadow: var(--surface-shadow-dark);--shadow-strength: var(--shadow-strength-dark)}}[data-theme=light]{color-scheme:light;--brand: var(--brand-light);--text-1: var(--text-1-light);--text-2: var(--text-2-light);--surface-1: var(--surface-1-light);--surface-2: var(--surface-2-light);--surface-3: var(--surface-3-light);--surface-4: var(--surface-4-light);--surface-shadow: var(--surface-shadow-light);--shadow-strength: var(--shadow-strength-light)}[data-theme=dark]{color-scheme:dark;--brand: var(--brand-dark);--text-1: var(--text-1-dark);--text-2: var(--text-2-dark);--surface-1: var(--surface-1-dark);--surface-2: var(--surface-2-dark);--surface-3: var(--surface-3-dark);--surface-4: var(--surface-4-dark);--surface-shadow: var(--surface-shadow-dark);--shadow-strength: var(--shadow-strength-dark)}html{--home-hero-col-width: clamp(400px, 45%, 750px);--sidebar-col-width: var(--size-10)}.page-layout-col{overflow:hidden}.hero-col-fixed{width:var(--home-hero-col-width);position:fixed;top:0;left:0;bottom:0;overflow:hidden;z-index:var(--layer-1)}.home-content-col{margin-left:calc(var(--home-hero-col-width) - 20px);margin-right:var(--sidebar-col-width)}.page-sidebar{width:var(--sidebar-col-width);position:fixed;top:0;bottom:0;right:0}.container{padding:var(--size-fluid-3);width:100%}@media (min-width: 768px){.home-content-col .container{padding-left:var(--size-fluid-5)}}@media (max-width: 1023.98px){.home-content-col{margin-right:0}.page-sidebar{position:static;width:100%}.home-content-col .full-width{margin-left:calc(-1 * var(--size-fluid-5));margin-right:calc(-1 * var(--size-fluid-3))}.cta-buttons{margin-inline:0!important}}@media (max-width: 767.98px){.page-layout{padding-top:0}.hero-col-fixed{position:static;width:auto;padding:0}.page-sidebar{width:100%;margin-left:0;margin-block-end:var(--size-fluid-3)}.home-content-col{margin-inline:0}}html{--font-title: var(--font-funnel-display-variable), "Funnel Display Variable", system-ui;font-size:clamp(1rem,1rem + .125dvw,1.25rem)}h1,h2,h3,.font-title{font-weight:var(--font-weight-7);font-family:var(--font-title);line-height:var(--font-lineheight-1);letter-spacing:-.02rem;margin-block-end:var(--size-2)}h3{font-size:var(--font-size-4)}button,.btn{font-family:var(--font-title);font-weight:var(--font-weight-4)}p{margin-bottom:var(--size-2);text-wrap:pretty}.nav{--nav-content-hight: 36px;--nav-icon-size: var(--size-6);--nav-padding: var(--size-3);--brand-dark: color-mix(in srgb, white 90%, var(--brand-dark) 10%);position:fixed;top:0;left:0;right:0;z-index:var(--layer-5);background-color:var(--surface-2);border-radius:var(--radius-round);margin:var(--size-fluid-3);padding:var(--nav-padding);box-shadow:var(--shadow-2);display:flex;flex-direction:row;align-items:stretch;font-family:var(--font-title);.nav-menu{display:flex;margin:0 var(--size-3);padding:0;li{display:inline-block}}li{list-style:none;padding:0}}.nav-item.nav-logo{margin-inline-start:var(--size-3);margin-inline-end:auto;.nav-link{letter-spacing:var(--letter-spacing-4);font-size:var(--font-size-3);text-transform:none;display:flex;align-items:center;gap:var(--size-3)}.nav-title{align-items:center}.nav-title-text{transform:translateY(-1px);text-wrap:nowrap}}@media (max-width: 767.98px){.nav-item.nav-logo{margin-inline-start:var(--size-2);.nav-title{gap:var(--size-2)}}}@media (max-width: 359.98px){.nav-title svg{display:none}}.nav-item{margin:0 var(--size-1);font-size:var(--font-size-2);align-content:center}.nav-link{color:var(--text-2);display:inline-block;padding:var(--size-2) var(--size-2);text-decoration:none;transition:color .3s var(--ease-3);background-color:transparent}.nav-logo .nav-link{padding:0}.nav-link.active{color:var(--brand)}.nav-icon-link{display:flex;padding:0;svg{width:var(--nav-icon-size);height:var(--nav-icon-size);min-width:var(--nav-icon-size);min-height:var(--nav-icon-size)}}.nav-dropdown{position:relative;display:none;align-content:center}.nav-dropdown-content{display:none;text-align:end;background-color:var(--surface-2);border-radius:var(--radius-3);box-shadow:var(--shadow-2);margin:0;padding:var(--size-2);.nav-link{padding-block:var(--size-1)}.nav-item{margin-inline:0}}.nav-dropdown:focus-within{.nav-dropdown-content{display:block;position:absolute;inset-block-start:calc(var(--nav-content-hight) + var(--nav-padding) + var(--size-3));inset-inline-end:calc(-1 * var(--nav-padding));transition:all .4s var(--ease-elastic-in-out-3)}}@media (max-width: 1023.98px){.nav .nav-menu{display:none}.nav-dropdown{display:unset}}@media (max-width: 767.98px){.nav{transition:all .4s var(--ease-elastic-in-out-3);transition-property:height,width,margin,padding,border-radius;margin:var(--size-fluid-2)}body.scroll-pos-top{.nav{margin-inline:0;margin-top:var(--size-2);padding:var(--size-2);border-radius:0;background-color:transparent;box-shadow:none}.nav-link{color:var(--gray-8)}.nav-dropdown-content .nav-link{color:var(--text-2)}.nav-dropdown:focus-within .nav-dropdown-content{inset-inline-end:var(--size-1);inset-block-start:calc(var(--nav-content-hight) + var(--size-3))}}}button,.btn{border-radius:var(--radius-round);gap:var(--size-1);--_bg-dark: var(--surface-2) }.btn-icon-animated svg{animation:var(--animation-bounce)}.btn-icon-end{padding-inline-start:2.25ch}.sidebar{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--size-3);border-left:var(--border-size-2) solid var(--surface-3);position:relative}.sidebar-link{font-size:var(--size-4);padding:var(--size-3);color:var(--text-2);border:var(--border-size-2) solid var(--surface-3);border-radius:var(--radius-round);background-color:var(--surface-1);transition:background-color .3s var(--ease-3)}.sidebar-link:hover{background-color:var(--surface-2)}@media (max-width: 1023.98px){.sidebar{flex-direction:row;border-left:unset}.sidebar:before{position:absolute;content:"";top:calc(50% - var(--border-size-2) / 2);left:0;right:0;height:var(--border-size-2);z-index:-9999;background-color:var(--surface-3)}}.footer{display:flex;flex-direction:row;align-items:stretch;justify-content:center;text-align:center;font-size:var(--font-size-1)}.hero-image{-o-object-fit:cover;object-fit:cover;background-color:#dbdce1;-o-object-position:50% 100px;object-position:50% 100px;max-height:1500px}.hero-image-filter{filter:grayscale(15%) contrast(.9)}.hero-image-blob{border-radius:var(--radius-blob-5)}.hero-image-mask{-webkit-mask:var(--mask-edge-zig-zag-right);mask:var(--mask-edge-zig-zag-right)}.hero-image-shadow{box-shadow:var(--shadow-6)}.hero-image-gradient-overlay{background-image:radial-gradient(ellipse at center,var(--gray-3),var(--gray-6))}.hero-image-wrap-shadow{filter:drop-shadow(-1px 0px 4px rgba(0,0,0,.15))}@media (min-width: 768px) and (max-width: 1023.98px){.page-sidebar{margin-bottom:var(--size-fluid-3)}}@media (max-width: 767.98px){.hero-image{-o-object-position:50% 32px;object-position:50% 32px}.hero-image-mask{-webkit-mask:var(--mask-edge-zig-zag-bottom);mask:var(--mask-edge-zig-zag-bottom)}}@media (min-width: 768px){.above-the-fold{min-height:100vh;padding-top:106px;display:flex;flex-direction:column;.container{flex-grow:1}}}.above-the-fold-section{display:flex;flex-direction:column;.cta-buttons{margin-top:auto;display:flex;gap:var(--size-4);justify-content:center}@media (max-width: 767.98px){.btn-read-more{display:none}}}.above-the-fold-content{flex-grow:1;display:flex;flex-direction:column;justify-content:center}.service-list{display:grid;grid-template-columns:1fr;gap:var(--size-fluid-4)}.service-item{display:flex;flex-direction:column;align-items:start}.service-item ul{padding-left:var(--size-3);margin:0}.service-title{display:flex;align-items:center;gap:var(--size-2);margin:0}.service-title svg{color:var(--brand);font-size:var(--size-6);flex-shrink:0}.service-content{flex-grow:1}@media (min-width: 1440px){.service-list{grid-template-columns:repeat(2,1fr)}}.projects-grid{display:flex;gap:var(--size-4);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scroll-padding-inline-start:var(--size-fluid-5);padding-inline-start:var(--size-fluid-5);padding-inline-end:var(--size-fluid-3);scrollbar-width:none;-ms-overflow-style:none}.projects-grid::-webkit-scrollbar{display:none}.project-card{flex:0 0 auto;width:clamp(300px,40vw,450px);display:flex;flex-direction:column;scroll-snap-align:start;padding:var(--size-4);background:var(--surface-2);border:1px solid var(--surface-3);border-radius:var(--radius-3);transition:all .2s var(--ease-2);cursor:pointer}.project-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}.project-title{margin:0 0 var(--size-2) 0;font-size:var(--font-size-4)}.project-description{margin:0 0 var(--size-3) 0;color:var(--text-2);margin-block-end:auto}.project-technologies{display:flex;flex-wrap:wrap;margin-block-start:var(--size-1);gap:var(--size-1)}.projects-section{padding-inline:0!important;h2{margin-inline-start:var(--size-fluid-5)}}.tech-tag{background:var(--surface-3);color:var(--text-1);padding:var(--size-1) var(--size-2);border-radius:var(--radius-2);font-size:var(--font-size-0)}@media (max-width: 767.98px){.projects-section h2{margin-inline:var(--size-fluid-3)}.projects-grid{padding-inline:var(--size-fluid-3);scroll-padding-inline-start:var(--size-fluid-3)}}.project-links{display:flex;flex-direction:row;gap:var(--size-2);align-items:center;font-size:var(--font-size-3);flex-shrink:0}.projects-footer{display:flex;flex-direction:row;gap:var(--size-1);align-items:center;justify-content:space-between}:is(.visually-hidden,.sr-only){display:block;inline-size:0;block-size:0;overflow:hidden}.m-0{margin:0}.m-1{margin:var(--size-1)}.m-2{margin:var(--size-2)}.m-3{margin:var(--size-3)}.m-4{margin:var(--size-4)}.m-5{margin:var(--size-5)}.m-6{margin:var(--size-6)}.m-7{margin:var(--size-7)}.m-8{margin:var(--size-8)}.m-auto{margin:auto}.mx-0{margin-inline:0}.mx-1{margin-inline:var(--size-1)}.mx-2{margin-inline:var(--size-2)}.mx-3{margin-inline:var(--size-3)}.mx-4{margin-inline:var(--size-4)}.mx-5{margin-inline:var(--size-5)}.mx-6{margin-inline:var(--size-6)}.mx-7{margin-inline:var(--size-7)}.mx-8{margin-inline:var(--size-8)}.mx-auto{margin-inline:auto}.my-0{margin-block:0}.my-1{margin-block:var(--size-1)}.my-2{margin-block:var(--size-2)}.my-3{margin-block:var(--size-3)}.my-4{margin-block:var(--size-4)}.my-5{margin-block:var(--size-5)}.my-6{margin-block:var(--size-6)}.my-7{margin-block:var(--size-7)}.my-8{margin-block:var(--size-8)}.my-auto{margin-block:auto}.mt-0{margin-block-start:0}.mt-1{margin-block-start:var(--size-1)}.mt-2{margin-block-start:var(--size-2)}.mt-3{margin-block-start:var(--size-3)}.mt-4{margin-block-start:var(--size-4)}.mt-5{margin-block-start:var(--size-5)}.mt-6{margin-block-start:var(--size-6)}.mt-7{margin-block-start:var(--size-7)}.mt-8{margin-block-start:var(--size-8)}.mt-auto{margin-block-start:auto}.mr-0{margin-inline-end:0}.mr-1{margin-inline-end:var(--size-1)}.mr-2{margin-inline-end:var(--size-2)}.mr-3{margin-inline-end:var(--size-3)}.mr-4{margin-inline-end:var(--size-4)}.mr-5{margin-inline-end:var(--size-5)}.mr-6{margin-inline-end:var(--size-6)}.mr-7{margin-inline-end:var(--size-7)}.mr-8{margin-inline-end:var(--size-8)}.mr-auto{margin-inline-end:auto}.mb-0{margin-block-end:0}.mb-1{margin-block-end:var(--size-1)}.mb-2{margin-block-end:var(--size-2)}.mb-3{margin-block-end:var(--size-3)}.mb-4{margin-block-end:var(--size-4)}.mb-5{margin-block-end:var(--size-5)}.mb-6{margin-block-end:var(--size-6)}.mb-7{margin-block-end:var(--size-7)}.mb-8{margin-block-end:var(--size-8)}.mb-auto{margin-block-end:auto}.ml-0{margin-inline-start:0}.ml-1{margin-inline-start:var(--size-1)}.ml-2{margin-inline-start:var(--size-2)}.ml-3{margin-inline-start:var(--size-3)}.ml-4{margin-inline-start:var(--size-4)}.ml-5{margin-inline-start:var(--size-5)}.ml-6{margin-inline-start:var(--size-6)}.ml-7{margin-inline-start:var(--size-7)}.ml-8{margin-inline-start:var(--size-8)}.ml-auto{margin-inline-start:auto}.p-0{padding:0}.p-1{padding:var(--size-1)}.p-2{padding:var(--size-2)}.p-3{padding:var(--size-3)}.p-4{padding:var(--size-4)}.p-5{padding:var(--size-5)}.p-6{padding:var(--size-6)}.p-7{padding:var(--size-7)}.p-8{padding:var(--size-8)}.px-0{padding-inline:0}.px-1{padding-inline:var(--size-1)}.px-2{padding-inline:var(--size-2)}.px-3{padding-inline:var(--size-3)}.px-4{padding-inline:var(--size-4)}.px-5{padding-inline:var(--size-5)}.px-6{padding-inline:var(--size-6)}.px-7{padding-inline:var(--size-7)}.px-8{padding-inline:var(--size-8)}.py-0{padding-block:0}.py-1{padding-block:var(--size-1)}.py-2{padding-block:var(--size-2)}.py-3{padding-block:var(--size-3)}.py-4{padding-block:var(--size-4)}.py-5{padding-block:var(--size-5)}.py-6{padding-block:var(--size-6)}.py-7{padding-block:var(--size-7)}.py-8{padding-block:var(--size-8)}.pt-0{padding-block-start:0}.pt-1{padding-block-start:var(--size-1)}.pt-2{padding-block-start:var(--size-2)}.pt-3{padding-block-start:var(--size-3)}.pt-4{padding-block-start:var(--size-4)}.pt-5{padding-block-start:var(--size-5)}.pt-6{padding-block-start:var(--size-6)}.pt-7{padding-block-start:var(--size-7)}.pt-8{padding-block-start:var(--size-8)}.pr-0{padding-inline-end:0}.pr-1{padding-inline-end:var(--size-1)}.pr-2{padding-inline-end:var(--size-2)}.pr-3{padding-inline-end:var(--size-3)}.pr-4{padding-inline-end:var(--size-4)}.pr-5{padding-inline-end:var(--size-5)}.pr-6{padding-inline-end:var(--size-6)}.pr-7{padding-inline-end:var(--size-7)}.pr-8{padding-inline-end:var(--size-8)}.pb-0{padding-block-end:0}.pb-1{padding-block-end:var(--size-1)}.pb-2{padding-block-end:var(--size-2)}.pb-3{padding-block-end:var(--size-3)}.pb-4{padding-block-end:var(--size-4)}.pb-5{padding-block-end:var(--size-5)}.pb-6{padding-block-end:var(--size-6)}.pb-7{padding-block-end:var(--size-7)}.pb-8{padding-block-end:var(--size-8)}.pl-0{padding-inline-start:0}.pl-1{padding-inline-start:var(--size-1)}.pl-2{padding-inline-start:var(--size-2)}.pl-3{padding-inline-start:var(--size-3)}.pl-4{padding-inline-start:var(--size-4)}.pl-5{padding-inline-start:var(--size-5)}.pl-6{padding-inline-start:var(--size-6)}.pl-7{padding-inline-start:var(--size-7)}.pl-8{padding-inline-start:var(--size-8)}.w-full{inline-size:100%}.w-auto{inline-size:auto}.w-fit{inline-size:-moz-fit-content;inline-size:fit-content}.w-min{inline-size:-moz-min-content;inline-size:min-content}.w-max{inline-size:-moz-max-content;inline-size:max-content}.h-full{block-size:100%}.h-auto{block-size:auto}.h-fit{block-size:-moz-fit-content;block-size:fit-content}.h-min{block-size:-moz-min-content;block-size:min-content}.h-max{block-size:-moz-max-content;block-size:max-content}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-flex{display:flex}.d-inline-flex{display:inline-flex}.d-grid{display:grid}.d-inline-grid{display:inline-grid}.d-none{display:none}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-initial{flex:0 1 auto}.flex-none{flex:none}.gap-0{gap:0}.gap-1{gap:var(--size-1)}.gap-2{gap:var(--size-2)}.gap-3{gap:var(--size-3)}.gap-4{gap:var(--size-4)}.gap-5{gap:var(--size-5)}.gap-6{gap:var(--size-6)}.gap-7{gap:var(--size-7)}.gap-8{gap:var(--size-8)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.col-span-1{grid-column:span 1 / span 1}.col-span-2{grid-column:span 2 / span 2}.col-span-3{grid-column:span 3 / span 3}.col-span-4{grid-column:span 4 / span 4}.col-span-5{grid-column:span 5 / span 5}.col-span-6{grid-column:span 6 / span 6}.col-span-full{grid-column:1 / -1}.grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.row-span-1{grid-row:span 1 / span 1}.row-span-2{grid-row:span 2 / span 2}.row-span-3{grid-row:span 3 / span 3}.row-span-4{grid-row:span 4 / span 4}.row-span-5{grid-row:span 5 / span 5}.row-span-6{grid-row:span 6 / span 6}.row-span-full{grid-row:1 / -1}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.static{position:static}.inset-0{inset:0}.inset-1{inset:var(--size-1)}.inset-2{inset:var(--size-2)}.inset-3{inset:var(--size-3)}.inset-4{inset:var(--size-4)}.inset-auto{inset:auto}.inset-x-0{inset-inline:0}.inset-x-1{inset-inline:var(--size-1)}.inset-x-2{inset-inline:var(--size-2)}.inset-x-3{inset-inline:var(--size-3)}.inset-x-4{inset-inline:var(--size-4)}.inset-x-auto{inset-inline:auto}.inset-y-0{inset-block:0}.inset-y-1{inset-block:var(--size-1)}.inset-y-2{inset-block:var(--size-2)}.inset-y-3{inset-block:var(--size-3)}.inset-y-4{inset-block:var(--size-4)}.inset-y-auto{inset-block:auto}.top-0{inset-block-start:0}.top-1{inset-block-start:var(--size-1)}.top-2{inset-block-start:var(--size-2)}.top-3{inset-block-start:var(--size-3)}.top-4{inset-block-start:var(--size-4)}.top-auto{inset-block-start:auto}.right-0{inset-inline-end:0}.right-1{inset-inline-end:var(--size-1)}.right-2{inset-inline-end:var(--size-2)}.right-3{inset-inline-end:var(--size-3)}.right-4{inset-inline-end:var(--size-4)}.right-auto{inset-inline-end:auto}.bottom-0{inset-block-end:0}.bottom-1{inset-block-end:var(--size-1)}.bottom-2{inset-block-end:var(--size-2)}.bottom-3{inset-block-end:var(--size-3)}.bottom-4{inset-block-end:var(--size-4)}.bottom-auto{inset-block-end:auto}.left-0{inset-inline-start:0}.left-1{inset-inline-start:var(--size-1)}.left-2{inset-inline-start:var(--size-2)}.left-3{inset-inline-start:var(--size-3)}.left-4{inset-inline-start:var(--size-4)}.left-auto{inset-inline-start:auto}.text-left{text-align:start}.text-center{text-align:center}.text-right{text-align:end}.text-justify{text-align:justify}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-x-visible{overflow-x:visible}.overflow-x-scroll{overflow-x:scroll}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.overflow-y-visible{overflow-y:visible}.overflow-y-scroll{overflow-y:scroll}.theme-toggle.theme-toggle--reversed .theme-toggle__around{transform:scaleX(-1)}.theme-toggle{--theme-toggle__around--duration:.5s}.theme-toggle__around *{transform-origin:center;transition:transform calc(var(--theme-toggle__around--duration) * .6) ease}.theme-toggle__around>g g circle{transition-duration:calc(var(--theme-toggle__around--duration) * .2)}.theme-toggle__around>g g :nth-child(1){transition-delay:calc(var(--theme-toggle__around--duration)*.253)}.theme-toggle__around>g g :nth-child(2){transition-delay:calc(var(--theme-toggle__around--duration)*.348)}.theme-toggle__around>g g :nth-child(3){transition-delay:calc(var(--theme-toggle__around--duration)*.443)}.theme-toggle__around>g g :nth-child(4){transition-delay:calc(var(--theme-toggle__around--duration)*.538)}.theme-toggle__around>g g :nth-child(5){transition-delay:calc(var(--theme-toggle__around--duration)*.633)}.theme-toggle__around>g g :nth-child(6){transition-delay:calc(var(--theme-toggle__around--duration)*.728)}.theme-toggle__around>:first-child path{transition-property:transform,d}.theme-toggle input[type=checkbox]:checked~.theme-toggle__around *,.theme-toggle--toggled:not(label).theme-toggle .theme-toggle__around *{transition-delay:0s;transition-duration:var(--theme-toggle__around--duration)}.theme-toggle input[type=checkbox]:checked~.theme-toggle__around>g>circle,.theme-toggle--toggled:not(label).theme-toggle .theme-toggle__around>g>circle{transform:scale(1.4)}.theme-toggle input[type=checkbox]:checked~.theme-toggle__around>g g circle,.theme-toggle--toggled:not(label).theme-toggle .theme-toggle__around>g g circle{transform:scale(0);transition-duration:calc(var(--theme-toggle__around--duration) * .4)}.theme-toggle input[type=checkbox]:checked~.theme-toggle__around>:first-child,.theme-toggle--toggled:not(label).theme-toggle .theme-toggle__around>:first-child{transform:rotate(-90deg)}.theme-toggle input[type=checkbox]:checked~.theme-toggle__around>:first-child path,.theme-toggle--toggled:not(label).theme-toggle .theme-toggle__around>:first-child path{d:path("M-12-14h42v30a1 1 0 00-16 13H0Z")}@supports not (d:path("")){.theme-toggle input[type=checkbox]:checked~.theme-toggle__around:first-child path,.theme-toggle--toggled:not(label).theme-toggle .theme-toggle__around:first-child path{transform:translate3d(-12px,-14px,0)}}.theme-toggle{border:none;background:0 0;cursor:pointer}.theme-toggle input[type=checkbox]{display:none}.theme-toggle .theme-toggle-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (prefers-reduced-motion:reduce){.theme-toggle:not(.theme-toggle--force-motion) *{transition:none!important}}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{background-color:var(--surface-1);color:var(--text-1);font-family:var(--font-sans)}:root{--size-4: 1.25rem;--size-3: 1rem;--size-12: 10rem;--size-10: 5rem;--size-2: .5rem;--size-1: .25rem}.tech-title,.tech-group{margin-block-end:var(--size-4)}.tech-group-title{margin-block-end:var(--size-3)}.tech-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--size-12),1fr));-moz-column-gap:var(--size-10);column-gap:var(--size-10);row-gap:var(--size-2)}.tech-item{display:flex;align-items:center;gap:.5rem;text-wrap:break-word}.tech-item svg{width:1.25rem;height:1.25rem;flex-shrink:0}.tech-name{font-size:.875rem;font-weight:500;color:var(--text-1);flex:1}.tech-level{display:flex;gap:var(--size-1);align-items:center}.level-dot{width:.5em;height:.5em;border-radius:50%;background:var(--surface-3)}.tech-level-fundamental .level-dot:nth-child(1){background:var(--brand)}.tech-level-proficient .level-dot:nth-child(1),.tech-level-proficient .level-dot:nth-child(2){background:var(--brand)}.tech-level-expert .level-dot{background:var(--brand)}:root{--size-3: 1rem;--size-4: 1.25rem;--size-1: .25rem}.contact-links{display:flex;flex-direction:column;gap:var(--size-3);margin-top:var(--size-4)}.contact-link{display:flex;align-items:center;gap:var(--size-1);text-decoration:none;color:var(--text-1);transition:color .2s ease}.contact-link:hover{color:var(--brand)}.contact-link svg{width:1.25rem;height:1.25rem;flex-shrink:0}.contact-link span{font-size:.875rem;font-weight:500}
