/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:host,:root{--color-blue-50:oklch(97% .014 254.604);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-blue-950:oklch(28.2% .091 267.935);--color-zinc-50:oklch(98.5% 0 none);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-300:oklch(87.1% .006 286.286);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-white:#fff;--spacing:.25rem;--container-2xl:42rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-semibold:600;--tracking-tight:-.025em;--leading-tight:1.25;--radius-sm:.25rem;--radius-xl:.75rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.my-16{margin-block:calc(var(--spacing) * 16)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-16{margin-top:calc(var(--spacing) * 16)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.min-w-0{min-width:0}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.gap-2{gap:calc(var(--spacing) * 2)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.rounded-full{border-radius:3.40282e+38px}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-r-xl{border-top-right-radius:var(--radius-xl);border-bottom-right-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-500{border-color:var(--color-blue-500)}.border-zinc-200{border-color:var(--color-zinc-200)}.border-zinc-900{border-color:var(--color-zinc-900)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-white{background-color:var(--color-white)}.bg-zinc-100{background-color:var(--color-zinc-100)}.bg-zinc-900{background-color:var(--color-zinc-900)}.p-5{padding:calc(var(--spacing) * 5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-16{padding-block:calc(var(--spacing) * 16)}.pt-10{padding-top:calc(var(--spacing) * 10)}.pr-5{padding-right:calc(var(--spacing) * 5)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-6{padding-left:calc(var(--spacing) * 6)}.font-mono{font-family:var(--font-geist-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.9em\]{font-size:.9em}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-8{--tw-leading:calc(var(--spacing) * 8);line-height:calc(var(--spacing) * 8)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.04em\]{--tw-tracking:-.04em;letter-spacing:-.04em}.tracking-\[0\.14em\]{--tw-tracking:.14em;letter-spacing:.14em}.tracking-\[0\.16em\]{--tw-tracking:.16em;letter-spacing:.16em}.tracking-\[0\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-muted{color:var(--muted)}.text-white{color:var(--color-white)}.text-zinc-600{color:var(--color-zinc-600)}.text-zinc-700{color:var(--color-zinc-700)}.text-zinc-900{color:var(--color-zinc-900)}.text-zinc-950{color:var(--color-zinc-950)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.decoration-blue-200{-webkit-text-decoration-color:var(--color-blue-200);text-decoration-color:var(--color-blue-200)}.decoration-blue-300{-webkit-text-decoration-color:var(--color-blue-300);text-decoration-color:var(--color-blue-300)}.decoration-zinc-400{-webkit-text-decoration-color:var(--color-zinc-400);text-decoration-color:var(--color-zinc-400)}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.marker\:font-mono ::marker{font-family:var(--font-geist-mono)}.marker\:font-mono::marker{font-family:var(--font-geist-mono)}.marker\:font-mono ::-webkit-details-marker,.marker\:font-mono::-webkit-details-marker{font-family:var(--font-geist-mono)}.marker\:text-blue-500 ::marker{color:var(--color-blue-500)}.marker\:text-blue-500::marker{color:var(--color-blue-500)}.marker\:text-blue-500 ::-webkit-details-marker,.marker\:text-blue-500::-webkit-details-marker{color:var(--color-blue-500)}.marker\:text-muted ::marker{color:var(--muted)}.marker\:text-muted::marker{color:var(--muted)}.marker\:text-muted ::-webkit-details-marker,.marker\:text-muted::-webkit-details-marker{color:var(--muted)}.placeholder\:text-muted::placeholder{color:var(--muted)}@media (hover:hover){.hover\:border-blue-300:hover{border-color:var(--color-blue-300)}.hover\:text-blue-600:hover{color:var(--color-blue-600)}.hover\:text-blue-800:hover{color:var(--color-blue-800)}.hover\:underline:hover{text-decoration-line:underline}}.focus\:border-blue-500:focus{border-color:var(--color-blue-500)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-blue-500\/20:focus{--tw-ring-color:#3080ff33}@supports (color:color-mix(in lab,red,red)){.focus\:ring-blue-500\/20:focus{--tw-ring-color:color-mix(in oklab,var(--color-blue-500) 20%,transparent)}}.focus-visible\:rounded-sm:focus-visible{border-radius:var(--radius-sm)}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-offset-4:focus-visible{outline-offset:4px}.focus-visible\:outline-blue-600:focus-visible{outline-color:var(--color-blue-600)}@media (min-width:40rem){.sm\:inline-flex{display:inline-flex}.sm\:max-w-44{max-width:calc(var(--spacing) * 44)}.sm\:px-10{padding-inline:calc(var(--spacing) * 10)}.sm\:py-24{padding-block:calc(var(--spacing) * 24)}.sm\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}}.dark\:border-blue-900:where(.dark,.dark *){border-color:var(--color-blue-900)}.dark\:border-zinc-100:where(.dark,.dark *){border-color:var(--color-zinc-100)}.dark\:border-zinc-700:where(.dark,.dark *){border-color:var(--color-zinc-700)}.dark\:border-zinc-800:where(.dark,.dark *){border-color:var(--color-zinc-800)}.dark\:bg-blue-950\/30:where(.dark,.dark *){background-color:#1624564d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-blue-950\/30:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-blue-950) 30%,transparent)}}.dark\:bg-zinc-100:where(.dark,.dark *){background-color:var(--color-zinc-100)}.dark\:bg-zinc-800:where(.dark,.dark *){background-color:var(--color-zinc-800)}.dark\:bg-zinc-900:where(.dark,.dark *){background-color:var(--color-zinc-900)}.dark\:text-blue-300:where(.dark,.dark *){color:var(--color-blue-300)}.dark\:text-blue-400:where(.dark,.dark *){color:var(--color-blue-400)}.dark\:text-zinc-50:where(.dark,.dark *){color:var(--color-zinc-50)}.dark\:text-zinc-100:where(.dark,.dark *){color:var(--color-zinc-100)}.dark\:text-zinc-300:where(.dark,.dark *){color:var(--color-zinc-300)}.dark\:text-zinc-400:where(.dark,.dark *){color:var(--color-zinc-400)}.dark\:text-zinc-900:where(.dark,.dark *){color:var(--color-zinc-900)}.dark\:decoration-blue-800:where(.dark,.dark *){-webkit-text-decoration-color:var(--color-blue-800);text-decoration-color:var(--color-blue-800)}.dark\:decoration-blue-900:where(.dark,.dark *){-webkit-text-decoration-color:var(--color-blue-900);text-decoration-color:var(--color-blue-900)}@media (hover:hover){.dark\:hover\:border-blue-800:where(.dark,.dark *):hover{border-color:var(--color-blue-800)}.dark\:hover\:text-blue-300:where(.dark,.dark *):hover{color:var(--color-blue-300)}.dark\:hover\:text-blue-400:where(.dark,.dark *):hover{color:var(--color-blue-400)}}}:root{color-scheme:dark;--background:#142034;--foreground:#edf2fc;--muted:#a8b8ce;--accent:#a3c4ff;--surface:#1d2d45;--line:#34455e;--strong-line:#64738c;--soft:#293b55;--display:var(--font-geist-sans),sans-serif}html{scroll-behavior:smooth}body{background-color:var(--background);background-image:radial-gradient(circle,var(--accent) 1px,transparent 1px);margin:0}@supports (color:color-mix(in lab,red,red)){body{background-image:radial-gradient(circle,color-mix(in srgb,var(--accent) 10%,transparent) 1px,transparent 1px)}}body{color:var(--foreground);font-family:var(--font-geist-sans),sans-serif;background-size:22px 22px;background-attachment:fixed}html{scrollbar-color:var(--muted) transparent}@supports (color:color-mix(in lab,red,red)){html{scrollbar-color:color-mix(in srgb,var(--muted) 42%,transparent) transparent}}html{scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--muted);border:3px solid #0000;border-radius:999px}@supports (color:color-mix(in lab,red,red)){::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 35%,transparent)}}::-webkit-scrollbar-thumb{background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){::-webkit-scrollbar-thumb:hover{background-color:color-mix(in srgb,var(--muted) 58%,transparent)}}::selection{background:var(--accent);color:var(--surface)}.page-transition{animation:page-enter .54s cubic-bezier(.2,.75,.25,1) both}@keyframes page-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:4px}.skip-link{z-index:50;background:var(--surface);padding:12px 20px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:12px}.home,.site-footer,.site-header{width:min(1120px,100% - 80px);margin-inline:auto}.site-header{justify-content:space-between;gap:20px;min-height:110px}.site-header,.wordmark{align-items:center;display:flex}.wordmark{letter-spacing:-.5px;gap:10px;font-size:15px;font-weight:600}.brand-symbol{background:var(--foreground);width:32px;height:32px;color:var(--background);border-radius:10px;place-items:center;font-size:23px;display:grid}.site-header nav{color:var(--muted);gap:28px;font-size:13px;display:flex}.site-footer a:hover,.site-header nav a:hover,.social-links a:hover{color:var(--accent);text-underline-offset:5px;text-decoration:underline}.site-footer{border-top:1px solid var(--line);color:var(--muted);grid-template-columns:minmax(0,1fr) auto auto;gap:48px;padding-block:32px 40px;font-size:13px;display:grid}.footer-intro{align-content:start;gap:5px;display:grid}.footer-label{color:var(--foreground);font:13px var(--font-geist-mono),monospace;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}.footer-contact,.footer-nav{align-content:start;gap:7px;display:grid}.footer-contact-links{gap:7px;display:grid}.footer-contact-links a{align-items:center;gap:7px;display:inline-flex}.footer-contact-links svg{flex:none;width:14px;height:14px}.eyebrow{font-family:var(--font-geist-mono),monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:13px;line-height:1.7}.social-links{flex-wrap:wrap;gap:22px;margin-top:27px;font-size:13px;font-weight:550;display:flex}.social-links a:first-child{color:var(--accent)}.profile-content h3{font-family:var(--display);letter-spacing:-.8px;margin-block:18px;font-size:24px;font-weight:550;line-height:1.18}.profile-content .organization{text-underline-offset:4px;text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);align-items:center;gap:8px;margin-bottom:6px;font-size:13px;font-weight:650;display:inline-flex}.profile-content>p{color:var(--muted);font-size:13px;line-height:1.85}.skill-groups{gap:12px;display:grid}.skill-groups dt{color:var(--accent);margin-bottom:3px;font-size:13px}.skill-groups dd{color:var(--muted);font-size:13px;line-height:1.7}.selected-work{padding-block:64px 90px}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px;display:flex}.section-heading h2{font:550 32px/1.2 var(--display);letter-spacing:-1px;margin-top:8px}.section-heading>a{border-bottom:1px solid var(--line);white-space:nowrap;padding-bottom:4px;font-size:13px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.project-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;transition:transform .25s,box-shadow .25s;display:block;overflow:hidden}.project-card:hover{transform:translateY(-5px);box-shadow:0 14px 35px #203c4010}.project-card article{flex-direction:column;height:100%;display:flex}.project-art{aspect-ratio:5/3;border-bottom:1px solid var(--line);position:relative;overflow:hidden}.project-art img{object-fit:cover;width:100%;height:100%;transition:transform .45s}.project-fallback{background:var(--soft);width:100%;height:100%;color:var(--accent);font:500 96px/1 var(--font-geist-mono),monospace;place-items:center;display:grid}.project-card:hover img{transform:scale(1.035)}.project-open{background:var(--surface);border:1px solid var(--line);color:var(--foreground);border-radius:50%;place-items:center;width:32px;height:32px;font-size:18px;display:grid;position:absolute;bottom:16px;right:16px}.project-copy{flex-direction:column;flex:1;padding:26px;display:flex}.project-copy h3{font-family:var(--display);letter-spacing:-.5px;font-size:20px;font-weight:600}.project-copy p{color:var(--muted);margin-block:12px 24px;font-size:13px;line-height:1.85}.project-tags{flex-wrap:wrap;gap:7px;margin-top:auto;list-style:none;display:flex}.project-tags li{font:13px/1.5 var(--font-geist-mono),monospace;background:var(--soft);color:var(--foreground);border-radius:5px;padding:4px 9px}.katex-display{padding-block:.5rem;overflow:auto hidden}.mdx-table-frame{border:1px solid var(--strong-line);background:var(--surface);box-shadow:0 1px 2px var(--foreground);border-radius:.75rem;margin-top:1.5rem;overflow-x:auto}@supports (color:color-mix(in lab,red,red)){.mdx-table-frame{box-shadow:0 1px 2px color-mix(in srgb,var(--foreground) 8%,transparent)}}.mdx-table{border-collapse:separate;border-spacing:0;text-align:left;width:100%;min-width:34rem;font-size:.875rem}.mdx-table-heading{border-bottom:1px solid var(--strong-line);background:var(--soft);font-weight:650}.mdx-table-cell,.mdx-table-heading{color:var(--foreground);padding:.75rem 1rem}.mdx-table-cell{border-bottom:1px solid var(--line);vertical-align:top}.mdx-table-cell:not(:last-child),.mdx-table-heading:not(:last-child){border-right:1px solid var(--line)}.mdx-table tbody tr:last-child .mdx-table-cell{border-bottom:0}.mdx-table tbody tr:nth-child(2n) .mdx-table-cell{background:var(--soft)}@supports (color:color-mix(in lab,red,red)){.mdx-table tbody tr:nth-child(2n) .mdx-table-cell{background:color-mix(in srgb,var(--soft) 46%,transparent)}}.mdx-code-block{border:1px solid var(--strong-line);font-family:var(--font-geist-mono),monospace;box-shadow:0 1px 2px var(--foreground);border-radius:.75rem;margin-top:1.5rem;padding:1.25rem;font-size:.875rem;line-height:1.75;overflow-x:auto}@supports (color:color-mix(in lab,red,red)){.mdx-code-block{box-shadow:0 1px 2px color-mix(in srgb,var(--foreground) 12%,transparent)}}.shiki,.shiki span{color:var(--shiki-dark)}.shiki{background-color:var(--shiki-dark-bg)}@media (max-width:700px){.home,.site-footer,.site-header{width:calc(100% - 36px)}.site-header{min-height:84px}.site-header nav{gap:16px;font-size:13px}.wordmark{gap:7px;font-size:13px}.brand-symbol{width:27px;height:27px;font-size:20px}.project-grid{grid-template-columns:1fr;gap:22px}.selected-work{padding-block:45px 60px}.section-heading h2{font-size:27px}.section-heading>a{font-size:13px}.project-copy{padding:22px}.site-footer{grid-template-columns:1fr 1fr;gap:28px}.footer-intro{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition:none!important;animation:none!important}.project-card:hover,.project-card:hover img{transform:none}}.site-header{border-bottom:1px solid var(--line);min-height:90px}.brand-symbol{color:#c1d6f7;font-family:var(--font-geist-mono);background:#293e5b;border:1px solid #486183;border-radius:8px}.project-card{border-radius:12px}.project-art img{filter:saturate(.78)brightness(.88)}.project-card:hover{box-shadow:0 12px 28px #050c1b50}.seasonal-theme{display:none}:root[data-theme=christmas] .seasonal-theme-christmas,:root[data-theme=halloween] .seasonal-theme-halloween,:root[data-theme=thanksgiving] .seasonal-theme-thanksgiving{display:contents}.seasonal-decorations{z-index:5;pointer-events:none;position:fixed;inset:0;overflow:hidden}.seasonal-decorations span{opacity:.64;font-size:22px;animation:seasonal-fall 15s linear infinite;position:absolute;top:-2rem}.seasonal-decorations span:first-child{animation-delay:-4s;left:8%}.seasonal-decorations span:nth-child(2){animation-duration:18s;animation-delay:-11s;left:21%}.seasonal-decorations span:nth-child(3){animation-duration:13s;animation-delay:-7s;left:34%}.seasonal-decorations span:nth-child(4){animation-duration:19s;animation-delay:-14s;left:48%}.seasonal-decorations span:nth-child(5){animation-duration:16s;animation-delay:-2s;left:62%}.seasonal-decorations span:nth-child(6){animation-duration:20s;animation-delay:-9s;left:75%}.seasonal-decorations span:nth-child(7){animation-duration:14s;animation-delay:-6s;left:88%}.seasonal-decorations span:nth-child(8){animation-duration:17s;animation-delay:-12s;left:96%}.seasonal-decorations span:nth-child(9){animation-duration:24s;animation-delay:-3s;left:28%}.seasonal-decorations span:nth-child(10){animation-duration:21s;animation-delay:-17s;left:57%}.seasonal-decorations span:nth-child(11){animation-duration:26s;animation-delay:-8s;left:81%}.seasonal-decorations span:nth-child(12){animation-duration:23s;animation-delay:-21s;left:43%}.seasonal-decorations span:nth-child(13){animation-duration:19s;animation-delay:-10s;left:17%}.seasonal-decorations span:nth-child(14){animation-duration:16s;animation-delay:-5s;left:70%}.seasonal-decorations span:nth-child(15){animation-duration:22s;animation-delay:-19s;left:37%}.seasonal-decorations span:nth-child(16){animation-duration:24s;animation-delay:-7s;left:92%}.seasonal-decorations span:nth-child(17){animation-duration:18s;animation-delay:-13s;left:52%}.seasonal-decorations span:nth-child(18){animation-duration:27s;animation-delay:-25s;left:4%}.seasonal-decorations span:nth-child(19){animation-duration:23s;animation-delay:-15s;left:25%}.seasonal-decorations span:nth-child(20){animation-duration:20s;animation-delay:-2s;left:65%}@keyframes seasonal-fall{0%{transform:translate(-22px,-6vh)rotate(-18deg)}48%{transform:translate(24px,48vh)rotate(185deg)}to{transform:translate(-16px,110vh)rotate(390deg)}}.seasonal-decorations span{color:#e6ad55;font-size:19px}.seasonal-halloween span:nth-child(odd){animation-name:leaf-drift-left}.seasonal-halloween span:nth-child(2n){animation-name:leaf-drift-right}.seasonal-thanksgiving span{font-size:22px}.seasonal-halloween span,.seasonal-thanksgiving span{background-image:url(/autumn-falling-leaf-sprites.webp);background-repeat:no-repeat;background-size:80px 40px;width:20px;height:20px;font-size:0}.seasonal-halloween span:first-child,.seasonal-thanksgiving span:first-child{background-position:0 0}.seasonal-halloween span:nth-child(2),.seasonal-thanksgiving span:nth-child(2){background-position:-20px 0}.seasonal-halloween span:nth-child(3),.seasonal-thanksgiving span:nth-child(3){background-position:-40px 0}.seasonal-halloween span:nth-child(4),.seasonal-thanksgiving span:nth-child(4){background-position:-60px 0}.seasonal-halloween span:nth-child(5),.seasonal-thanksgiving span:nth-child(5){background-position:0 -20px}.seasonal-halloween span:nth-child(6),.seasonal-thanksgiving span:nth-child(6){background-position:-20px -20px}.seasonal-halloween span:nth-child(7),.seasonal-thanksgiving span:nth-child(7){background-position:-40px -20px}.seasonal-halloween span:nth-child(8),.seasonal-thanksgiving span:nth-child(8){background-position:-60px -20px}.seasonal-halloween span:nth-child(9),.seasonal-thanksgiving span:nth-child(9){background-position:0 0}.seasonal-halloween span:nth-child(10),.seasonal-thanksgiving span:nth-child(10){background-position:-20px 0}.seasonal-halloween span:nth-child(11),.seasonal-thanksgiving span:nth-child(11){background-position:-40px 0}.seasonal-halloween span:nth-child(12),.seasonal-thanksgiving span:nth-child(12){background-position:-60px 0}.seasonal-halloween span:nth-child(13),.seasonal-thanksgiving span:nth-child(13){background-position:0 -20px}.seasonal-halloween span:nth-child(14),.seasonal-thanksgiving span:nth-child(14){background-position:-20px -20px}.seasonal-christmas span{color:#d9f0ff;text-shadow:0 0 7px #fff9;font-size:13px;animation-name:snow-drift}.seasonal-christmas span:nth-child(3n){opacity:.85;font-size:19px}.seasonal-christmas span:nth-child(3n+1){opacity:.5;font-size:10px}@keyframes leaf-drift-left{0%{transform:translate(18px,-6vh)rotate(0)}45%{transform:translate(-28px,48vh)rotate(-210deg)}to{transform:translate(22px,110vh)rotate(-430deg)}}@keyframes leaf-drift-right{0%{transform:translate(-24px,-6vh)rotate(20deg)}52%{transform:translate(34px,55vh)rotate(205deg)}to{transform:translate(-18px,110vh)rotate(460deg)}}@keyframes snow-drift{0%{transform:translate(-12px,-6vh)rotate(0)}50%{transform:translate(18px,48vh)rotate(80deg)}to{transform:translate(-10px,110vh)rotate(180deg)}}.seasonal-side-characters{z-index:1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.side-character{filter:drop-shadow(0 7px 9px #09101e33);width:76px;position:absolute;left:clamp(12px,50vw - 640px,160px)}.side-character-one{animation:character-bob 4s ease-in-out infinite;top:25vh}.side-character-two{width:68px;animation:character-bob 5s ease-in-out -1.5s infinite;top:64vh;left:auto;right:clamp(12px,50vw - 640px,160px)}.side-character svg{width:100%;display:block;overflow:visible}.seasonal-side-halloween .pumpkin-body{fill:#e87924;stroke:#9e431b;stroke-width:2px;filter:drop-shadow(0 2px 2px #79350b55)}.seasonal-side-halloween .side-character-two .pumpkin-body{fill:#d95c1c}.seasonal-side-halloween .pumpkin-halo{fill:#ff9f27;opacity:.3;filter:blur(7px);animation:pumpkin-halo-glow 2.4s ease-in-out infinite alternate}.seasonal-side-halloween .pumpkin-ridge{fill:none;stroke:#f99a3a;stroke-width:2.5px;opacity:.78}.seasonal-side-halloween .pumpkin-highlight{fill:none;stroke:#ffd28a;stroke-width:2px;stroke-linecap:round;opacity:.62}.seasonal-side-halloween .pumpkin-stem{fill:#547d3d;stroke:#365331;stroke-width:1px}.seasonal-side-halloween .pumpkin-vine{fill:none;stroke:#70934d;stroke-width:2px;stroke-linecap:round}.seasonal-side-halloween .pumpkin-face{fill:#ffdc69;filter:drop-shadow(0 0 4px #ffb520)drop-shadow(0 0 10px #ff781c);animation:jackolantern-glow 2.8s ease-in-out infinite alternate}.seasonal-side-halloween .pumpkin-face-smile{fill:#ffe9a0;animation-delay:-1.1s}.seasonal-side-halloween .pumpkin-teeth{fill:#fff0bc;filter:drop-shadow(0 0 2px #fff4b5)}.seasonal-side-halloween .pumpkin-eye-glint{fill:#fff9d7}.seasonal-side-halloween .pumpkin-spark{fill:#ffdb82;stroke:#ffdb82;stroke-width:1px;stroke-linecap:round;opacity:.9}.seasonal-side-halloween .pumpkin-body{transform-box:fill-box;transform-origin:bottom;animation:pumpkin-breathe 4.8s ease-in-out infinite}.seasonal-side-halloween .pumpkin-stem{transform-box:fill-box;transform-origin:bottom;animation:stem-sway 3.7s ease-in-out infinite}.seasonal-side-halloween .side-character-two{animation-name:character-bob-tilt;transform:rotate(8deg)scale(.9)}.seasonal-side-thanksgiving .turkey-tail{transform-box:fill-box;transform-origin:45% 88%;animation:tail-fan 3.2s ease-in-out infinite}.seasonal-side-thanksgiving .turkey-feather{stroke:#70412f;stroke-width:1.2px;stroke-linejoin:round}.seasonal-side-thanksgiving .feather-one{fill:#bd5236}.seasonal-side-thanksgiving .feather-two{fill:#e0a14c}.seasonal-side-thanksgiving .feather-three{fill:#8a6c3b}.seasonal-side-thanksgiving .turkey-feather-detail,.seasonal-side-thanksgiving .turkey-feather-shaft{fill:none;stroke:#f2c978;stroke-width:1.2px;stroke-linecap:round;opacity:.84}.seasonal-side-thanksgiving .turkey-body{fill:#986043;stroke:#623b2d;stroke-width:1.5px}.seasonal-side-thanksgiving .turkey-wing{fill:#b5794b;stroke:#70412f;stroke-width:1.2px}.seasonal-side-thanksgiving .turkey-wing-lines{fill:none;stroke:#e5b476;stroke-width:1.3px;stroke-linecap:round}.seasonal-side-thanksgiving .turkey-neck{fill:#986043;stroke:#623b2d;stroke-width:1.3px}.seasonal-side-thanksgiving .turkey-cap{fill:#3c6d58;stroke:#244c3f;stroke-width:1px}.seasonal-side-thanksgiving .turkey-eye{fill:#1c2430}.seasonal-side-thanksgiving .turkey-eye-glint{fill:#fff8df}.seasonal-side-thanksgiving .turkey-beak{fill:#e5a23c;stroke:#9f5c29;stroke-width:1px}.seasonal-side-thanksgiving .turkey-wattle{fill:#c84d35;stroke:#8f3329;stroke-width:1px;transform-box:fill-box;transform-origin:15% 10%;animation:wattle-swing 1.7s ease-in-out infinite}.seasonal-side-thanksgiving .turkey-bow{fill:#e4b64c;stroke:#86572d;stroke-width:1px}.seasonal-side-thanksgiving .turkey-feet{fill:none;stroke:#e39b3d;stroke-width:3px;stroke-linecap:round}.seasonal-side-thanksgiving .turkey-cape{fill:#d76c3f;stroke:#743c2b;stroke-width:1px}.seasonal-side-thanksgiving .side-character-two{animation-name:character-bob-tilt;transform:scaleX(-1)rotate(-5deg)}.seasonal-side-christmas .snowman-arm{fill:none;stroke:#795437;stroke-width:3.2px;stroke-linecap:round;stroke-linejoin:round}.seasonal-side-christmas .snowman-body{fill:#f5fbff;stroke:#bfd3df;stroke-width:1.7px}.seasonal-side-christmas .snowman-bottom{fill:#eaf5fa}.seasonal-side-christmas .snowman-shine{fill:none;stroke:#fff;stroke-width:2.5px;stroke-linecap:round;opacity:.95}.seasonal-side-christmas .snowman-hat{fill:#284638;stroke:#172f2b;stroke-width:1px}.seasonal-side-christmas .snowman-hat-band{fill:#b43e35}.seasonal-side-christmas .snowman-hat-brim{fill:#f7f4e9;stroke:#c5d8dc;stroke-width:1px}.seasonal-side-christmas .snowman-hat-buckle{fill:#e9bd61;stroke:#fff0b2;stroke-width:1px}.seasonal-side-christmas .snowman-button,.seasonal-side-christmas .snowman-eye{fill:#40515a}.seasonal-side-christmas .snowman-nose{fill:#e8843a;stroke:#bd5d2c;stroke-width:.8px}.seasonal-side-christmas .snowman-smile{fill:none;stroke:#536570;stroke-width:1.4px;stroke-linecap:round}.seasonal-side-christmas .snowman-blush{fill:#efa9a0;opacity:.65}.seasonal-side-christmas .snowman-scarf,.seasonal-side-christmas .snowman-scarf-tail{fill:#b43e3b;stroke:#7c292e;stroke-width:1px}.seasonal-side-christmas .snowman-scarf-fringe{fill:none;stroke:#e7bb61;stroke-width:1.5px;stroke-linecap:round}.seasonal-side-christmas .snowman-pocket{fill:#d7e9ef;stroke:#a9c5d2;stroke-width:1px}.seasonal-side-christmas .snowman-snowflake{fill:none;stroke:#8dbacb;stroke-width:1.3px;stroke-linecap:round}.seasonal-side-christmas .santa-coat,.seasonal-side-christmas .santa-hat{fill:#b63836;stroke:#7e2429;stroke-width:1px}.seasonal-side-christmas .santa-hat-fold{fill:#922d31}.seasonal-side-christmas .santa-cuff,.seasonal-side-christmas .santa-hat-trim,.seasonal-side-christmas .santa-pom{fill:#f7f4e9;stroke:#d1d8d2;stroke-width:1px}.seasonal-side-christmas .santa-face{fill:#f1c59f;stroke:#cc997a;stroke-width:1px}.seasonal-side-christmas .santa-eye{fill:#29323a}.seasonal-side-christmas .santa-eye-glint{fill:#fff}.seasonal-side-christmas .santa-eyebrow{fill:none;stroke:#694739;stroke-width:2px;stroke-linecap:round}.seasonal-side-christmas .santa-nose{fill:#d98f78}.seasonal-side-christmas .santa-beard,.seasonal-side-christmas .santa-moustache{fill:#f8f6eb;stroke:#c9d2d1;stroke-width:1px}.seasonal-side-christmas .santa-beard-lines{fill:none;stroke:#d6dfdc;stroke-width:1.2px;stroke-linecap:round}.seasonal-side-christmas .santa-collar{fill:#fffdf5;stroke:#d6d6cb;stroke-width:1px}.seasonal-side-christmas .santa-belt{fill:#302c29}.seasonal-side-christmas .santa-buckle{fill:#e9bd61;fill-rule:evenodd}.seasonal-side-christmas .santa-arm,.seasonal-side-christmas .santa-mitten{fill:#b63836;stroke:#7e2429;stroke-width:1px}.seasonal-side-christmas .santa-suit-seam{fill:none;stroke:#d96251;stroke-width:1.2px}.seasonal-side-christmas .side-character-two{animation-delay:-2.3s}.seasonal-side-christmas .side-character svg{filter:drop-shadow(0 3px 2px #29445220)}.christmas-corner-lights{z-index:0;pointer-events:none;height:64px;position:fixed;top:0;left:0;right:0;overflow:visible}.christmas-string{filter:drop-shadow(0 2px 5px #17251f66);width:100vw;height:64px;position:absolute;top:0;left:0;overflow:visible}.site-footer,.site-header,main{z-index:1;position:relative}.christmas-wire{fill:none;stroke:#49634e;stroke-width:3px;stroke-linecap:round}.christmas-icicles{z-index:0;pointer-events:none;filter:drop-shadow(0 2px 3px #7fa6b444);width:100vw;height:48px;position:fixed;top:0;left:0;overflow:visible}.icicle-body,.icicle-shelf{fill:url(#icicle-ice)}.icicle-body{stroke:#d9eef7;stroke-width:.7px}.icicle-glint{fill:none;stroke:#fff;stroke-width:1.2px;stroke-linecap:round;opacity:.72}.bulb-socket{fill:none;stroke:#394c3e;stroke-width:2px;stroke-linecap:round}.bulb-glass{fill:#ff6b5f;filter:drop-shadow(0 0 4px #ff6b5f);transform-box:fill-box;transform-origin:top;animation:christmas-glow 1.7s ease-in-out infinite alternate}.christmas-bulb-1 .bulb-glass{fill:#ffd76b;filter:drop-shadow(0 0 5px #ffd76b);animation-delay:-.45s}.christmas-bulb-2 .bulb-glass{fill:#69d7a0;filter:drop-shadow(0 0 5px #69d7a0);animation-delay:-.9s}.christmas-bulb-3 .bulb-glass{fill:#75c9ff;filter:drop-shadow(0 0 5px #75c9ff);animation-delay:-1.2s}@keyframes character-bob{0%,to{translate:0}50%{translate:0 -8px}}@keyframes character-bob-tilt{0%,to{translate:0;rotate:-3deg}50%{translate:0 -7px;rotate:3deg}}@keyframes jackolantern-glow{0%{opacity:.78;filter:drop-shadow(0 0 5px #ffb520)drop-shadow(0 0 11px #ff781c)}to{opacity:1;filter:drop-shadow(0 0 10px #ffdf70)drop-shadow(0 0 20px #ff781c)}}@keyframes pumpkin-halo-glow{0%{opacity:.2;transform:scale(.9)}to{opacity:.42;transform:scale(1.08)}}@keyframes pumpkin-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.035,.98)}}@keyframes stem-sway{0%,to{rotate:-3deg}50%{rotate:5deg}}@keyframes tail-fan{0%,to{rotate:-3deg}45%{rotate:4deg}60%{rotate:2deg}}@keyframes wattle-swing{0%,to{rotate:0}40%{rotate:9deg}75%{rotate:-4deg}}@keyframes christmas-glow{0%{opacity:.62;transform:scale(.92)}to{opacity:1;transform:scale(1.08)}}.site-header{position:relative}:root[data-theme=christmas] .site-header{border-bottom-color:#0000}:root[data-theme=christmas] .site-header:after,:root[data-theme=christmas] .site-header:before{content:none}:root[data-theme=christmas] .site-header>*{z-index:3;position:relative}:root[data-theme=christmas] .site-footer{isolation:isolate;border-top-color:var(--line);padding-bottom:68px}:root[data-theme=christmas] .site-footer:before{content:"";z-index:0;pointer-events:none;filter:drop-shadow(0 -3px 4px #bfd8e655);background:radial-gradient(16% 65% at 5% 100%,#fbfdff 97%,#0000 100%),radial-gradient(20% 77% at 21% 100%,#f2f8fc 97%,#0000 100%),radial-gradient(18% 68% at 39% 100%,#fbfdff 97%,#0000 100%),radial-gradient(23% 82% at 59% 100%,#f2f8fc 97%,#0000 100%),radial-gradient(19% 72% at 79% 100%,#fbfdff 97%,#0000 100%),radial-gradient(17% 67% at 97% 100%,#f2f8fc 97%,#0000 100%),linear-gradient(#0000 36%,#e9f4fb 37% 100%);width:100vw;height:76px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}:root[data-theme=christmas] .site-footer>*{z-index:1;position:relative}:root[data-theme=halloween] .site-footer,:root[data-theme=thanksgiving] .site-footer{border-top-color:var(--line)}:root[data-theme=halloween] .site-footer:before,:root[data-theme=thanksgiving] .site-footer:before{content:none}:root[data-theme=christmas] .project-card{position:relative}:root[data-theme=christmas] .project-card:before{content:"";z-index:2;pointer-events:none;background-image:radial-gradient(circle at 6px 8px,#f45e54 0 3px,#0000 3.8px),radial-gradient(circle at 19px 8px,#f5d56c 0 3px,#0000 3.8px),radial-gradient(circle at 32px 8px,#65bd83 0 3px,#0000 3.8px),linear-gradient(177deg,#0000 46%,#58705a 48% 51%,#0000 53%);background-size:39px 18px;height:15px;animation:light-twinkle 2.1s ease-in-out infinite alternate;position:absolute;top:0;left:0;right:0}:root[data-theme=christmas] .project-art:after{content:"";filter:drop-shadow(0 -2px 3px #bfd8e655);background:radial-gradient(18% 76% at 6% 100%,#fbfdff 97%,#0000 100%),radial-gradient(20% 85% at 23% 100%,#f5faff 97%,#0000 100%),radial-gradient(17% 78% at 43% 100%,#fbfdff 97%,#0000 100%),radial-gradient(22% 90% at 64% 100%,#f5faff 97%,#0000 100%),radial-gradient(20% 82% at 84% 100%,#fbfdff 97%,#0000 100%),linear-gradient(#0000 42%,#e9f4fb 43% 100%);height:23px;position:absolute;inset:auto 0 -1px}@keyframes light-twinkle{0%{opacity:.72}to{opacity:1}}:root[data-theme=halloween]{--background:#171421;--foreground:#f4edf7;--muted:#beb2c8;--surface:#211d2c;--accent:#ff9b4a;--soft:#302735;--line:#433747;--strong-line:#725467}:root[data-theme=thanksgiving]{--background:#211a16;--foreground:#f3e7d4;--muted:#c3ae91;--surface:#2c221b;--accent:#edbb77;--soft:#3d3024;--line:#544331;--strong-line:#8f7451}:root[data-theme=christmas]{--background:#14212a;--foreground:#edf5f7;--muted:#afc4ca;--surface:#1d2d36;--accent:#8cd2a8;--soft:#293d34;--line:#40594b;--strong-line:#6c917b}:root[data-haunt-phase],:root[data-haunt-phase] *{cursor:none!important}.haunt-overlay{z-index:10000;pointer-events:none;position:fixed;inset:0;overflow:hidden}.haunt-lightning{background:#eef7ff;animation:haunt-lightning-flash .72s step-end both;position:absolute;inset:0}.haunt-bolt{fill:#fff;opacity:0;filter:drop-shadow(0 0 18px #d8efff)drop-shadow(0 0 60px #a6d5ff);width:18vw;height:112vh;animation:haunt-bolt-flash .72s step-end both;position:absolute;top:-8vh;left:38vw}.haunt-bolt-secondary{width:12vw;height:80vh;animation-delay:28ms;left:67vw}.haunt-beam,.haunt-darkness{position:absolute;inset:0}.haunt-blackout,.haunt-flicker{background:#030205;position:absolute;inset:0}.haunt-flicker{animation:haunt-lamp-flicker .8s step-end both}.haunt-darkness{background:radial-gradient(circle 215px at var(--flashlight-x,50vw) var(--flashlight-y,50vh),transparent 0 64px,#03020529 92px,#030205c7 152px,#030205 215px)}.haunt-beam{background:radial-gradient(circle 205px at var(--flashlight-x,50vw) var(--flashlight-y,50vh),#ffe1b03d 0,#ffc58026 34px,#ff94460b 105px,transparent 205px);mix-blend-mode:screen}.haunt-face{z-index:2;opacity:1;filter:drop-shadow(0 0 34px #9d321b99)contrast(1.08);background:url(/halloween/jumpscare-face-v2.webp) 50%/min(112vw,108vh) min(112vw,108vh) no-repeat;position:absolute;inset:0}.haunt-face-visible{animation:haunt-face-lunge 2s cubic-bezier(.12,.86,.13,1) both}.haunt-scare-flash,.haunt-static{position:absolute;inset:0}.haunt-scare-flash{z-index:1;background:#fff4df;animation:haunt-scare-flash .85s linear both}.haunt-static{opacity:0;mix-blend-mode:screen;background:repeating-linear-gradient(0deg,#e7d9c51c 0 1px,#0000 1px 3px);animation:haunt-static-burst 1.4s steps(2) both}:root[data-haunt-phase=lightning] body>:not(.haunt-overlay){animation:haunt-screen-jolt .72s both}:root[data-haunt-phase=scare] body>:not(.haunt-overlay){animation:haunt-screen-jolt-hard 1.4s both}@keyframes haunt-lightning-flash{0%,to{opacity:0}8%{opacity:.84}13%{opacity:.08}22%{opacity:.02}29%{opacity:.98}33%{opacity:.14}38%{opacity:.78}45%{opacity:.04}51%{opacity:.48}58%{opacity:0}}@keyframes haunt-lamp-flicker{0%,12%,23%,39%,56%,72%{opacity:1}18%,31%,48%,64%,7%,81%,to{opacity:0}88%{opacity:.86}93%{opacity:.18}}@keyframes haunt-bolt-flash{0%,to{opacity:0}9%{opacity:1}14%{opacity:.08}28%{opacity:0}30%{opacity:1}37%{opacity:.12}41%{opacity:.8}48%{opacity:0}}@keyframes haunt-screen-jolt{0%,to{transform:translate(0)}12%{transform:translate(-5px,3px)}30%{transform:translate(4px,-3px)}42%{transform:translate(-2px,2px)}}@keyframes haunt-screen-jolt-hard{0%,to{transform:translate(0)rotate(0)}7%{transform:translate(-11px,7px)rotate(-.4deg)}16%{transform:translate(9px,-6px)rotate(.35deg)}25%{transform:translate(-7px,-3px)rotate(-.25deg)}34%{transform:translate(5px,5px)rotate(.2deg)}44%{transform:translate(-2px,-2px)}}@keyframes haunt-face-lunge{0%{filter:brightness(.55);transform:translateY(16vh)scale(.24)rotate(7deg)}9%{filter:brightness(1.2);transform:translateY(8vh)scale(.52)rotate(-3deg)}22%{filter:brightness(1.85);transform:translateY(-1vh)scale(1.24)rotate(1deg)}30%{filter:brightness(.85);transform:translateY(1vh)scale(1.12)rotate(-1.4deg)}44%{filter:brightness(1.3);transform:translateY(-1vh)scale(1.33)rotate(.8deg)}70%{transform:scale(1.31)}to{filter:brightness(.55);transform:translateY(-2vh)scale(1.58)rotate(-2deg)}}@keyframes haunt-scare-flash{0%{opacity:.96}5%{opacity:0}13%{opacity:.42;background:#9d1915}17%{opacity:0}28%{opacity:.16;background:#f4e9d6}32%,to{opacity:0}}@keyframes haunt-static-burst{0%,19%,34%,56%,to{opacity:0}20%,27%{opacity:.58}28%,30%{opacity:.12}57%,62%{opacity:.24}}@media (prefers-reduced-motion:reduce){.haunt-overlay,:root[data-haunt-phase] body>:not(.haunt-overlay){animation:none!important}}:root[data-theme=christmas]{background-color:#e9f4fb;background-image:radial-gradient(16% 65% at 5% 100%,#fbfdff 97%,#0000 100%),radial-gradient(20% 77% at 21% 100%,#f2f8fc 97%,#0000 100%),radial-gradient(18% 68% at 39% 100%,#fbfdff 97%,#0000 100%),radial-gradient(23% 82% at 59% 100%,#f2f8fc 97%,#0000 100%),radial-gradient(19% 72% at 79% 100%,#fbfdff 97%,#0000 100%),radial-gradient(17% 67% at 97% 100%,#f2f8fc 97%,#0000 100%),linear-gradient(#0000 36%,#e9f4fb 37% 100%);background-position:bottom;background-repeat:repeat-x;background-size:100vw 76px}@media (prefers-reduced-motion:reduce){.seasonal-decorations span{animation:none}}@media (max-width:1279px){.seasonal-side-characters{display:none}}@media (max-width:700px){.christmas-corner-lights{display:none}}.text-xs{font-size:13px}:root[data-theme=halloween] body{background-image:radial-gradient(ellipse at 8% 24%,#8d3e2638,transparent 38%),radial-gradient(ellipse at 88% 70%,#4f287138,transparent 42%),radial-gradient(circle,var(--accent) 1px,transparent 1px)}@supports (color:color-mix(in lab,red,red)){:root[data-theme=halloween] body{background-image:radial-gradient(ellipse at 8% 24%,#8d3e2638,transparent 38%),radial-gradient(ellipse at 88% 70%,#4f287138,transparent 42%),radial-gradient(circle,color-mix(in srgb,var(--accent) 10%,transparent) 1px,transparent 1px)}}:root[data-theme=halloween] body{background-repeat:no-repeat,no-repeat,repeat;background-size:100% 100%,100% 100%,22px 22px}:root[data-theme=thanksgiving] body{background-image:radial-gradient(ellipse at 10% 16%,#d38a3930,transparent 36%),radial-gradient(ellipse at 90% 72%,#8b4d2228,transparent 40%),radial-gradient(circle,var(--accent) 1px,transparent 1px)}@supports (color:color-mix(in lab,red,red)){:root[data-theme=thanksgiving] body{background-image:radial-gradient(ellipse at 10% 16%,#d38a3930,transparent 36%),radial-gradient(ellipse at 90% 72%,#8b4d2228,transparent 40%),radial-gradient(circle,color-mix(in srgb,var(--accent) 10%,transparent) 1px,transparent 1px)}}:root[data-theme=thanksgiving] body{background-repeat:no-repeat,no-repeat,repeat;background-size:100% 100%,100% 100%,22px 22px}:root[data-theme=christmas] body{background-image:radial-gradient(ellipse at 9% 22%,#2a755d2b,transparent 38%),radial-gradient(ellipse at 92% 74%,#547ba32f,transparent 42%),radial-gradient(circle,var(--accent) 1px,transparent 1px)}@supports (color:color-mix(in lab,red,red)){:root[data-theme=christmas] body{background-image:radial-gradient(ellipse at 9% 22%,#2a755d2b,transparent 38%),radial-gradient(ellipse at 92% 74%,#547ba32f,transparent 42%),radial-gradient(circle,color-mix(in srgb,var(--accent) 10%,transparent) 1px,transparent 1px)}}:root[data-theme=christmas] body{background-repeat:no-repeat,no-repeat,repeat;background-size:100% 100%,100% 100%,22px 22px}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_8eaea4{font-family:Geist,Geist Fallback;font-style:normal}.__variable_8eaea4{--font-geist-sans:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e038a29029a234f2-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_8c25df{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_8c25df{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}