@font-face{font-family:Fraunces;font-style:italic;font-weight:300;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.2xm1k7t3a0pcd.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:Fraunces;font-style:italic;font-weight:300;font-display:swap;src:url(../media/b887d91685b8c137-s.330vchwb4izzb.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:300;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.16u3vygyjnhr0.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:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.2xm1k7t3a0pcd.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:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(../media/b887d91685b8c137-s.330vchwb4izzb.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.16u3vygyjnhr0.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:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.2xm1k7t3a0pcd.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:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(../media/b887d91685b8c137-s.330vchwb4izzb.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.16u3vygyjnhr0.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:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.2xm1k7t3a0pcd.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:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(../media/b887d91685b8c137-s.330vchwb4izzb.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.16u3vygyjnhr0.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:Fraunces;font-style:normal;font-weight:300;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.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:Fraunces;font-style:normal;font-weight:300;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:300;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.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:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.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:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.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:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.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:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.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:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.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:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.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:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_981a49fa-module__gnqk7a__className{font-family:Fraunces,Fraunces Fallback}.fraunces_981a49fa-module__gnqk7a__variable{--font-display:"Fraunces", "Fraunces Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.0rgnxg2b64rzs.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 Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.2vemzm0itqzfy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.3cb5lpr2l6xud.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 Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1u30mmyq6lnsd.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.40sczeszzbjw1.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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.1yd4_i3e35931.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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1qc6dx89jd2qv.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.29yke99gs9qpn.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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.1i-sca43-qwng.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.0oace-s_gkfks.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 Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_3c425eb7-module__ns58QG__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_3c425eb7-module__ns58QG__variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
.site{--paper:#14140f;--paper-raised:#1c1c16;--ink:#f2efe4;--ink-soft:#b8b3a2;--ink-faint:#7c7768;--line:#33322a;--accent:#7fae90;--accent-soft:#223028;--rust:#d68b64;--rust-soft:#3a2a1f;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.55}.site[data-theme=light]{--paper:#f6f3ec;--paper-raised:#fffdf6;--ink:#1c1b17;--ink-soft:#57544a;--ink-faint:#8c887c;--line:#ddd6c4;--accent:#2f4a3c;--accent-soft:#e3e9e0;--rust:#8a4b32;--rust-soft:#f2e4d9}.site *,.site :before,.site :after{box-sizing:border-box}.site h1,.site h2,.site h3{font-family:var(--font-display), Georgia, serif;letter-spacing:-.01em;color:var(--ink);margin:0;font-weight:500}.site em{color:var(--accent);font-style:italic}.site p{color:var(--ink-soft);margin:0}.site a{color:inherit}.site .kicker{font-family:var(--font-mono), monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-size:12px;display:block}.site .container{max-width:1080px;margin:0 auto;padding:0 32px}.site-nav{z-index:20;background:color-mix(in srgb, var(--paper) 92%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);position:sticky;top:0}.site-nav__row{justify-content:space-between;align-items:center;gap:24px;max-width:1080px;margin:0 auto;padding:18px 32px;display:flex;position:relative}.site-nav__mark{font-family:var(--font-display), Georgia, serif;letter-spacing:-.01em;color:var(--ink);white-space:nowrap;align-items:center;gap:10px;font-size:17px;font-weight:600;text-decoration:none;display:flex}.site-nav__monogram{background:var(--ink);width:28px;height:28px;color:var(--paper);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-family:Georgia,serif;font-size:14px;font-style:italic;display:inline-flex}.site-nav__links{align-items:center;gap:28px;margin:0 auto 0 0;padding:0;list-style:none;display:flex}.site-nav__links a{color:var(--ink-soft);border-bottom:1px solid #0000;padding-bottom:2px;font-size:14px;text-decoration:none;transition:border-color .15s,color .15s}.site-nav__links a:hover{color:var(--ink);border-color:var(--ink-faint)}.site-nav__links a[aria-current=page]{color:var(--ink);border-color:var(--ink)}@media (max-width:480px){.site-nav__row{gap:12px;padding:14px 16px}.site-nav__name{display:none}.site-nav__links{gap:12px}.site-nav__links a{font-size:12px}.theme-toggle{width:28px;height:28px;font-size:13px}}.theme-toggle{border:1px solid var(--line);background:var(--paper-raised);width:34px;height:34px;color:var(--ink);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;line-height:1;transition:border-color .15s,color .15s;display:inline-flex}.theme-toggle:hover{border-color:var(--ink-faint)}.site-section{border-top:1px solid var(--line);max-width:1080px;margin:0 auto;padding:56px 0}.site-section:first-of-type{border-top:none}.site-section h2{margin-bottom:20px;font-size:28px}.site-section__intro{max-width:58ch;margin-bottom:24px}@media (max-width:760px){.site-section{padding:56px 0}}.site-hero{max-width:1080px;margin:0 auto;padding:72px 32px 48px}.site-hero h1{max-width:15ch;margin:18px 0 28px;font-size:clamp(38px,6vw,62px);line-height:1.08}.site-hero__sub{max-width:46ch;margin-bottom:40px;font-size:18px}.site-hero--wide h1{max-width:20ch}.site-hero--wide .site-hero__sub{max-width:58ch}.site-hero--sentence h1{max-width:52ch;font-size:clamp(26px,3.4vw,38px);line-height:1.3}.site-hero__ctas{flex-wrap:wrap;align-items:center;gap:28px;display:flex}.site-btn{background:var(--accent);color:var(--paper-raised);border:1px solid var(--accent);border-radius:2px;align-items:center;gap:8px;padding:13px 22px;font-size:15px;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.site-btn:hover{color:var(--accent);background:0 0}button.site-btn{cursor:pointer;font-family:inherit}button.site-btn:disabled{opacity:.55;cursor:not-allowed}button.site-btn:disabled:hover{background:var(--accent);color:var(--paper-raised)}.site-link{color:var(--ink-soft);border-bottom:1px solid var(--ink-faint);padding-bottom:1px;font-size:15px;text-decoration:none;transition:color .15s,border-color .15s}.site-link:hover{color:var(--ink);border-color:var(--ink)}button.site-link{border:none;border-bottom:1px solid var(--ink-faint);cursor:pointer;background:0 0;padding:0 0 1px;font-family:inherit}button.site-link:hover{border-color:var(--ink)}.site-thesis p{color:var(--ink);max-width:60ch;font-size:19px;line-height:1.7}.site-thesis p+p{margin-top:20px}.site-points{flex-direction:column;gap:36px;display:flex}.site-point__title{font-family:var(--font-display), Georgia, serif;margin-bottom:8px;font-size:21px;font-weight:500}.site-point p{max-width:58ch;font-size:15.5px}.site-status{color:var(--ink-soft);font-size:15px}.site-teasers{grid-template-columns:repeat(2,1fr);gap:32px;display:grid}@media (max-width:760px){.site-teasers{grid-template-columns:1fr;gap:24px}}.site-teaser-sm{border-top:1px solid var(--line);padding-top:18px}.site-teaser-sm h3{margin-bottom:8px;font-size:20px}.site-teaser-sm p{max-width:40ch;margin-bottom:16px;font-size:15px}.contact-form{max-width:560px}.contact-form__field{margin-bottom:18px}.contact-form label{font-family:var(--font-mono), monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:6px;font-size:12px;display:block}.contact-form input,.contact-form textarea{background:var(--paper-raised);border:1px solid var(--line);width:100%;color:var(--ink);border-radius:2px;padding:11px 12px;font-family:inherit;font-size:15px;line-height:1.5}.contact-form textarea{resize:vertical;min-height:150px}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent);outline:none}.contact-form input:disabled,.contact-form textarea:disabled{opacity:.6}.contact-form__hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.contact-form__status{max-width:52ch;margin-top:16px;font-size:15px}.contact-form__status--error{color:var(--rust)}.contact-alt{color:var(--ink-faint);max-width:56ch;margin-top:24px;font-size:15px}.site-about p{max-width:58ch;font-size:16.5px}.site-about p+p{margin-top:16px}.about-page{max-width:760px;margin:0 auto;padding:0 32px 96px}.about-head{padding:88px 0 28px}.about-head h1{max-width:20ch;margin-top:16px;font-size:clamp(30px,5vw,44px);line-height:1.15}.about-body p{color:var(--ink);max-width:66ch;font-size:17.5px;line-height:1.72}.about-body p+p{margin-top:18px}.about-body h2{margin:40px 0 14px;font-size:21px}.about-industries{margin:22px 0 0;padding:0;list-style:none}.about-industries li{border-top:1px solid var(--line);padding:16px 0}.about-industries li:last-child{border-bottom:1px solid var(--line)}.about-industries__name{font-family:var(--font-display), Georgia, serif;color:var(--ink);margin-bottom:5px;font-size:18px;font-weight:500}.about-industries p{color:var(--ink-soft);max-width:64ch;font-size:16px;line-height:1.62}.site-footer{border-top:1px solid var(--line);padding:32px 0 40px}.site-footer__inner{flex-direction:column;gap:32px;max-width:1080px;margin:0 auto;padding:0 32px;display:flex}.site-footer__inner>p{color:var(--ink-faint);font-size:13px}.site-contact{flex-direction:column;align-items:flex-start;gap:16px;display:flex}.site-contact .kicker{margin-bottom:-6px}.site-contact>a{font-size:16px}.site-contact .contact-form{width:100%}.resume-page{max-width:1080px;margin:0 auto;padding:0 32px 56px}.resume-head{padding:72px 0 8px}.resume-head h1{margin:14px 0 18px;font-size:clamp(32px,5vw,46px)}.resume-head p{max-width:64ch;font-size:17px}.resume-contact{font-family:var(--font-mono), monospace;color:var(--ink-soft);flex-wrap:wrap;gap:20px;margin-top:20px;font-size:13px;display:flex}.resume-contact a{border-bottom:1px solid var(--ink-faint);text-decoration:none}.resume-block{border-top:1px solid var(--line);padding:24px 0}.resume-block>h2{font-family:var(--font-mono), monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:24px;font-size:12px;font-weight:400}.resume-role{grid-template-columns:150px 1fr;gap:28px;margin-bottom:20px;display:grid}.resume-role:last-child{margin-bottom:0}@media (max-width:700px){.resume-role{grid-template-columns:1fr;gap:4px;margin-bottom:32px}}.resume-role__when{font-family:var(--font-mono), monospace;color:var(--ink-faint);padding-top:5px;font-size:13px}.resume-role__title{font-family:var(--font-display), Georgia, serif;color:var(--ink);font-size:20px;line-height:1.3}.resume-role ul{margin:0;padding-left:18px}.resume-role li{color:var(--ink-soft);max-width:64ch;margin-bottom:7px;font-size:15px;line-height:1.55}.resume-cols{grid-template-columns:repeat(2,1fr);gap:8px 32px;display:grid}@media (max-width:700px){.resume-cols{grid-template-columns:1fr}}.resume-cols ul{margin:0;padding-left:18px}.resume-cols li{color:var(--ink-soft);margin-bottom:7px;font-size:15px;line-height:1.55}.home-hero{flex-direction:column;align-items:flex-start;gap:20px;max-width:1080px;margin:0 auto;padding:72px 32px 28px;display:flex}.home-hero h1{margin-bottom:6px;font-size:clamp(30px,5vw,42px)}.home-hero .kicker{margin-bottom:22px}.home-hero p{max-width:58ch}.home-hero__portrait{flex-shrink:0}.home-hero__headshot{object-fit:cover;border-radius:8px;display:block}@media (max-width:640px){.home-hero{padding:56px 32px 20px}}.home-body{max-width:1080px;margin:0 auto;padding:0 32px 40px}.home-body p{max-width:66ch;font-size:16.5px;line-height:1.6}.home-body p+p{margin-top:14px}.home-body strong{font-weight:600}@media (max-width:760px){.home-body{padding:0 32px 28px}}.expertise-page{max-width:1080px;margin:0 auto;padding:0 32px 56px}.expertise-head{padding:72px 0 24px}.expertise-head h1{max-width:22ch;margin:14px 0 20px;font-size:clamp(28px,5vw,40px);line-height:1.2}.expertise-head p{max-width:68ch;font-size:17px;line-height:1.7}.click-selector{border-top:1px solid var(--line);grid-template-columns:220px 1fr;align-items:start;gap:32px;margin-bottom:28px;padding:20px 0;display:grid}@media (max-width:700px){.click-selector{grid-template-columns:1fr}}.click-selector__detail{min-width:0}.click-selector__menu{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}@media (max-width:700px){.click-selector__menu{border-bottom:1px solid var(--line);flex-flow:wrap;gap:8px;padding-bottom:8px}}.click-selector__item{text-align:left;width:100%;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-left:2px solid #0000;padding:9px 0 9px 14px;font-family:inherit;font-size:14.5px;transition:color .15s,border-color .15s;display:block}@media (max-width:700px){.click-selector__item{border:1px solid var(--line);background:var(--paper-raised);border-radius:5px;width:auto;padding:7px 12px}.click-selector__item[data-active=true]{background:var(--accent-soft)}}.click-selector__item:hover{color:var(--ink)}.click-selector__item[data-active=true]{color:var(--ink);border-color:var(--accent);font-weight:500}.click-selector__detail h3{margin-bottom:12px;font-size:21px}.click-selector__detail p{max-width:64ch;font-size:15.5px;line-height:1.65}.portfolio-selector__toggle{margin-top:4px}.portfolio-selector__item{text-transform:uppercase;letter-spacing:.02em}.portfolio-selector__expanded{margin-top:24px}.portfolio-selector__expanded .site-points{margin-top:32px}.expertise-approach{margin-bottom:28px}.expertise-approach p{max-width:66ch;font-size:16.5px;line-height:1.7}.expertise-approach p+p{margin-top:16px}.expertise-industries h2,.expertise-consulting h2{margin-bottom:20px;font-size:26px}.expertise-consulting{margin-top:28px;scroll-margin-top:96px}.expertise-industries{margin-top:28px}.expertise-consulting p{max-width:66ch;font-size:16.5px;line-height:1.7}.resume-block__head{justify-content:space-between;align-items:baseline;margin-bottom:24px;display:flex}.resume-block__head h2{margin-bottom:0}.resume-expand-all{font-family:var(--font-mono), monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);border:none;border-bottom:1px solid var(--ink-faint);cursor:pointer;background:0 0;padding:0 0 2px;font-size:12px}.resume-expand-all:hover{color:var(--ink);border-color:var(--ink)}.resume-employer{border:1px solid var(--line);margin-bottom:28px;padding:28px 28px 32px}.resume-employer:last-child{margin-bottom:0}.resume-employer__head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:20px;padding-bottom:16px;display:flex}.resume-employer__name{font-family:var(--font-display), Georgia, serif;color:var(--ink);font-size:19px}.resume-employer__when{font-family:var(--font-mono), monospace;color:var(--ink-faint);font-size:12.5px}@media (max-width:700px){.resume-employer__name{font-size:16px}.resume-employer__when{font-size:10.5px}.resume-employer__head{gap:6px}}.resume-role--collapsible .resume-role__toggle{text-align:left;cursor:pointer;background:0 0;border:none;align-items:baseline;gap:10px;width:100%;margin-bottom:10px;padding:0;font-family:inherit;display:flex}.resume-role__chevron{color:var(--ink-faint);flex-shrink:0;font-size:11px;transition:transform .15s;display:inline-block;position:relative;top:3px;transform:rotate(0)}.resume-role--collapsible[data-open=true] .resume-role__chevron{transform:rotate(90deg)}.resume-role--collapsible .resume-role__title{display:block}.resume-recognition{border-top:1px solid var(--line);margin-top:8px;padding-top:24px}.resume-recognition__grid{grid-template-columns:repeat(2,1fr);gap:20px;margin-top:12px;display:grid}@media (max-width:700px){.resume-recognition__grid{grid-template-columns:1fr}}.resume-recognition__item{align-items:baseline;gap:14px;display:flex}.resume-recognition__figure{font-family:var(--font-mono), monospace;color:var(--accent);flex-shrink:0;font-size:22px}.resume-recognition__item p{color:var(--ink-soft);margin:0;font-size:14.5px}.contact-page{max-width:640px;margin:0 auto;padding:0 32px 96px}.contact-head{flex-direction:column;align-items:flex-start;gap:20px;padding:88px 0 32px;display:flex}.contact-head__headshot{object-fit:cover;border-radius:8px;display:block}.contact-head h1{margin:14px 0;font-size:clamp(28px,5vw,38px)}.contact-head p{max-width:56ch;font-size:16.5px}@media print{.site{background:#fff;min-height:0}.site-nav,.site-footer,.contact-form,.theme-toggle,.resume-expand-all{display:none}.resume-page{max-width:none;padding:0}.resume-head{padding:0 0 12px}.resume-head h1{margin:6px 0 10px;font-size:26pt}.resume-head p,.resume-role li,.resume-cols li{color:#1c1b17;font-size:10pt}.resume-block{break-inside:avoid;padding:16px 0}.resume-role{break-inside:avoid;margin-bottom:16px}.resume-role__title{font-size:13pt}.resume-role__when,.resume-contact{color:#57544a}.about-industries li{break-inside:avoid}.resume-role--collapsible ul[hidden]{display:block!important}.resume-role__chevron{display:none}.resume-role--collapsible .resume-role__toggle{cursor:default}.resume-employer{break-inside:avoid;border-color:#ddd6c4;padding:18px 20px 20px}.resume-employer__head,.resume-recognition{border-color:#ddd6c4}}.demo{background:var(--paper-raised);border:1px solid var(--line)}.demo__banner{font-family:var(--font-mono), monospace;color:var(--ink-faint);border-bottom:1px solid var(--line);letter-spacing:.02em;padding:12px 24px;font-size:12px}.demo__summary{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.demo__stat{border-right:1px solid var(--line);padding:22px 24px}.demo__stat:last-child{border-right:none}.demo__stat .kicker{margin-bottom:8px}.demo__stat .value{font-family:var(--font-mono), monospace;color:var(--ink);font-size:22px}.demo__stat-sub{color:var(--ink-faint);margin-top:4px;font-size:11.5px;display:block}.positive{color:var(--accent)}.negative{color:var(--rust)}@media (max-width:640px){.demo__summary{grid-template-columns:repeat(2,1fr)}.demo__stat:nth-child(2){border-right:none}}.demo__tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.demo__tab{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:14px 20px;font-family:inherit;font-size:14px;transition:color .15s,border-color .15s;display:flex}.demo__tab:hover{color:var(--ink)}.demo__tab[data-active=true]{color:var(--ink);border-color:var(--accent);font-weight:500}.demo__tab[data-locked]{color:var(--ink-faint)}.demo__tab-lock{font-size:11px}@media (max-width:480px){.demo__tabs{flex-wrap:nowrap}.demo__tab{white-space:nowrap;text-overflow:ellipsis;flex:1 1 0;justify-content:center;gap:3px;min-width:0;padding:10px 4px;font-size:10.5px;overflow:hidden}.demo__tab-lock{font-size:9px}}.demo__panel{min-height:280px}.demo__cats{padding:8px 24px 24px}.demo__cat{border-bottom:1px solid var(--line);grid-template-columns:24px 1fr auto;align-items:center;gap:14px;padding:16px 0;display:grid}.demo__cat:last-child{border-bottom:none}.demo__cat--budget{grid-template-columns:16px 24px 1fr auto}.demo__cat-budget-right{justify-content:flex-end;align-items:baseline;display:flex}.demo__cat-icon{font-size:16px}.demo__cat-name{color:var(--ink);font-size:14.5px}.demo__cat-bar-track{background:var(--accent-soft);height:4px;margin-top:8px;position:relative}.demo__cat-bar-fill{height:100%;position:absolute;top:0;left:0}.demo__spent{color:var(--ink-faint);margin-top:2px;font-size:12px}.demo__txs{padding:8px 24px 24px}.demo__tx{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 0;font-size:14px;display:flex}.demo__tx:last-child{border-bottom:none}.demo__tx-left{flex-direction:column;gap:4px;min-width:0;display:flex}.demo__tx-merchant{color:var(--ink);font-weight:500}.demo__tx-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.demo__tx-date{color:var(--ink-faint);font-size:12px}.demo__tx-cat-pill{color:var(--accent);border:1px solid var(--accent);border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-size:11.5px;display:inline-flex}.demo__tx-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.demo__tx-amount{font-family:var(--font-mono), monospace;color:var(--ink-soft)}.demo__tx-actions{align-items:center;gap:8px;display:flex}.demo__tx-action{color:var(--ink-faint);align-items:center;display:flex}.demo__tx-action:not(:has(svg)){filter:grayscale()brightness(.7)}.demo__networth{padding:24px}.demo__networth-total{border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:20px}.demo__networth-total .value{font-family:var(--font-mono), monospace;color:var(--ink);margin-top:6px;font-size:28px}.demo__networth-cols{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}@media (max-width:640px){.demo__networth-cols{grid-template-columns:1fr}}.demo__networth-line{border-bottom:1px solid var(--line);color:var(--ink-soft);justify-content:space-between;padding:10px 0;font-size:14px;display:flex}.demo__networth-line:last-child{border-bottom:none}.demo__locked{text-align:center;color:var(--ink-faint);flex-direction:column;align-items:center;gap:14px;padding:56px 32px;display:flex}.demo__locked-icon{font-size:22px}.demo__locked p{max-width:46ch;color:var(--ink-faint);font-size:14.5px}.demo__summary--home{grid-template-columns:repeat(5,1fr)}@media (max-width:760px){.demo__summary--home{grid-template-columns:repeat(2,1fr)}.demo__summary--home .demo__stat:nth-child(2){border-right:1px solid var(--line)}}.demo__day-banner{border-bottom:1px solid var(--line);color:var(--ink-soft);flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px 24px;font-size:13px;display:flex}.demo__cat-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.demo__cat-tag{font-family:var(--font-mono), monospace;letter-spacing:.04em;color:var(--ink-faint);border:1px solid var(--line);border-radius:3px;padding:2px 6px;font-size:10px}.demo__cat-tag.sav{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.demo__cat-badge{font-family:var(--font-mono), monospace;letter-spacing:.03em;border-radius:3px;margin-left:auto;padding:3px 8px;font-size:10.5px}.demo__cat-badge.watch{color:var(--rust);background:var(--rust-soft)}.demo__cat-badge.met{color:var(--accent);background:var(--accent-soft)}.demo__cat-badge.over{color:#e0685a;background:#3a201c}.demo__cat-badge.saved{color:#6fa3d8;background:#1c2a38}.demo__cat-bar-fill.watch{background:var(--rust)}.demo__cat-bar-fill.met{background:var(--accent)}.demo__cat-bar-fill.over{background:#e0685a}.demo__cat-bar-fill.saved{background:#6fa3d8}.demo__cat-drag{color:var(--ink-faint);letter-spacing:-1px;margin-right:2px;font-size:12px}.demo__budget-hint{color:var(--ink-faint);border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:10px 24px;font-size:11.5px;display:flex}.demo__cat-pct{font-family:var(--font-mono), monospace;color:var(--ink-faint);margin-right:8px;font-size:12px}.demo__cat-amount{font-family:var(--font-mono), monospace;color:var(--ink);font-size:14px}.demo__panel-head{margin-bottom:4px;padding:16px 24px 0}.demo__panel-head h3{margin-bottom:4px;font-size:18px}.demo__panel-head p{color:var(--ink-faint);font-size:13px}.demo__networth-head{margin-bottom:16px}.demo__networth-head h3{margin-bottom:4px;font-size:18px}.demo__networth-head p{color:var(--ink-faint);font-size:13px}.demo__networth-summary{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:1px;margin-bottom:24px;display:grid}.demo__networth-summary .demo__stat{background:var(--paper-raised);border-right:none;padding:16px 18px}@media (max-width:640px){.demo__networth-summary{grid-template-columns:repeat(2,1fr)}}.demo__nw-breakdown{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;padding-top:24px;display:grid}@media (max-width:560px){.demo__nw-breakdown{grid-template-columns:1fr}}.demo__nw-col .kicker{margin-bottom:8px;display:block}.demo__nw-row{color:var(--ink-soft);border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:6px 0;font-size:13.5px;display:flex}.demo__nw-row--total{color:var(--ink);border-bottom:none;padding-top:8px;font-weight:500}.demo__chart{border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:24px}.demo__chart .demo__stat-sub{margin-top:2px;margin-bottom:20px}.demo__chart-bars{grid-template-columns:repeat(9,1fr);align-items:end;gap:8px;height:160px;display:grid}.demo__chart-col{flex-direction:column;align-items:center;min-width:0;height:100%;display:flex}@media (max-width:640px){.demo__chart-bars{-webkit-overflow-scrolling:touch;grid-template-columns:none;grid-auto-columns:44px;grid-auto-flow:column;overflow-x:auto}.demo__chart-col{min-width:44px}}.demo__chart-value{font-family:var(--font-mono), monospace;margin-bottom:4px;font-size:10.5px}.demo__chart-bar-track{align-items:flex-end;width:100%;height:100%;display:flex}.demo__chart-bar-fill{border-radius:2px 2px 0 0;width:100%;min-height:3px}.demo__chart-bar-fill.positive{background:var(--accent)}.demo__chart-bar-fill.negative{background:var(--rust)}.demo__chart-label{font-family:var(--font-mono), monospace;color:var(--ink-faint);margin-top:6px;font-size:11px}.demo__chart-total{border-top:1px solid var(--line);color:var(--ink-soft);justify-content:space-between;margin-top:14px;padding-top:14px;font-size:13px;display:flex}.demo__chart-total span:last-child{font-family:var(--font-mono), monospace}.demo__yoy .demo__stat-sub{margin-top:2px;margin-bottom:14px}.demo__yoy-table{border-collapse:collapse;width:100%;font-size:13.5px}.demo__yoy-table th{text-align:left;font-family:var(--font-mono), monospace;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);border-bottom:1px solid var(--line);padding-bottom:8px;font-size:11px;font-weight:400}.demo__yoy-table th:last-child,.demo__yoy-table td:last-child{text-align:right;font-family:var(--font-mono), monospace}.demo__yoy-table td{border-bottom:1px solid var(--line);color:var(--ink);padding:10px 0}.demo__yoy-table tr:last-child td{border-bottom:none}.case-hero{max-width:1080px;margin:0 auto;padding:72px 32px 36px}.case-hero h1{margin:16px 0 24px;font-size:clamp(32px,5vw,46px);line-height:1.15}.case-hero__sub{max-width:60ch;font-size:17px}.case-body{max-width:1080px;margin:0 auto;padding:0 32px 56px}.case-block{border-top:1px solid var(--line);padding:28px 0}.case-block h2{margin-bottom:20px;font-size:26px}.case-block p{max-width:68ch;margin-bottom:14px;font-size:16px}.case-block ul{color:var(--ink-soft);margin:0 0 14px;padding-left:20px}.case-block li{max-width:66ch;margin-bottom:8px;font-size:16px}.case-block blockquote{border-left:2px solid var(--accent);color:var(--ink);max-width:62ch;margin:24px 0;padding-left:20px;font-size:16.5px;font-style:italic}.case-metrics{grid-template-columns:repeat(2,1fr);gap:12px;margin:12px 0 8px;display:grid}@media (max-width:600px){.case-metrics{grid-template-columns:1fr}}.case-metric{border:1px solid var(--line);background:var(--paper-raised);padding:16px 18px}.case-metric .kicker{margin-bottom:6px}.case-metric p{margin:0;font-size:14px}.case-metric ul{margin:0;padding-left:16px}.case-metric li{color:var(--ink-soft);max-width:none;margin-bottom:4px;font-size:14px}.case-metric li:last-child{margin-bottom:0}.case-back{padding-top:40px}
