@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#fff;--surface:#f3f5f8;--text:#18232e;--secondary:#445468;--muted:#596779;--accent:#1958a6;--accent-hover:#103f7c;--line:#d5dce5;--control-border:#7b8799;--button:#183b63;--button-hover:#102c4d;--button-text:#fff;--danger:#ad273c;--sans:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", "SFMono-Regular", Consolas, monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#151c24;--surface:#1d2834;--text:#eef2f7;--secondary:#c0cbd9;--muted:#a4b3c5;--accent:#92c2ff;--accent-hover:#c2ddff;--line:#3c4c60;--control-border:#70829a;--button:#acd0ff;--button-hover:#d2e6ff;--button-text:#14283f;--danger:#ffa5b0}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#151c24;--surface:#1d2834;--text:#eef2f7;--secondary:#c0cbd9;--muted:#a4b3c5;--accent:#92c2ff;--accent-hover:#c2ddff;--line:#3c4c60;--control-border:#70829a;--button:#acd0ff;--button-hover:#d2e6ff;--button-text:#14283f;--danger:#ffa5b0}*,:before,:after{box-sizing:border-box}html{background:var(--background);-webkit-text-size-adjust:100%;scroll-padding-top:2rem}body{background:var(--background);color:var(--text);font:1.0625rem/1.65 var(--sans);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.2}h1{letter-spacing:-.04em;font-size:clamp(2.8rem,6vw,4.1rem)}h2{letter-spacing:-.015em;font-size:1.4rem}h3{font-size:1.25rem}a{color:var(--accent);text-underline-offset:.22em;text-decoration-thickness:1px}a:hover{color:var(--accent-hover)}button,input,select,textarea{font:inherit}button,select,.btn{touch-action:manipulation}button,input,select,textarea,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}::selection{background:var(--button);color:var(--button-text)}.skip-link{z-index:5;background:var(--background);padding:.6rem 1rem;position:absolute;top:-6rem;left:1rem}.skip-link:focus{top:1rem}.shell{flex-direction:column;max-width:980px;min-height:100vh;margin:auto;padding:2rem 2.5rem;display:flex}.site-main{flex:1}.site-header{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:2rem;padding-bottom:1.6rem;display:flex}.wordmark{font:500 1.2rem var(--mono);color:var(--text);margin-right:auto;text-decoration:none}.dot{color:var(--accent)}.site-nav{flex-wrap:wrap;align-items:center;gap:1.4rem;display:flex}.site-nav a{color:var(--secondary);padding:.45rem 0;font-size:.9375rem;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--accent);text-decoration:underline}.theme-toggle{width:40px;height:40px;color:var(--secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.theme-toggle:hover{color:var(--text);background:var(--surface);border-color:var(--line)}.theme-toggle svg{fill:currentColor;width:1.1rem;height:1.1rem}.theme-icon-dark,:root[data-theme=dark] .theme-icon-light{display:none}:root[data-theme=dark] .theme-icon-dark{display:block}.hero{justify-content:space-between;align-items:center;gap:2rem;padding-top:3.5rem;display:flex}.hero-id{min-width:0}.eyebrow{color:var(--muted);margin-bottom:.8rem;font-size:.875rem}.role{color:var(--secondary);margin-top:.85rem;font-size:clamp(1.1rem,2.4vw,1.4rem)}.location{color:var(--muted);margin-top:.6rem;font-size:.9375rem}.portrait{object-fit:cover;border:1px solid var(--line);border-radius:50%;flex:none;width:128px;height:128px}.intro{max-width:65ch;margin-top:2rem}.lead{color:var(--secondary);font-size:1.2rem;line-height:1.6}.work-section,.community-section{margin-top:3.4rem}.section-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.65rem;padding-bottom:1.2rem;display:flex}.section-heading p{color:var(--muted);font-size:.875rem}.project{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:2.5rem;padding:1.8rem 0;display:grid}.project-type{color:var(--muted);margin-top:.7rem;font-size:.875rem}.project-copy{color:var(--secondary)}.project-copy p+p{margin-top:1rem}.more-projects{border-top:1px solid var(--line)}.more-projects>summary{width:fit-content;min-height:44px;color:var(--accent);cursor:pointer;text-underline-offset:.22em;align-items:center;gap:.6rem;padding:.8rem 0;font-size:.9375rem;list-style:none;display:flex}.more-projects>summary::-webkit-details-marker{display:none}.more-projects>summary:hover{color:var(--accent-hover);text-decoration:underline}.more-projects>summary svg{fill:none;stroke:currentColor;stroke-width:1.5px;width:1rem;height:1rem}.more-projects .when-open,.more-projects[open] .when-closed{display:none}.more-projects[open] .when-open{display:inline}.more-projects[open]>summary svg{transform:rotate(180deg)}.about-section{border:1px solid var(--line);background:var(--surface);border-radius:6px;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:2.5rem;margin-top:3rem;padding:2rem;display:grid}.about-copy{color:var(--secondary)}.about-copy p+p{margin-top:1rem}.contact-section{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin-top:3rem;padding-top:2rem;display:flex}.contact-section h2{font-size:1.25rem}.contact-section p{color:var(--muted);margin-top:.5rem}.btn{min-height:44px;color:var(--button-text);background:var(--button);border:1px solid var(--button);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;padding:.75rem 1.2rem;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{color:var(--button-text);background:var(--button-hover)}.btn:disabled{opacity:.6;cursor:wait}.site-footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:3.5rem;padding-top:1.25rem;font-size:.875rem;display:flex}.site-footer a{color:var(--muted)}.footer-links{flex-wrap:wrap;gap:1.25rem;display:flex}.contact-intro{max-width:60ch;margin-top:3.5rem}.contact-intro h1{font-size:clamp(2.2rem,5vw,3.2rem)}.contact-intro .lead{margin-top:1rem}.panel{max-width:720px;margin-top:2rem}.contact-form{gap:1.4rem;display:grid}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.field{gap:.45rem;min-width:0;display:grid}.field label{font-size:.9375rem;font-weight:500}.req{color:var(--muted);margin-left:.2rem}.field input,.field textarea{width:100%;min-width:0;color:var(--text);background:var(--surface);border:1px solid var(--control-border);border-radius:4px;padding:.65rem .8rem}.field textarea{resize:vertical;min-height:180px}.field input::placeholder,.field textarea::placeholder{color:var(--muted)}.attachment-shell{background:var(--surface);border:1px solid var(--line);border-radius:4px;gap:.6rem;padding:1rem;display:grid}.attachment-picker{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.attachment-input{clip:rect(0, 0, 0, 0);white-space:nowrap;height:1px;margin:-1px;position:absolute;overflow:hidden;width:1px!important;padding:0!important}.attachment-button{border:1px solid var(--control-border);cursor:pointer;border-radius:4px;padding:.5rem .75rem}.attachment-input:focus-visible+.attachment-button{outline:3px solid var(--accent);outline-offset:3px}.attachment-summary,.attachment-list{color:var(--muted);overflow-wrap:anywhere;font-size:.875rem}.honeypot-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.submit-row{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.status-text{color:var(--secondary);min-height:1.5em;font-size:.9375rem}.status-text.error{color:var(--danger)}@media (width<=680px){.shell{padding:1.5rem}.site-header{flex-wrap:nowrap;gap:.6rem 1rem}.site-nav{flex-wrap:nowrap;gap:1rem}.hero{align-items:flex-start;gap:1rem;padding-top:2.5rem}.portrait{width:80px;height:80px}.eyebrow{max-width:26ch}.project,.about-section{grid-template-columns:minmax(0,1fr);gap:.9rem}.about-section{padding:1.25rem}.project-type{margin-top:.35rem}.project{padding:1.5rem 0}.work-section,.community-section{margin-top:2.5rem}.form-row{grid-template-columns:minmax(0,1fr)}}@media (width<=390px){.hero{flex-direction:column-reverse}}@media print{:root,:root[data-theme]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#fff;--surface:#f5f5f5;--text:#111;--secondary:#333;--muted:#444;--line:#bbb;--accent:#111;--button:#111;--button-text:#fff}.shell{max-width:none;padding:0}.theme-toggle,.skip-link,.site-nav{display:none}.project{break-inside:avoid}}.studio-main{flex-direction:column;justify-content:center;padding-block:clamp(4rem,15vh,9rem);display:flex}.studio-main .eyebrow{font-family:var(--mono)}.studio-main h1{max-width:14ch}.studio-main .lead{max-width:43ch;margin-top:1.5rem}.studio-main .btn{align-self:flex-start;margin-top:2rem}.studio-label{font:.875rem var(--mono);color:var(--muted)}@media (width<=680px){.studio-main{padding-block:4rem}}
