@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:-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-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{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}html,:host{-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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{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}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-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{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.mr-1{margin-right:var(--spacing)}.block{display:block}.contents{display:contents}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@font-face{font-family:Symbols Nerd Font;src:url(/fonts/SymbolsNerdFont-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--bg:#f4f2ec;--fg:#1a1a18;--muted:#5c5a54;--line:#d4d0c4;--accent:#1f6f5b;--accent-soft:#e6efe9;--danger:#9b2c2c;--ok:#1f6f5b;--radius:6px;--font:var(--font-body), "IBM Plex Sans", "Avenir Next", "Segoe UI", system-ui, sans-serif;--base00:var(--bg);--base03:var(--muted);--base05:var(--fg);--base08:var(--accent);--base0D:var(--accent)}@media (prefers-color-scheme:dark){:root{--bg:#121411;--fg:#e8e6df;--muted:#9a978c;--line:#2c2f2a;--accent:#6fbfa4;--accent-soft:#1c2822;--danger:#e09090;--ok:#6fbfa4}}*,:before,:after{box-sizing:border-box}::selection{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){::selection{background:color-mix(in srgb, var(--accent) 35%, var(--accent-soft))}}::selection{color:var(--fg)}html.contact-resizing,html.contact-resizing *{-webkit-user-select:none!important;user-select:none!important}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);min-height:100dvh;color:var(--fg);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;margin:0;font-size:1rem;line-height:1.55}*{scrollbar-width:thin;scrollbar-color:var(--accent) var(--line)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--line)}::-webkit-scrollbar-thumb{background:var(--accent);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--accent) 82%, var(--fg))}}:where(.wrap,.section,.section-head,.hero,.hero-text,.resume-list,.resume-entry,.resume-skills,.projects,.project-row,.gh-stats,.gh-metrics,.gh-metric,.gh-block,.gh-pie-layout,.footer,.footer-rule,.contact,.contact-field,.contact-message,label,ul,ol,hr){-webkit-user-select:none;user-select:none}:where(p,h1,h2,h3,h4,a,strong,em,input,textarea),:where(.resume-bullets li,.site-links li,.gh-pie-legend li){-webkit-user-select:text;user-select:text}:where(img,svg,button,.avatar,.carousel,.contact-resize,.gh-pie){-webkit-user-select:none;user-select:none}:where(label input,label textarea){-webkit-user-select:text;user-select:text}:where(p,h1,h2,h3,h4,.resume-bullets li,.site-links li,.gh-pie-legend li){overflow-wrap:break-word;width:fit-content;min-width:0;max-width:100%}.about,.blurb,.resume-skills p,.project-body :is(p,h1,h2,h3,h4),.legal-prose :is(p,h1,h2,h3,h4){width:100%;max-width:none}.about,.blurb,.resume-skills p,.project-body p{text-align:justify;text-justify:inter-word;text-align-last:start;overflow-wrap:break-word}.blurb,.resume-skills p,.project-body p{-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:6 3 3}.resume-bullets li,.site-links li,.gh-pie-legend li{text-align:start;text-align-last:start;-webkit-hyphens:none;hyphens:none;overflow-wrap:break-word;width:fit-content;min-width:0;max-width:100%}a{color:var(--accent);text-underline-offset:.15em}@media (hover:hover){a:hover{text-decoration-thickness:2px}}.nf{speak:never;font-family:Symbols Nerd Font,sans-serif;font-style:normal;font-weight:400;line-height:1}.ctrl-row{flex-flow:row;align-items:center;gap:.65rem;display:flex}.ctrl-row.center{justify-content:center;width:100%}.ctrl{box-sizing:border-box;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);width:2.25rem;height:2.25rem;color:var(--accent);font:inherit;cursor:pointer;z-index:1;appearance:none;touch-action:manipulation;flex:none;justify-content:center;align-items:center;margin:0;padding:0;font-size:1.15rem;line-height:1;display:inline-flex;position:relative}.ctrl-wide{width:auto;min-width:2rem;color:var(--fg);gap:.4rem;padding:0 .75rem;font-size:.9rem;font-weight:500}.ctrl:hover{border-color:var(--accent);background:var(--accent-soft)}.ctrl:disabled{opacity:.4;cursor:not-allowed}.ctrl:disabled:hover{border-color:var(--line);background:var(--bg)}.ctrl-meta{min-width:3.5rem;color:var(--muted);text-align:center;font-variant-numeric:tabular-nums;margin:0;font-size:.85rem}.ctrl-link{font:inherit;color:var(--accent);cursor:pointer;text-underline-offset:.15em;background:0 0;border:none;border-radius:0;padding:0;text-decoration:underline;text-decoration-thickness:1.5px}@media (hover:hover){.ctrl-link:hover{text-decoration-thickness:2px}}.ctrl-link:disabled{opacity:.5;cursor:not-allowed}img{max-width:100%;height:auto;display:block}img[data-nimg=fill]{width:100%;max-width:none;height:100%}.wrap{box-sizing:border-box;width:min(40rem,100%);max-width:100%;margin:0 auto;padding:3.25rem 1rem 4rem;overflow-x:clip}.hero{gap:1.25rem;margin-bottom:.25rem;display:grid}@media (min-width:560px){.hero{grid-template-columns:auto 1fr;align-items:start;gap:1.5rem}}.avatar{border-radius:var(--radius);object-fit:cover;border:1px solid var(--line);background:var(--accent-soft);width:5.5rem;height:5.5rem}.hero-name{flex-wrap:nowrap;align-items:center;gap:.65rem .8rem;margin:0 0 .45rem;display:flex}.hero h1,.hero-title{letter-spacing:-.03em;margin:0;font-size:clamp(2.1rem,5.5vw,2.85rem);font-weight:600;line-height:1.1}.hero-name.is-group-hidden,.hire-bar-lead.is-group-hidden{opacity:0;pointer-events:none}a.hire-me,a.hire-me:hover,a.hire-me:focus-visible,.hire-bar .hire-me,.hire-group-fly .hire-me{border-radius:var(--radius);background:var(--accent);color:var(--bg);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;flex-shrink:0;align-items:center;padding:.32rem .72rem;font-size:.72rem;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex}a.hire-me:hover,a.hire-me:focus-visible{filter:brightness(1.12)}.hire-bar-host{z-index:40;pointer-events:none;contain:style;width:100%;height:auto;position:fixed;top:0;bottom:auto;left:0}.hire-bar{background:var(--bg);border-bottom:1px solid var(--line);color:inherit;opacity:0;pointer-events:none;contain:layout;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:.35rem 1rem;margin:0;padding:.55rem 1rem;transition:opacity .16s linear;display:grid}.hire-bar-host.is-on{pointer-events:none}.hire-bar-host.is-on .hire-bar{opacity:1;pointer-events:auto}.hire-bar-host:not(.is-on) .hire-bar-copy,.hire-bar-host:not(.is-on) .hire-bar-back{display:none}.hire-group-fly{z-index:80;pointer-events:none;visibility:hidden;contain:layout style;margin:0;position:fixed;top:0;left:0}.hire-group-fly.is-live{visibility:visible}.hire-group-fly-name,.hire-group-fly .hire-me{transform-origin:0 0;position:absolute;top:0;left:0}.hire-group-fly-name{letter-spacing:-.03em;color:var(--fg);white-space:nowrap;margin:0;font-size:clamp(2.1rem,5.5vw,2.85rem);font-weight:600;line-height:1.1}.hire-bar-lead{flex-wrap:nowrap;flex:none;align-items:center;gap:.65rem .8rem;display:flex}.hire-bar-name{white-space:nowrap;letter-spacing:-.03em;color:var(--fg);flex:none;font-size:1.05rem;font-weight:600;line-height:1.25;text-decoration:none}.hire-bar-name:hover,.hire-bar-name:focus-visible{color:var(--accent)}.hire-bar .hire-me{flex:none}.hire-bar-copy{letter-spacing:0;text-transform:none;text-align:center;min-width:0;color:var(--fg);margin:0;font-size:.82rem;font-weight:500;line-height:1.35}.hire-bar.is-stack{grid-template-columns:minmax(0,1fr)}.hire-bar.is-stack .hire-bar-copy{text-align:left}.hire-bar-back{background:var(--bg);border-bottom:1px solid var(--line);margin:0;padding:.4rem 1rem .5rem;font-size:.9rem;display:none}.hire-bar-back a{color:var(--accent);font-weight:600;text-decoration:none}.hire-bar-back a:hover,.hire-bar-back a:focus-visible{text-decoration:underline}.hire-bar-host.is-on .hire-bar-back{pointer-events:auto}@media (min-width:64rem){.hire-bar{padding-inline:1.25rem}}@media (prefers-reduced-motion:reduce){.hire-bar{transition:none}}.hero-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1.1rem;margin:.9rem 0 0;font-size:.95rem;display:flex}.role{color:var(--muted);margin:0 0 1.15rem;font-size:.95rem}.about{color:var(--muted);-webkit-hyphens:none;hyphens:none;overflow-wrap:break-word;word-break:normal;max-width:min(54ch,100%);margin:0}.resume-list{gap:1.15rem;margin:0;padding:0;list-style:none;display:grid}.resume-entry h3{letter-spacing:-.01em;margin:0;font-size:1.05rem;font-weight:600}.resume-entry h3 a{color:inherit;text-decoration:none}@media (hover:hover){.resume-entry h3 a:hover{color:var(--accent);text-decoration:underline}}.resume-entry .when{color:var(--fg);margin:.2rem 0 0;font-size:.95rem;font-weight:500}.resume-meta{color:var(--muted);margin:.15rem 0 0;font-size:.92rem}.resume-bullets{gap:.25rem;margin:.4rem 0 0;padding:0;list-style:none;display:grid}.resume-bullets li{padding-left:.9rem;font-size:.95rem;position:relative}.resume-bullets li:before{content:"-";color:var(--muted);position:absolute;left:0}.resume-skills p{margin:0 0 .35rem;font-size:.95rem}.also-projects{color:var(--muted);margin:1.1rem 0 0;font-size:.92rem}.section,.resume-list,.resume-entry,.projects,.project-row,.gh-stats{min-width:0;max-width:100%}.section{margin:2.75rem 0 0}.section-head{border-bottom:1px solid var(--line);-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;margin:0 0 1.2rem;padding:0 0 .5rem;display:block}.section-head a{pointer-events:auto}.section-head>h2,.section>h2{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);-webkit-user-select:text;user-select:text;margin:0;font-size:.72rem;font-weight:600;line-height:1;display:inline}:is(h1,h2,h3):has(>.section-anchor){scroll-margin-top:1.25rem}.section-anchor{color:inherit;text-decoration:none}.section-anchor:hover{color:var(--accent);text-decoration:none}.section-anchor:hover:after{content:"#";letter-spacing:0;opacity:.55;margin-left:.35em;font-weight:500}.projects{gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.project-row{align-items:start;gap:.85rem;display:grid}@media (min-width:560px){.project-row{grid-template-columns:7.25rem minmax(0,1fr);gap:1rem}}.project-thumb-link{line-height:0;display:block}.project-thumb{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);border:1px solid var(--line);background:var(--accent-soft);width:100%;max-width:7.25rem}.project-row h3{letter-spacing:-.015em;margin:0 0 .2rem;font-size:1.15rem;font-weight:600}.project-row h3 a{color:inherit;text-decoration:none}@media (hover:hover){.project-row h3 a:hover{color:var(--accent);text-decoration:underline}}.project-row.is-active h3 a{color:var(--accent)}.split-shell{width:100%}.footer.site-chrome-foot{border-top:1px solid var(--line);background:var(--bg);flex:none;margin-top:0;padding:.65rem 1rem .8rem;display:none}.footer.site-chrome-foot .footer-rule{display:none}.split-main,.split-detail{min-width:0}.split-detail{display:none}@media (max-width:63.999rem){body:has(.split-shell){overflow:hidden}.split-shell{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr) minmax(0,0fr);width:100%;height:100dvh;max-height:100dvh;transition:grid-template-columns .42s cubic-bezier(.22,1,.36,1);display:grid;overflow:hidden}.split-shell[data-open]{grid-template-columns:minmax(0,0fr) minmax(0,1fr)}.split-main{-webkit-overflow-scrolling:touch;grid-area:1/1;height:100%;overflow:hidden auto}.split-shell[data-open] .split-main{pointer-events:none}body:has(.split-shell[data-open]) .hire-group-fly{visibility:hidden}.split-detail{background:var(--bg);opacity:0;pointer-events:none;grid-area:1/2;height:100%;transition:opacity .28s;display:block;overflow:hidden}.split-shell[data-open] .split-detail{-webkit-overflow-scrolling:touch;padding-top:var(--hire-chrome,0px);opacity:1;pointer-events:auto;overflow:hidden auto}.split-shell[data-open] .split-detail .wrap{padding:.45rem 1rem 2rem}.footer.site-chrome-foot{grid-area:2/1/auto/-1}.split-shell[data-open] .footer.site-chrome-foot{display:block}body:has(.split-shell[data-open]) .hire-bar-host.is-on .hire-bar-back{display:block}.split-shell[data-open][data-active=view] .split-detail:has(.embed-viewer.is-frame){flex-direction:column;display:flex;overflow:hidden}.split-shell[data-open][data-active=view] .split-detail:has(.embed-viewer.is-frame) .split-detail-slot{flex-direction:column;flex:1 1 0;height:100%;min-height:0;display:flex}.split-shell[data-open][data-active=view] .embed-viewer.is-frame{flex-direction:column;flex:1 1 0;width:100%;height:100%;min-height:0;display:flex}}@media (max-width:63.999rem) and (prefers-reduced-motion:reduce){.split-shell,.split-detail{transition:none}}@media (min-width:64rem){body:has(.split-shell){overflow:hidden}.split-shell{grid-template-columns:minmax(0,1fr) minmax(0,0fr);width:100%;height:100dvh;max-height:100dvh;transition:grid-template-columns .42s cubic-bezier(.22,1,.36,1);display:grid}.split-shell[data-open]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.split-main{scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;height:100%;overflow:hidden auto;display:block!important}.split-shell[data-open] .split-main{display:block!important}.split-detail{background:var(--bg);opacity:0;border-left:1px solid #0000;height:100%;transition:opacity .28s,border-color .28s;overflow:hidden;display:block!important}.split-shell[data-open] .split-detail{-webkit-overflow-scrolling:touch;border-left-color:var(--line);opacity:1;overflow:hidden auto}.split-shell[data-open][data-active=view] .split-detail:has(.embed-viewer.is-frame){flex-direction:column;height:100%;max-height:100%;overflow:hidden;display:flex!important}.split-shell[data-open][data-active=view] .split-detail:has(.embed-viewer.is-frame) .split-detail-slot{flex-direction:column;flex:1 1 0;height:100%;min-height:0;display:flex}.split-shell[data-open][data-active=view] .embed-viewer.is-frame{flex-direction:column;flex:1 1 0;width:100%;height:100%;min-height:0;display:flex}.split-shell .wrap{padding-top:1.75rem;padding-bottom:2.5rem;width:min(40rem,100%);padding-inline:1.25rem}.split-shell .project-home{display:none}}@media (min-width:64rem) and (prefers-reduced-motion:reduce){.split-shell,.split-detail{transition:none}}.split-detail-slot{min-height:100%;display:block}.detail-pane{background:var(--bg);width:100%}.detail-actions{margin:-.55rem 0 1.15rem;font-size:.9rem}.detail-actions a{color:var(--accent);text-underline-offset:.15em;text-decoration:underline;text-decoration-thickness:1.5px}@media (hover:hover){.detail-actions a:hover{text-decoration-thickness:2px}}.embed-viewer{background:var(--bg);flex-direction:column;width:100%;min-height:100%;display:flex}.embed-viewer.is-frame>.wrap{flex:none;padding-bottom:.85rem}.embed-stage{background:var(--bg);flex-direction:column;flex:1 1 0;min-height:16rem;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.embed-stage{background:color-mix(in srgb, var(--bg) 88%, var(--line))}}.embed-stage{border-top:1px solid var(--line)}.embed-frame{background:var(--bg);border:0;flex:1 1 0;align-self:stretch;width:100%;min-width:0;height:100%;min-height:16rem;display:block}.embed-home{flex:none;margin:.75rem 1rem 1rem}@media (min-width:64rem){.embed-viewer{min-height:0}.embed-home{display:none}}.profile-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);align-content:start;gap:1rem;min-width:0;margin:0 0 .25rem;padding:1rem 1.05rem 1.1rem;display:grid}@supports (color:color-mix(in lab, red, red)){.profile-card{background:color-mix(in srgb, var(--bg) 92%, var(--line))}}.profile-card-head{min-width:0;color:inherit;border-radius:calc(var(--radius) - 2px);align-items:flex-start;gap:.9rem;text-decoration:none;display:flex}a.profile-card-head:hover .profile-card-name,a.profile-card-head:focus-visible .profile-card-name{color:var(--accent)}a.profile-card-head:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.profile-card-avatar{border-radius:var(--radius);border:1px solid var(--line);background:var(--bg);flex:none;width:5.5rem;height:5.5rem;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.profile-card-avatar{background:color-mix(in srgb, var(--bg) 70%, var(--line))}}.profile-card-avatar img{object-fit:cover;width:100%;height:100%;display:block}.profile-card-avatar-fallback{letter-spacing:.04em;width:100%;height:100%;color:var(--muted);place-items:center;font-size:1.35rem;font-weight:600;display:grid}.profile-card-identity{flex:auto;gap:.2rem;min-width:0;padding-top:.1rem;display:grid}.profile-card-network{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.4rem;min-width:0;margin:0;font-size:.78rem;font-weight:600;display:flex}.profile-card-network span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-card-favicon{object-fit:contain;border-radius:2px;flex:none;width:.875rem;height:.875rem}.profile-card-name{letter-spacing:-.02em;color:var(--fg);overflow-wrap:break-word;margin:0;font-size:clamp(1.25rem,3vw,1.55rem);font-weight:600;line-height:1.2}.profile-card-username{color:var(--accent);overflow-wrap:anywhere;margin:0;font-size:.95rem}.profile-card-status{border:1px solid var(--line);background:var(--accent-soft);color:var(--fg);border-radius:4px;justify-self:start;margin:.15rem 0 0;padding:.15rem .45rem;font-size:.78rem;font-weight:500}.profile-card-bio{color:var(--fg);overflow-wrap:break-word;-webkit-line-clamp:5;line-clamp:5;white-space:pre-line;-webkit-box-orient:vertical;margin:0;font-size:.95rem;line-height:1.45;display:-webkit-box;overflow:hidden}.profile-card-bio.is-empty{color:var(--muted);font-style:italic}.profile-card-bio.is-skeleton,.profile-card-username.is-skeleton{background:var(--line);border-radius:4px;min-height:1.2em}@supports (color:color-mix(in lab, red, red)){.profile-card-bio.is-skeleton,.profile-card-username.is-skeleton{background:color-mix(in srgb, var(--line) 55%, var(--bg))}}.profile-card-bio.is-skeleton,.profile-card-username.is-skeleton{color:#0000}.profile-card-bio.is-skeleton{min-height:3.2em}.profile-card-stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:0;padding:.75rem 0;list-style:none;display:grid}.profile-card-stats[data-cols="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-card-stats li{text-align:center;gap:.15rem;min-width:0;display:grid}.profile-card-stats a,.profile-card-stats button{text-align:center;width:100%;min-width:0;color:inherit;appearance:none;font:inherit;cursor:pointer;background:0 0;border:0;gap:.15rem;margin:0;padding:0;text-decoration:none;display:grid}.profile-card-stats a:hover .profile-card-stat-value,.profile-card-stats a:focus-visible .profile-card-stat-value,.profile-card-stats button:hover .profile-card-stat-value,.profile-card-stats button:focus-visible .profile-card-stat-value,.profile-card-stats button[aria-expanded=true] .profile-card-stat-value{color:var(--accent)}.profile-card-stat-value{font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--fg);font-size:1.15rem;font-weight:600}.profile-card-stat-label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.profile-card-extras{gap:.45rem;margin:0;display:grid}.profile-card-extra{grid-template-columns:6.5rem minmax(0,1fr);align-items:baseline;gap:.5rem .75rem;font-size:.9rem;display:grid}.profile-card-extra dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.78rem}.profile-card-extra dd{color:var(--fg);overflow-wrap:anywhere;margin:0}.profile-card-note{color:var(--muted);margin:0;font-size:.85rem;line-height:1.45}.profile-papers{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0;padding:.85rem 0}.profile-papers-heading,.profile-card-section-heading{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0 0 .65rem;font-size:.78rem;font-weight:600}.profile-card-gh{border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0;margin:0;padding:.85rem 0}.profile-card-gh .gh-stats{max-width:none}.profile-pins{margin:0;padding:.15rem 0 0}.profile-pins-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}@media (min-width:560px){.profile-pins-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.profile-pin{border:1px solid var(--line);border-radius:var(--radius);min-width:0;height:100%;color:inherit;background:var(--bg);gap:.35rem;padding:.75rem .8rem;text-decoration:none;display:grid}@supports (color:color-mix(in lab, red, red)){.profile-pin{background:color-mix(in srgb, var(--bg) 80%, var(--line))}}.profile-pin:hover,.profile-pin:focus-visible{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.profile-pin:hover,.profile-pin:focus-visible{border-color:color-mix(in srgb, var(--accent) 45%, var(--line))}}.profile-pin:hover .profile-pin-name,.profile-pin:focus-visible .profile-pin-name{color:var(--accent)}.profile-pin-name{overflow-wrap:anywhere;font-size:.95rem;font-weight:600}.profile-pin-desc{color:var(--muted);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;font-size:.85rem;line-height:1.4;display:-webkit-box;overflow:hidden}.profile-pin-meta{color:var(--muted);flex-wrap:wrap;gap:.55rem .85rem;font-size:.75rem;display:flex}.profile-pin-lang{align-items:center;gap:.35rem;display:inline-flex}.profile-pin-swatch{border-radius:50%;flex:none;width:.65rem;height:.65rem}.profile-papers-list{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.profile-papers-list>li{gap:.45rem;min-width:0;display:grid}.profile-papers-photo{object-fit:cover;object-position:center 30%;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg);width:100%;height:auto;max-height:22rem;display:block}@supports (color:color-mix(in lab, red, red)){.profile-papers-photo{background:color-mix(in srgb, var(--bg) 70%, var(--line))}}.profile-papers-author{color:var(--fg);margin:.15rem 0 0;font-size:.95rem;font-weight:600}.profile-papers-title{color:var(--fg);overflow-wrap:break-word;font-size:1.02rem;font-weight:600;line-height:1.35}.profile-papers-list a:hover,.profile-papers-list a:focus-visible{color:var(--accent)}.profile-papers-meta{gap:.28rem;margin:.15rem 0 0;display:grid}.profile-papers-meta>div{grid-template-columns:7.25rem minmax(0,1fr);align-items:baseline;gap:.5rem .75rem;display:grid}.profile-papers-meta dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.72rem}.profile-papers-meta dd{color:var(--fg);overflow-wrap:break-word;margin:0;font-size:.9rem;line-height:1.4}.profile-papers-summary,.profile-papers-href,.profile-papers-symposium{color:var(--muted);margin:0;font-size:.85rem;line-height:1.45}.profile-papers-summary{color:var(--fg)}.profile-papers-href a,.profile-papers-symposium a{overflow-wrap:anywhere;font-weight:500}.profile-papers-symposium{border-top:1px solid var(--line);margin:.85rem 0 0;padding-top:.75rem}.profile-card.is-loading .profile-card-name{color:var(--muted)}.years{color:var(--muted);margin:0 0 .35rem;font-size:.85rem}.project-stars{color:var(--muted);margin:-.15rem 0 .35rem;font-size:.85rem}.blurb{margin:0 0 .45rem;font-size:.98rem}.more{margin:0;font-size:.9rem}.github-profile-link{margin:0 0 .85rem}.crumb{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:.35rem .45rem;margin:0 0 1.25rem;font-size:.9rem;display:flex}.crumb a{color:var(--accent)}.crumb-home{font-weight:600}.crumb-sep{color:var(--line);-webkit-user-select:none;user-select:none}.crumb [aria-current=page]{color:var(--fg)}.project-home{margin:2.5rem 0 0;font-size:.95rem}.project-home a{font-weight:600}.project-detail{width:100%}.project-detail h1{letter-spacing:-.02em;width:auto;max-width:100%;margin:0 0 .35rem;font-size:clamp(1.6rem,4vw,2.1rem);font-weight:600}.project-detail .years{width:auto;max-width:100%}.project-body{width:100%;max-width:none;color:var(--fg);gap:.9rem;margin:1.25rem 0;display:grid}@supports (color:color-mix(in lab, red, red)){.project-body{color:color-mix(in srgb, var(--fg) 92%, var(--muted))}}.project-body{font-kerning:normal;font-feature-settings:"kern" 1, "liga" 1, "calt" 1}.project-body p{margin:0}.project-body a{color:var(--accent)}.project-body ul,.project-body ol{text-align:start;text-align-last:start;-webkit-hyphens:none;hyphens:none;margin:0;padding-left:1.2rem}.project-body li{text-align:start;text-align-last:start}.project-body code{-webkit-hyphens:none;hyphens:none;font-size:.92em}.links,.site-links{flex-wrap:wrap;gap:.65rem 1.15rem;margin:0;padding:0;font-size:.92rem;list-style:none;display:flex}.github-graph-panel{--github-graph-min:37.5rem;--github-graph-fade:var(--bg);--github-graph-fade-shadow:var(--fg)}@supports (color:color-mix(in lab, red, red)){.github-graph-panel{--github-graph-fade-shadow:color-mix(in srgb, var(--fg) 16%, transparent)}}.github-graph-panel{margin:0 0 1.25rem}@media (prefers-color-scheme:dark){.github-graph-panel{--github-graph-fade-shadow:#00000080}}.github-graph-toolbar{margin:0 0 .55rem;font-size:.95rem}.github-graph-toggle{align-items:center;gap:.35rem;display:inline-flex}.github-graph-scroll-wrap{border-radius:var(--radius);position:relative}.github-graph-scroll-wrap[data-mode=scroll][data-fade-left="1"]:before,.github-graph-scroll-wrap[data-mode=scroll][data-fade-right="1"]:after{content:"";pointer-events:none;z-index:2;width:2.25rem;position:absolute;top:0;bottom:0}.github-graph-scroll-wrap[data-mode=scroll][data-fade-left="1"]:before{border-radius:var(--radius) 0 0 var(--radius);background:linear-gradient(to right, var(--github-graph-fade) 0%, var(--github-graph-fade) 48%, var(--github-graph-fade) 100%);left:0}@supports (color:color-mix(in lab, red, red)){.github-graph-scroll-wrap[data-mode=scroll][data-fade-left="1"]:before{background:linear-gradient(to right, var(--github-graph-fade) 0%, color-mix(in srgb, var(--github-graph-fade) 75%, transparent) 48%, color-mix(in srgb, var(--github-graph-fade) 0%, transparent) 100%)}}.github-graph-scroll-wrap[data-mode=scroll][data-fade-left="1"]:before{box-shadow:inset 16px 0 20px -12px var(--github-graph-fade-shadow)}.github-graph-scroll-wrap[data-mode=scroll][data-fade-right="1"]:after{border-radius:0 var(--radius) var(--radius) 0;background:linear-gradient(to left, var(--github-graph-fade) 0%, var(--github-graph-fade) 48%, var(--github-graph-fade) 100%);right:0}@supports (color:color-mix(in lab, red, red)){.github-graph-scroll-wrap[data-mode=scroll][data-fade-right="1"]:after{background:linear-gradient(to left, var(--github-graph-fade) 0%, color-mix(in srgb, var(--github-graph-fade) 75%, transparent) 48%, color-mix(in srgb, var(--github-graph-fade) 0%, transparent) 100%)}}.github-graph-scroll-wrap[data-mode=scroll][data-fade-right="1"]:after{box-shadow:inset -16px 0 20px -12px var(--github-graph-fade-shadow)}.github-graph-scroller{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;border-radius:var(--radius);scrollbar-width:thin;width:100%;padding-bottom:.25rem;overflow:auto hidden}.github-graph-scroll-wrap[data-mode=fit] .github-graph-scroller{padding-bottom:0;overflow-x:hidden}.github-graph-link{border-radius:var(--radius);display:block}.github-graph{height:auto;width:max(100%, var(--github-graph-min));display:block}.github-graph-scroll-wrap[data-mode=fit] .github-graph{width:100%;max-width:100%}.contrib-graph{--contrib-fg:#141816;--contrib-muted:#5a635e;--contrib-band:#f3f6f4;--contrib-l0:#dfe8e3;--contrib-l1:#a8d5c4;--contrib-l2:#6fbfa4;--contrib-l3:#3d9a7c;--contrib-l4:#1f6f5b}@media (prefers-color-scheme:dark){.contrib-graph{--contrib-fg:#e6ebe8;--contrib-muted:#8f9a94;--contrib-band:#121815;--contrib-l0:#1a2420;--contrib-l1:#1f4a3c;--contrib-l2:#2f7a62;--contrib-l3:#4ea888;--contrib-l4:#6fbfa4}}.contrib-year-label{font:600 14px var(--font);fill:var(--contrib-fg)}.contrib-year-count,.contrib-month,.contrib-weekday,.contrib-caption{font:11px var(--font);fill:var(--contrib-muted)}.contrib-month,.contrib-weekday{font-size:10px}.contrib-band{fill:var(--contrib-band)}.contrib-day.l0{fill:var(--contrib-l0)}.contrib-day.l1{fill:var(--contrib-l1)}.contrib-day.l2{fill:var(--contrib-l2)}.contrib-day.l3{fill:var(--contrib-l3)}.contrib-day.l4{fill:var(--contrib-l4)}.gh-stats{gap:1.25rem;min-width:0;max-width:48rem;display:grid}.gh-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}@media (min-width:560px){.gh-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}.gh-metric{border:1px solid var(--line);border-radius:var(--radius);background:var(--accent-soft);padding:.85rem .95rem}@supports (color:color-mix(in lab, red, red)){.gh-metric{background:color-mix(in srgb, var(--accent-soft) 55%, var(--bg))}}.gh-metric-value{letter-spacing:-.02em;color:var(--fg);font-variant-numeric:tabular-nums;margin:0;font-size:1.25rem;font-weight:700;line-height:1.2}.gh-metric-label{letter-spacing:normal;text-transform:none;color:var(--muted);margin:.35rem 0 0;font-size:1rem;line-height:1.35}.gh-streak-row{grid-template-columns:1fr;gap:.75rem;display:grid}@media (min-width:560px){.gh-streak-row{grid-template-columns:repeat(3,minmax(0,1fr))}}.gh-streak-metric .gh-metric-value{font-size:1.25rem}.gh-streak-metric .gh-unit{letter-spacing:normal;font-size:1rem;font-weight:500}.gh-unit{color:var(--muted);font-size:1rem;font-weight:400}.gh-block{border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.05rem 1.1rem}.gh-langs-block{width:100%}.gh-block-title{letter-spacing:normal;text-transform:none;color:var(--muted);margin:0 0 .75rem;font-size:1rem;font-weight:600}.gh-pie-layout{place-items:center;gap:1.25rem;display:grid}@media (min-width:560px){.gh-pie-layout{grid-template-columns:auto 1fr;justify-items:start;gap:1.75rem}}.gh-pie{width:11rem;max-width:100%;height:11rem;display:block}.gh-pie-legend{gap:.45rem;width:100%;margin:0;padding:0;list-style:none;display:grid}.gh-pie-legend li{grid-template-columns:.7rem minmax(0,1fr) auto;align-items:center;gap:.55rem;font-size:1rem;display:grid}.gh-pie-swatch{border-radius:2px;width:.7rem;height:.7rem}.gh-lang-name{color:var(--fg)}.gh-lang-pct{color:var(--muted);font-variant-numeric:tabular-nums}.gh-footnote{color:var(--muted);margin:.85rem 0 0;font-size:1rem}.carousel-block{gap:.55rem;width:100%;margin:1rem 0 0;display:grid}.carousel{justify-items:center;width:100%;display:grid}.carousel-frame{--carousel-h:min(70vh, 34rem);--aw:4;--ah:3;box-sizing:border-box;width:min(100%, calc(var(--carousel-h) * var(--aw) / var(--ah)));max-width:100%;aspect-ratio:var(--aw) / var(--ah);max-height:var(--carousel-h);border-radius:var(--radius);border:1px solid var(--line);background:var(--bg);margin-inline:auto;position:relative}@supports (color:color-mix(in lab, red, red)){.carousel-frame{background:color-mix(in srgb, var(--bg) 82%, var(--line))}}.carousel-frame{overflow:hidden}.carousel-track{scroll-snap-type:x mandatory;scroll-behavior:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:pan-x pan-y;outline:none;display:flex;position:absolute;inset:0;overflow:auto hidden}.carousel-track::-webkit-scrollbar{display:none}.carousel-slide{scroll-snap-align:center;scroll-snap-stop:always;flex:0 0 100%;place-items:center;width:100%;min-width:0;height:100%;min-height:0;display:grid;position:relative;overflow:hidden}.carousel-img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none;pointer-events:none;object-fit:contain!important;object-position:center!important;width:100%!important;max-width:100%!important;height:100%!important;max-height:100%!important}.carousel-block>.ctrl-row{z-index:2;margin-top:.15rem;position:relative}.carousel-block .ctrl-meta{flex:none;min-width:4rem}.player{border:1px solid var(--line);border-radius:var(--radius);gap:.65rem;margin-top:1rem;padding:.9rem;display:grid}.player-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.player-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.72rem;font-weight:600}.player-cover{object-fit:cover;border:1px solid var(--line);border-radius:4px;width:3rem;height:3rem}.player-now{margin:0;font-size:.95rem;font-weight:600}.player-seek{width:100%}.player-tracks{gap:.25rem;max-height:11rem;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.player-tracks button{text-align:left;width:100%;font:inherit;color:var(--muted);cursor:pointer;border-radius:var(--radius);text-underline-offset:.15em;background:0 0;border:none;padding:.3rem .15rem;font-size:.9rem}.player-tracks button:hover:not(:disabled){color:var(--accent);text-decoration:underline}.player-tracks button.active{color:var(--fg);background:var(--accent-soft);font-weight:500;text-decoration:none}.player-tracks button:disabled{opacity:.5;cursor:not-allowed}.player .err{color:var(--danger);margin:0;font-size:.85rem}.contact{gap:.85rem;display:grid}.contact-field{color:var(--muted);gap:.3rem;font-size:.85rem;display:grid}.contact-check{color:var(--fg);align-items:center;gap:.5rem;font-size:.85rem;display:flex}.contact-check input{accent-color:var(--accent);flex:none;margin:0}.contact-check label{margin:0;line-height:1.25}.contact input,.contact textarea{font:inherit;color:var(--fg);border:1px solid var(--line);border-radius:var(--radius);background:0 0;padding:.65rem .75rem}.contact input[type=checkbox]{border:1px solid var(--line);width:1rem;height:1rem;accent-color:var(--accent);padding:0}.contact textarea{resize:none;box-sizing:border-box;width:100%;min-height:0;max-height:none;overflow-y:auto}.contact-message{display:grid;position:relative}.contact-resize{z-index:1;border-radius:0 0 var(--radius) 0;background:linear-gradient(135deg, transparent 0 45%, var(--muted) 45% 52%, transparent 52% 62%, var(--muted) 62% 69%, transparent 69% 79%, var(--muted) 79% 86%, transparent 86% 100%);border:none;width:.95rem;height:.95rem;padding:0;position:absolute;bottom:.15rem;right:.2rem}@supports (color:color-mix(in lab, red, red)){.contact-resize{background:linear-gradient(135deg, transparent 0 45%, color-mix(in srgb, var(--muted) 55%, transparent) 45% 52%, transparent 52% 62%, color-mix(in srgb, var(--muted) 55%, transparent) 62% 69%, transparent 69% 79%, color-mix(in srgb, var(--muted) 55%, transparent) 79% 86%, transparent 86% 100%)}}.contact-resize{color:#0000;touch-action:none;-webkit-user-select:none;user-select:none;cursor:nwse-resize;font-size:0;line-height:0}.contact-resize:hover,.contact-resize:focus-visible{background:linear-gradient(135deg, transparent 0 45%, var(--muted) 45% 52%, transparent 52% 62%, var(--muted) 62% 69%, transparent 69% 79%, var(--muted) 79% 86%, transparent 86% 100%);outline:none}.contact-resize:disabled{cursor:wait;opacity:.5}.contact-message[data-resize=min] .contact-resize{cursor:se-resize}.contact-message[data-resize=max] .contact-resize{cursor:nw-resize}.contact-meta{color:var(--muted);justify-self:end;font-size:.78rem}.contact-meta.is-near,.contact-meta.is-under{color:var(--fg)}.contact-meta.is-over{color:var(--danger)}.contact input:focus,.contact textarea:focus{outline:2px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.contact input:focus,.contact textarea:focus{outline:2px solid color-mix(in srgb, var(--accent) 50%, transparent)}}.contact input:focus,.contact textarea:focus{outline-offset:1px;border-color:var(--accent)}.contact button[type=submit]{justify-self:start;margin-top:.15rem;font-weight:500}.contact button[type=submit]:disabled{opacity:.55;cursor:wait}.contact .ok{color:var(--ok);margin:0;font-size:.9rem}.contact .err{color:var(--danger);margin:0;font-size:.9rem}.footer{color:var(--muted);margin-top:3rem;font-size:.85rem}.footer-rule{border:0;border-top:1px solid var(--line);pointer-events:none;-webkit-user-select:none;user-select:none;margin:0 0 1.25rem}.footer p{margin:0}.footer-stack{margin-top:.35rem}.resume-head h1{letter-spacing:-.02em;margin:0 0 .35rem;font-size:clamp(1.75rem,4vw,2.4rem);font-weight:600}.resume-contact{color:var(--muted);margin:0 0 .75rem;font-size:.92rem}.resume-actions{margin:0 0 1.25rem;font-size:.92rem}.resume-summary{max-width:none;margin-bottom:.5rem}@page{size:letter;margin:.45in}@media print{:is(body,body:has(.split-shell)){color:#000;background:#fff;overflow:visible}.wrap{width:100%;max-width:none;margin:0;padding:0}.no-print,.crumb,.split-main,.hire-bar-host,.hire-group-fly,.footer.site-chrome-foot,.project-home{display:none!important}.split-shell,.split-detail{border:none!important;width:100%!important;height:auto!important;max-height:none!important;display:block!important;overflow:visible!important}.split-shell .wrap{width:100%}.section-anchor:hover:after{content:none}a{color:inherit;text-decoration:none}.resume-page{color:#000;font-size:9.5pt;line-height:1.28}.resume-page .resume-head h1{margin:0 0 .1rem;font-size:16pt}.resume-page .role{margin:0 0 .2rem;font-size:9.5pt}.resume-page .resume-contact{color:#000;margin:0 0 .45rem;font-size:9pt}.resume-page .resume-summary,.resume-page .about{color:#000;max-width:none;margin:0 0 .35rem;font-size:9.5pt}.resume-page .section{margin:.65rem 0 0}.resume-page .section-head{margin:0 0 .35rem;padding:0 0 .2rem}.resume-page .section-head>h2,.resume-page .section>h2{letter-spacing:.1em;font-size:8pt}.resume-page .resume-list{gap:.45rem}.resume-page .resume-entry h3{font-size:10pt}.resume-page .resume-entry .when,.resume-page .resume-meta{color:#000;margin:.05rem 0 0;font-size:9pt}.resume-page .resume-bullets{gap:.1rem;margin:.15rem 0 0}.resume-page .resume-bullets li{padding-left:.75rem;font-size:9.25pt}.resume-page .resume-skills{gap:.15rem;display:grid}.resume-page .resume-skills p{margin:0;font-size:9.25pt}}@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}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2e4y-bhazgt_v.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.3o0_l_yqebdng.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.2mglm451ism6l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.3bjsqkuy1d2v8.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0xluf1kzv7x5w.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.45487z7p3r8wm.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2e4y-bhazgt_v.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.3o0_l_yqebdng.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.2mglm451ism6l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.3bjsqkuy1d2v8.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0xluf1kzv7x5w.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.45487z7p3r8wm.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2e4y-bhazgt_v.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.3o0_l_yqebdng.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.2mglm451ism6l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.3bjsqkuy1d2v8.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0xluf1kzv7x5w.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.45487z7p3r8wm.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2e4y-bhazgt_v.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.3o0_l_yqebdng.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.2mglm451ism6l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.3bjsqkuy1d2v8.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0xluf1kzv7x5w.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.45487z7p3r8wm.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_8eb64ec4-module__uzTL2q__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.ibm_plex_sans_8eb64ec4-module__uzTL2q__variable{--font-body:"IBM Plex Sans", "IBM Plex Sans Fallback"}
