/*! tailwindcss v4.1.18 | 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)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--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-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,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;--ease-out:cubic-bezier(0,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--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,ui-sans-serif,system-ui,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{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}.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}.block{display:block}.contents{display:contents}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.rounded{border-radius:.25rem}.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{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}@font-face{font-family:Manrope;src:url(/fonts/manrope-variable.ttf)format("truetype");font-weight:200 800;font-display:swap}:root{color:#091638;font-synthesis:none;--ink:#091638;--muted:#516079;--accent:#c83c0a;--line:#d8dce4;--soft:#f4f6f9;--space:clamp(64px,7vw,112px);--page-edge-space:clamp(48px,5vw,80px);--intro-section-gap:44px;background:#fff;font-family:Manrope,sans-serif;font-weight:400}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{min-width:320px;margin:0}::selection{color:var(--ink);background:#ffe1d3}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}input,textarea{caret-color:var(--accent)}body{scrollbar-color:#8490a4 #f5f6f8;scrollbar-width:thin}a{color:inherit;text-underline-offset:5px;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}img{max-width:100%;height:auto;display:block}figure,blockquote,p,h1,h2,h3{margin:0}p{color:var(--muted);line-height:1.7}h1,h2,h3{letter-spacing:-.035em;text-wrap:balance;font-weight:800;line-height:1.13}h2{font-size:clamp(30px,3.1vw,46px)}h3{font-size:26px}svg{flex-shrink:0}.page-width{width:min(1216px,100% - 80px);margin-inline:auto}.accent,.wordmark-dot{color:var(--accent)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--ink);color:#fff;padding:14px 20px;position:fixed;top:-100px;left:24px}.skip-link:focus{top:12px}.button{background:var(--accent);color:#fff;text-align:center;border:0;border-radius:6px;justify-content:center;align-items:center;gap:26px;min-height:52px;padding:14px 24px;font-size:14px;font-weight:700;transition:background .18s ease-out,transform .18s ease-out;display:inline-flex}.button:hover{background:#a92e05}.button:active{transform:translateY(1px)}.text-link{justify-content:space-between;align-items:center;gap:20px;min-height:44px;font-size:14px;font-weight:650;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.text-link:hover{color:var(--accent)}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:76px;display:flex}.wordmark{letter-spacing:-.035em;white-space:nowrap;font-size:26px;font-weight:800}.wordmark-initial{transition:color .18s ease-out}.wordmark:is(:hover,:focus-visible) .wordmark-initial{color:var(--signal)}.navigation{align-items:center;gap:40px;margin-left:auto;display:flex}.language-switch{border-left:1px solid var(--line);align-items:center;gap:2px;padding-left:16px;display:flex}.language-switch a{min-width:36px;min-height:44px;color:var(--muted);justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.language-switch a[aria-current=page],.language-switch a:hover{color:var(--accent);text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:2px}.navigation a{align-items:center;min-height:44px;font-size:14px;display:flex}.navigation a:hover{color:var(--accent)}.menu-toggle{display:none}.hero{padding-block:var(--page-edge-space)var(--intro-section-gap);grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:clamp(48px,8vw,130px);display:grid}.hero h1{letter-spacing:-.04em;margin-bottom:20px;font-size:clamp(54px,5.4vw,82px);line-height:1.02}.hero h1 span{color:var(--accent)}.hero-offer{color:var(--ink);letter-spacing:-.025em;font-size:clamp(20px,1.9vw,28px);font-weight:700;line-height:1.3}.hero-intro{margin-top:16px;font-size:17px;line-height:1.6}.hero-location{max-width:65ch;margin-top:14px;font-size:14px;line-height:1.65}.hero-actions{flex-wrap:wrap;align-items:center;gap:28px;margin-top:24px;display:flex}.portrait{min-width:0;padding-top:0}.portrait-image{position:relative}.portrait-badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex;position:absolute;inset:auto 16px 16px}.portrait-glass{-webkit-backdrop-filter:blur(14px)saturate(140%);backdrop-filter:blur(14px)saturate(140%);color:var(--ink);background:#ffffffd1;border:1px solid #ffffffd9;border-radius:999px;box-shadow:0 4px 14px #09163814}.portrait-experience{white-space:nowrap;flex:none;align-items:center;gap:6px;min-height:44px;padding:4px 10px;font-size:13px;font-weight:700;line-height:1.3;display:flex}.portrait-experience svg{flex-shrink:0}.portrait-experience-years{color:var(--accent)}.portrait-socials{flex-shrink:0;gap:4px;margin-left:auto;display:flex}.portrait-availability{align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:650;line-height:1.4;display:flex;position:absolute;top:16px;right:16px}.availability-dot{color:#18794e;flex-shrink:0;width:11px;height:11px;position:relative}.availability-dot:before,.availability-dot:after{content:"";background:currentColor;border-radius:50%;position:absolute}.availability-dot:before{inset:0}.availability-dot:after{inset:2px}.portrait-social-link{place-items:center;width:44px;height:44px;transition:color .18s ease-out,background-color .18s ease-out;display:grid}.portrait-social-link:is(:hover,:focus-visible){color:var(--accent);background:#fffffff5}@media (max-width:375px){.portrait-badges{gap:6px;inset-inline:12px}}.portrait-photo{aspect-ratio:4/5;object-fit:cover;object-position:center;background:#eef0f3;border-radius:16px;width:100%;height:auto}.portrait figcaption{padding-top:12px}.portrait figcaption strong{letter-spacing:-.035em;margin-bottom:4px;font-size:30px;font-weight:800;display:block}.portrait figcaption span{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:10px;line-height:1.9;display:block}.interventions{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr 1.08fr;gap:26px;padding-block:26px;display:grid}.intervention,.recent-career{--intervention-title-size:18px;--intervention-icon-size:28px;align-items:flex-start;gap:20px;display:flex}.intervention>svg,.recent-career>svg{margin-top:calc((var(--intervention-title-size)*1.13 - var(--intervention-icon-size))/2)}.recent-career{--intervention-icon-size:26px}.intervention{border-right:1px solid var(--line);padding-right:26px}.interventions h2{font-size:var(--intervention-title-size);letter-spacing:-.025em;margin-bottom:6px;font-weight:800}.service-purpose{color:var(--ink);margin-bottom:12px;font-size:15px}.intervention p:not(.service-purpose){font-size:12px;line-height:1.65}.recent-career>div{flex:1}.recent-career ol{border-left:1px solid var(--line);margin:24px 0 0;padding:0 0 0 14px;list-style:none}.recent-career li{--career-dot-left:-18px;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;font-size:11px;line-height:1.4;display:grid;position:relative}.recent-career li:last-child{margin-bottom:0}.recent-career li:before{content:"";left:var(--career-dot-left);background:var(--ink);border-radius:50%;width:7px;height:7px;position:absolute;top:3px}.recent-career li.is-current:before{left:calc(var(--career-dot-left) - 2px);background:var(--accent);width:11px;height:11px;top:1px}.recent-career li.is-current:after{content:"";left:var(--career-dot-left);background:var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;top:3px}.availability-dot:before,.recent-career li.is-current:before{opacity:.3;animation:2.4s ease-in-out infinite status-pulse}@keyframes status-pulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.12;transform:scale(1.25)}}.recent-career time{font-variant-numeric:tabular-nums;color:var(--muted)}.recent-career strong{font-size:12px;display:block}.recent-career small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.projects{padding-top:var(--intro-section-gap)}.featured-project{grid-template-columns:5fr 7fr;align-items:center;gap:28px;display:grid}.featured-copy h2{margin-bottom:14px;font-size:clamp(28px,2.25vw,35px);line-height:1.15}.featured-copy>p{max-width:58ch;font-size:15px;line-height:1.65}.featured-copy .contribution{margin-top:24px;font-size:13px}.contribution strong{color:var(--ink)}.circuit-figure{min-width:0;position:relative}.circuit-labels{justify-content:space-between;gap:12px;padding:0 22px 12px;font-size:12px;font-weight:650;display:flex}.circuit-figure img{aspect-ratio:3/2;object-fit:contain;width:100%}.circuit-figure figcaption{text-align:right;color:var(--muted);padding-top:10px;font-size:10px}.project-links{flex-wrap:wrap;gap:4px 18px;margin-top:14px;display:flex}.project-links a{min-height:44px;color:var(--ink);align-items:center;gap:5px;font-size:12px;font-weight:650;text-decoration:underline;transition:color .18s ease-out;display:inline-flex}.project-links a:is(:hover,:focus-visible),.experience-links a:is(:hover,:focus-visible),a[href^=mailto\:]:is(:hover,:focus-visible),a[href^=tel\:]:is(:hover,:focus-visible){color:var(--accent)}.section-heading{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:42px;display:flex}.section-heading>p,.section-heading>div>p{max-width:52ch;margin-top:20px;font-size:16px}.section-heading>.text-link{flex-shrink:0}.projects-heading{padding-top:var(--space);border-top:1px solid var(--line);margin-top:44px}.projects-heading>p{max-width:36ch}.other-projects{gap:24px;display:grid}.project-row{border:1px solid var(--ink);border-radius:12px;grid-template-columns:5fr 6fr;align-items:center;gap:clamp(32px,6vw,90px);padding:24px;transition:border-color .18s ease-out;display:grid}.project-row:is(:hover,:focus-within){border-color:var(--accent)}.project-image{background:var(--soft);border-radius:6px;display:block;overflow:hidden}.project-image img{aspect-ratio:16/10;object-fit:cover;width:100%}.project-body h3{margin-bottom:8px;font-size:28px}.project-purpose{color:var(--ink);margin-bottom:14px;font-size:19px;line-height:1.4}.project-body>p:not(.project-purpose){font-size:15px}.project-tags{color:var(--muted);flex-wrap:wrap;gap:8px 18px;margin:18px 0 0;padding:0;font-size:11px;list-style:none;display:flex}.project-tags li:not(:last-child):after{content:"/";color:#a6adba;margin-left:18px}.project-details summary{cursor:pointer;align-items:center;gap:12px;width:fit-content;min-height:44px;font-size:12px;font-weight:650;list-style:none;display:flex}.project-details summary::-webkit-details-marker{display:none}.project-details[open] summary svg{transform:rotate(90deg)}.project-details p{padding-top:10px;font-size:14px}.github-link{margin-top:14px}.experience-section{padding-block:var(--space)}.experience-list{margin:0;padding:0;list-style:none}.experience-entry{border-top:1px solid var(--line);grid-template-columns:1fr 2.6fr;gap:48px;padding:32px 0;display:grid}.experience-date{color:var(--muted);font-variant-numeric:tabular-nums;padding-top:6px;font-size:14px}.current-label{color:var(--accent);margin-top:8px;font-size:11px;font-weight:700;display:block}.experience-body h3{font-size:24px;line-height:1.25}.experience-role{color:var(--ink);margin-top:8px;font-size:15px}.experience-description{color:var(--muted);margin:18px 0 12px;padding-left:18px;font-size:14px;line-height:1.7;list-style:outside}.experience-description li+li{margin-top:6px}.experience-description li::marker{color:var(--signal)}.experience-description li strong{color:var(--ink);font-weight:700}.skill-badges{flex-wrap:wrap;gap:8px;margin:20px 0 16px;padding:0;list-style:none;display:flex}.skill-badges li{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:100%;color:var(--ink);overflow-wrap:anywhere;background:linear-gradient(145deg,#ffffffe6,#e5ebf5b3);border:1px solid #95a5be66;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:600;line-height:1.4;box-shadow:inset 0 1px #fffffff2}.experience-links{flex-wrap:wrap;gap:8px 22px;display:flex}.experience-links a{align-items:center;gap:5px;min-height:32px;font-size:12px;text-decoration:underline;display:inline-flex}.education{border-top:1px solid var(--line);grid-template-columns:1fr 2.6fr;gap:48px;padding-top:28px;display:grid}.education strong{font-size:17px;line-height:1.5}.education p{max-width:70ch;font-size:14px}.testimonials-section{background:var(--soft);padding-block:72px}.testimonial-layout{grid-template-columns:1fr 1.6fr;gap:80px;display:grid}.testimonial-heading h2{font-size:30px}.testimonial-controls{align-items:center;gap:18px;margin-top:32px;display:flex}.testimonial-controls button{width:48px;height:48px;color:var(--ink);background:0 0;border:1px solid #aeb8c8;border-radius:50%;place-items:center;display:grid}.testimonial-controls button:hover{background:#e4e8ee}.testimonial-controls span{font-variant-numeric:tabular-nums;font-size:12px}.quote-icon{color:var(--accent);margin-bottom:20px}.testimonial-content blockquote{letter-spacing:-.01em;font-size:19px;line-height:1.75}.quote-author{align-items:center;gap:16px;margin-top:28px;display:flex}.quote-author img{object-fit:cover;border-radius:50%;width:52px;height:52px}.quote-author strong,.quote-author span,.quote-author small{display:block}.quote-author strong{font-size:14px}.quote-author span,.quote-author small{color:var(--muted);margin-top:4px;font-size:12px}.service-areas{padding-block:var(--space);border-bottom:1px solid var(--line)}.local-presence{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:clamp(32px,6vw,80px);display:grid}.local-references>h2{margin-bottom:24px}.local-references>p{max-width:65ch}.local-references>p+p{margin-top:16px}.local-references h3{margin-top:28px;font-size:18px}.local-references ul{margin:16px 0 0;padding:0;list-style:none}.local-references .text-link{min-height:44px}.local-faq>h3{margin-bottom:24px;font-size:24px}.faq-item{border-top:1px solid var(--line)}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;min-height:56px;padding-block:16px;font-size:15px;font-weight:700;line-height:1.5;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:hover,.footer-section-links a:hover{color:var(--accent)}.faq-item summary svg{transition:transform .18s ease-out}.faq-item[open] summary svg{color:var(--accent);transform:rotate(90deg)}.faq-item p{max-width:65ch;padding:0 30px 20px 0;font-size:14px;line-height:1.7}.footer-section-links{flex-wrap:wrap;gap:8px 24px;margin-top:16px;display:flex}.footer-section-links a{align-items:center;min-height:44px;font-size:13px;text-decoration:underline;display:inline-flex}@media (max-width:700px){.local-presence{grid-template-columns:1fr;gap:32px}}.contact-section{padding-block:var(--space)var(--page-edge-space);grid-template-columns:1fr 1.15fr;gap:clamp(40px,8vw,120px);display:grid}.contact-copy>p{max-width:40ch;margin-top:24px;font-size:16px}.contact-email,.contact-phone{overflow-wrap:anywhere;align-items:center;gap:12px;min-height:44px;font-size:16px;font-weight:650;transition:color .18s ease-out;display:flex}.contact-email{margin-top:28px;font-size:clamp(13px,1.3vw,18px)}.contact-phone{font-size:14px;font-weight:500}.contact-copy .contact-location{margin-block:20px 14px;font-size:13px}.contact-location a{text-decoration:underline}.contact-location a:is(:hover,:focus-visible){color:var(--accent)}.contact-copy .text-link{font-size:12px}.contact-form{align-self:start}.form-pair{grid-template-columns:1fr 1fr;gap:20px;display:grid}.contact-form label{margin-bottom:10px;font-size:13px;font-weight:700;display:block}.contact-form input,.contact-form textarea{width:100%;color:var(--ink);background:#f6f7f9;border:1px solid #c4ccd8;border-radius:4px;padding:14px 16px;font-size:16px;line-height:1.6}.contact-form input{min-height:52px}.contact-form textarea{resize:vertical;min-height:160px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#65718a}.contact-form>label{margin-top:24px}.form-note{margin:12px 0 20px;font-size:12px;line-height:1.6}.form-note a{color:var(--accent);text-decoration:underline}.form-fallback{margin-bottom:16px;font-size:12px}.form-status{background:var(--soft);border:1px solid var(--line);border-radius:6px;margin-top:20px;padding:18px}.form-status p{font-size:13px}.form-status a{align-items:center;gap:8px;margin-top:8px;font-size:13px;text-decoration:underline;display:inline-flex}.form-status.error{background:#fff5ee;border-color:#d69d84}.form-status.success{background:#eff7f3;border-color:#94b6a6}.loading-icon{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.site-footer{border-top:1px solid var(--line);padding-block:28px 20px}.footer-top{justify-content:space-between;align-items:center;gap:30px;display:flex}.footer-top .wordmark{font-size:22px}.footer-top>p{font-size:12px}.social-links{flex-wrap:wrap;gap:8px 22px;display:flex}.social-links a{align-items:center;gap:5px;min-height:44px;font-size:12px;display:inline-flex}.social-links a:is(:hover,:focus-visible){color:var(--accent)}.footer-bottom{color:var(--muted);justify-content:space-between;align-items:center;gap:24px;margin-top:20px;display:flex}.footer-bottom small{font-size:11px}.footer-bottom>div{align-items:center;gap:26px;display:flex}.footer-bottom button,.footer-bottom a{color:var(--muted);white-space:nowrap;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:0;font-size:11px;line-height:1.4;display:inline-flex}.footer-bottom button:hover,.footer-bottom a:hover{color:var(--ink);text-decoration:underline}.legal-dialog{width:min(760px,100% - 32px);height:fit-content;max-height:min(85dvh,100dvh - 32px);color:var(--ink);background:#fff;border:0;border-radius:12px;margin:auto;padding:0;position:fixed;inset:0;overflow:hidden;box-shadow:0 20px 70px #09163830}.legal-dialog[open]{flex-direction:column;display:flex}.legal-dialog::backdrop{background:#09163880}.dialog-heading{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 28px;display:flex}.dialog-heading h2{font-size:28px}.dialog-heading button{border:1px solid var(--line);background:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.legal-content{overscroll-behavior:contain;scrollbar-width:thin;min-height:0;padding:24px 28px;overflow-y:auto}.legal-content:focus-visible{outline-offset:-4px}.dialog-actions{border-top:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:16px 28px;display:flex}.dialog-scroll-top{border:1px solid var(--ink);min-height:44px;color:var(--ink);background:#fff;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;display:inline-flex}.dialog-scroll-top:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.dialog-scroll-top:disabled{opacity:.45;cursor:default}.legal-content section+section{margin-top:24px}.legal-content h3{margin-bottom:10px;font-size:18px}.legal-content p{overflow-wrap:anywhere;margin-top:8px;font-size:14px}.legal-content a{text-decoration:underline}.legal-identifier{white-space:nowrap}@media (min-width:1440px){.hero{grid-template-columns:702px 364px;gap:130px}.hero h1{font-size:80px}.hero-offer{font-size:27px}.hero-actions{margin-top:24px}.hero{min-height:423px}}@media (max-width:1100px){.site-header,.navigation{gap:16px}.hero{grid-template-columns:1.6fr 1fr;gap:44px}.hero h1{font-size:clamp(46px,5.5vw,64px)}.hero-offer{font-size:20px}.hero-intro{font-size:15px}.desktop-break{display:none}.hero-actions{gap:14px}.hero-actions .button{gap:14px;padding-inline:16px;font-size:12px}.portrait figcaption strong{font-size:25px}.interventions{grid-template-columns:1fr 1fr;gap:20px}.recent-career{border-top:1px solid var(--line);grid-column:1/-1;padding-top:20px}.recent-career ol{border:0;gap:30px;padding:0;display:flex}.recent-career li{--career-dot-left:0px;flex:1;margin:0;padding-left:14px;display:block}.recent-career li span{margin-top:5px;display:block}.intervention:nth-child(2){border:0}.featured-project{grid-template-columns:1fr 1.2fr}.testimonial-layout{gap:40px}.footer-top{flex-wrap:wrap}}@media (max-width:900px){.site-header{gap:10px;position:relative}.language-switch{border:0;margin-left:auto;padding-left:0}.language-switch a{min-width:32px}.menu-toggle span{display:none}.wordmark{font-size:23px}.menu-toggle{min-height:44px;color:var(--ink);background:0 0;border:0;align-items:center;gap:8px;padding:0 0 0 10px;font-size:14px;display:flex}.navigation{display:none}.navigation.is-open{z-index:20;border-bottom:1px solid var(--line);background:#fff;flex-wrap:wrap;gap:20px;padding:18px 20px;display:flex;position:absolute;top:75px;left:-40px;right:-40px;box-shadow:0 14px 24px #09163812}.navigation a{font-size:15px}}@media (max-width:700px){:root{--intro-section-gap:48px}.page-width{width:calc(100% - 40px)}.navigation.is-open{left:-20px;right:-20px}.hero{grid-template-columns:1fr;gap:30px}.hero h1{letter-spacing:-.04em;margin-bottom:20px;font-size:clamp(42px,10.8vw,68px)}.hero-offer{font-size:19px;line-height:1.45}.hero-intro{margin-top:16px;font-size:15px;line-height:1.7}.hero-actions{flex-direction:column;align-items:stretch;gap:12px;margin-top:24px}.hero-actions .button{justify-content:space-between;min-height:56px;padding-inline:18px;font-size:14px}.hero-actions .text-link{align-self:flex-start;font-size:14px}.portrait figcaption{padding-top:14px}.portrait figcaption strong{font-size:25px}.portrait figcaption span{letter-spacing:.08em;font-size:9px}.interventions{padding-block:0;display:block}.intervention{--intervention-title-size:19px;border-right:0;border-bottom:1px solid var(--line);gap:18px;padding:26px 0}.intervention:nth-child(2){border-bottom:1px solid var(--line);padding-bottom:26px}.service-purpose{margin-bottom:8px;font-size:16px}.intervention p:not(.service-purpose){font-size:14px}.recent-career{border:0;gap:18px;padding:26px 0}.recent-career ol{border-left:1px solid var(--line);margin-top:24px;padding:0 0 0 14px;display:block}.recent-career li{grid-template-columns:1.1fr 1fr;gap:12px;margin-bottom:18px;padding-left:0;font-size:12px;display:grid}.recent-career li span{margin:0}.recent-career li{--career-dot-left:-18px}.recent-career strong{font-size:13px}.recent-career small{font-size:11px}.featured-project{flex-direction:column;align-items:stretch;gap:30px;display:flex}.featured-copy h2{max-width:24ch;font-size:29px}.featured-copy>p{font-size:15px}.featured-copy .contribution{margin-top:20px;font-size:13px}.project-links{gap:2px 18px}.project-links a{min-height:44px;font-size:12px}.circuit-labels{gap:5px;padding-inline:0;font-size:10px}.circuit-figure img{width:100%}.circuit-figure figcaption{font-size:10px}.section-heading{margin-bottom:28px;display:block}.section-heading>p,.section-heading>div>p{margin-top:20px;font-size:15px}.section-heading>.text-link{margin-top:20px}.projects-heading{margin-top:48px;padding-top:56px}.projects-heading h2,h2{font-size:32px}.project-row{grid-template-columns:1fr;gap:24px;padding:18px}.project-image img{aspect-ratio:16/10}.project-body h3{font-size:26px}.project-purpose{font-size:18px}.project-body>p:not(.project-purpose){font-size:14px}.project-tags{gap:6px 12px;font-size:10px}.project-tags li:not(:last-child):after{margin-left:12px}.github-link{gap:12px;font-size:12px}.experience-section{padding-block:64px}.experience-entry{grid-template-columns:1fr;gap:16px;padding-block:26px}.experience-date{justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.current-label{white-space:nowrap;margin:0}.experience-body h3{font-size:23px}.experience-role{font-size:14px}.experience-description{font-size:13px}.education{grid-template-columns:1fr;gap:14px}.education p{font-size:14px}.testimonials-section{padding-block:48px}.testimonial-layout{grid-template-columns:1fr;gap:32px}.testimonial-heading h2{font-size:29px}.testimonial-controls{margin-top:22px}.testimonial-content blockquote{font-size:17px;line-height:1.75}.quote-author span{font-size:11px}.contact-section{padding-block:64px var(--page-edge-space);grid-template-columns:1fr;gap:36px}.contact-copy h2{font-size:39px}.contact-email{font-size:14px}.contact-copy>p{font-size:15px}.form-pair{grid-template-columns:1fr;gap:22px}.contact-form .button{justify-content:space-between;width:100%}.footer-top{text-align:center;flex-direction:column;gap:10px}.footer-top>p{margin-top:0}.social-links{justify-content:center;margin-top:2px}.footer-section-links{justify-content:center}.footer-bottom{text-align:center;flex-direction:column;gap:4px;margin-top:12px}.footer-bottom>div{flex-wrap:wrap;justify-content:center;gap:4px 16px;margin-top:0}.footer-bottom button,.footer-bottom a{font-size:10px}.legal-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.dialog-heading,.legal-content{padding:20px}.dialog-actions{flex-wrap:wrap;padding:14px 20px}.dialog-heading h2{font-size:25px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}:root{--signal:#f44b0b}.hero h1 span,.accent,.wordmark-dot{color:var(--signal)}.recent-career strong,.recent-career small{line-height:1.4}@media (min-width:1440px){.hero h1{font-size:74px}.hero-offer{font-size:25px}}@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-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-ease{syntax:"*";inherits:false}
