:root{--bg:#eeeef0;--panel:#fff;--card:#fff;--text:#18181b;--muted:#5c5c66;--subtle:#71717a;--line:#e7e7ea;--accent:#3d5afe;--accent-soft:#3d5afe1a;--raised:#fff;--inset:#f5f5f7;--chip:#18181b0d;--ring:#18181b14;--shadow:#18181b14;--hi:#fff;--on-accent:#fff;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease:cubic-bezier(.25, .1, .25, 1);--spring:cubic-bezier(.34, 1.36, .64, 1);--sh-btn:inset 0 1px 0 0 var(--hi), 0 0 0 1px var(--ring), 0 1px 2px 0 var(--shadow), 0 6px 14px -8px var(--shadow);--sh-primary:inset 0 1px 0 0 #ffffff38, 0 0 0 1px var(--accent), 0 1px 2px 0 var(--shadow), 0 8px 18px -8px var(--shadow);--sh-panel:0 0 0 1px var(--ring), 0 1px 2px 0 var(--shadow), 0 16px 32px -20px var(--shadow);--f-text:"Inter", "Inter Placeholder", system-ui, sans-serif;--f-serif:"Instrument Serif", "Times New Roman", serif;--f-hand:"Homemade Apple", cursive;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=dark]{--bg:#09090b;--panel:#111113;--card:#18181b;--text:#f4f4f5;--muted:#a1a1aa;--subtle:#8b8b95;--line:#26262b;--accent:#6078fe;--accent-soft:#3d5afe33;--raised:#1f1f23;--inset:#0c0c0e;--chip:#ffffff12;--ring:#ffffff14;--shadow:#0000008c;--hi:#ffffff0f;--on-accent:#fff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--f-text);font-variation-settings:"opsz" 14;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .2s var(--ease);margin:0;font-size:14px;line-height:1.55}h1,h2,h3,p,ul{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img,svg{display:block}::selection{background:var(--accent-soft)}.display{font-variation-settings:"opsz" 32;font-weight:600}.serif{font-family:var(--f-serif);font-variation-settings:normal;font-size:1.06em;font-style:italic;font-weight:400;line-height:inherit;letter-spacing:-.035em}.serif.is-accent{color:var(--accent)}.hand{font-family:var(--f-hand);font-variation-settings:normal;letter-spacing:0;font-weight:400}.t-h1{letter-spacing:-.035em;font-size:46px;line-height:1.08}.t-h2{letter-spacing:-.035em;font-size:32px;line-height:1.1}.t-h2-lg{letter-spacing:-.035em;font-size:38px;line-height:1.08}.t-h3{letter-spacing:-.025em;font-size:22px;line-height:1.2}.t-lead{color:var(--muted);font-size:17px;line-height:1.55}.t-body{color:var(--muted);font-size:16px;line-height:1.5}.t-small{color:var(--muted);font-size:14px;line-height:1.55}.t-xs{font-size:13px;line-height:1.4}.t-xxs{font-size:12px;line-height:1.35}.muted{color:var(--muted)}.subtle{color:var(--subtle)}.accent{color:var(--accent)}.shell{min-height:100vh}.sidebar{z-index:5;scrollbar-width:none;flex-direction:column;justify-content:space-between;width:300px;height:100dvh;padding:14px 18px 18px 14px;display:flex;position:fixed;top:0;left:0;overflow:auto}.sidebar::-webkit-scrollbar{display:none}.sidebar-top{flex-direction:column;gap:20px;display:flex}.sidebar-bottom{flex-direction:column;gap:12px;padding-top:20px;display:flex}.main{margin-left:312px;padding:12px 12px 20px 0}.panel{background:var(--panel);box-shadow:var(--sh-panel);transition:background-color .2s var(--ease);border-radius:30px;flex-direction:column;align-items:center;padding:0 96px;display:flex;overflow:clip}.panel>*{width:100%;max-width:720px}.section{border-bottom:1px solid var(--line);flex-direction:column;gap:32px;padding:72px 0;scroll-margin-top:12px;display:flex}.section.is-last{border-bottom:0}.card{background:var(--card);border:1px solid var(--line)}.profile{border-radius:22px;flex-direction:column;gap:14px;padding:16px;display:flex}.identity{align-items:center;gap:12px;display:flex}.photo{width:60px;height:60px;box-shadow:0 0 0 3px var(--raised), 0 6px 12px -4px var(--shadow);background:var(--inset);border-radius:16px;flex:none;overflow:clip}.photo img{object-fit:cover;width:100%;height:100%}.identity-name{flex-direction:column;gap:3px;min-width:0;display:flex}.identity-name h1,.identity-name .name{letter-spacing:-.025em;font-size:22px;line-height:1.2}.role{color:var(--muted);align-items:center;gap:6px;font-size:13px;font-weight:500;line-height:1.3;display:flex}.live-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 3px var(--accent-soft);border-radius:100px;flex:none;animation:1.2s cubic-bezier(.44,0,.56,1) infinite alternate live-dot}@keyframes live-dot{to{opacity:.35;transform:rotate(360deg)}}.bio{color:var(--muted);font-size:13px;line-height:1.4}.signature{margin:-4px 0 -6px;font-size:17px;line-height:1.6}.divider{background:var(--line);height:1px}.meta{flex-direction:column;gap:9px;display:flex}.meta-row{align-items:center;gap:9px;font-size:13px;line-height:1.4;display:flex}.meta-row svg{color:var(--muted);flex:none}.meta-row.is-accent svg{color:var(--accent)}.side-nav{flex-direction:column;gap:4px;display:flex}.nav-item{transition:background-color .2s var(--ease), box-shadow .25s ease;background-color:#0000;border-radius:14px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:500;line-height:1.2;display:flex;box-shadow:0 0 #0000}.nav-item svg{color:var(--muted)}@media (hover:hover){.nav-item:hover{background-color:var(--chip)}}.nav-item[aria-current]{background-color:var(--raised);box-shadow:var(--sh-btn)}.nav-item[aria-current] svg{color:var(--text)}.btn{cursor:pointer;white-space:nowrap;transition:transform .2s var(--ease), background-color .2s var(--ease), box-shadow .2s var(--ease), color .2s var(--ease);border:0;align-items:center;gap:9px;font-weight:500;display:inline-flex;transform:translateY(0)scale(1)}@media (hover:hover){.btn:hover{transform:translateY(-1px)scale(1)}}.btn:active{transition-timing-function:var(--spring);transform:translateY(0)scale(.985)}@media (hover:hover){.btn:hover:active{transform:translateY(-1px)scale(.985)}}.btn-primary{background:var(--accent);color:var(--on-accent);box-shadow:var(--sh-primary)}.btn-secondary,.btn-icon{background:var(--raised);color:var(--text);box-shadow:var(--sh-btn)}.btn-lg{border-radius:15px;padding:14px 22px 14px 18px;font-size:15px;line-height:1}.btn-lg.is-trailing{padding:14px 18px 14px 22px}.btn-md{border-radius:15px;padding:13px 20px 13px 18px;font-size:14px;line-height:1}.btn-md.is-trailing{padding:13px 18px 13px 20px}.btn-icon{border-radius:12px;justify-content:center;width:40px;height:40px}.btn-cv{border-radius:15px;flex:1;justify-content:center;gap:8px;height:48px;padding:0 18px;font-size:14px;line-height:1.2}.btn-mail{border-radius:15px;width:48px;height:48px}.btn-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.socials,.actions{align-items:center;gap:8px;display:flex}.theme-toggle{background:var(--chip);box-shadow:inset 0 0 0 1px var(--ring);border-radius:14px;align-items:center;gap:2px;padding:4px;display:flex}.theme-btn{cursor:pointer;width:30px;height:28px;color:var(--muted);box-shadow:none;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;padding:0;transition:background .2s,color .2s,box-shadow .2s;display:flex}.theme-btn[aria-pressed=true]{color:var(--text);background:var(--raised);box-shadow:inset 0 1px 0 var(--hi), 0 0 0 1px var(--ring), 0 1px 2px var(--shadow)}.accent-picker{width:36px;height:36px;position:relative}.accent-trigger{cursor:pointer;background:var(--chip);width:36px;height:36px;box-shadow:inset 0 0 0 1px var(--ring);border:0;border-radius:12px;justify-content:center;align-items:center;padding:0;transition:background .2s,box-shadow .2s;display:flex}.accent-trigger[aria-expanded=true]{background:var(--raised);box-shadow:inset 0 1px 0 var(--hi), 0 0 0 1px var(--ring), 0 1px 2px var(--shadow)}.accent-trigger span{background:var(--swatch,var(--accent));width:14px;height:14px;box-shadow:0 0 0 2px var(--raised), 0 0 0 3.5px var(--swatch,var(--accent));border-radius:999px}.accent-popover{z-index:20;background:var(--raised);box-shadow:0 0 0 1px var(--ring), 0 10px 24px -10px var(--shadow);border-radius:14px;gap:8px;padding:9px;display:flex;position:absolute;bottom:calc(100% + 8px);right:0}.accent-popover[hidden]{display:none}.swatch{cursor:pointer;background:var(--c);border:0;border-radius:999px;width:18px;height:18px;padding:0;transition:transform .2s,box-shadow .2s;transform:scale(1);box-shadow:inset 0 0 0 1px #0000001f}.swatch[aria-pressed=true]{box-shadow:0 0 0 2px var(--raised), 0 0 0 4px var(--c);transform:scale(.9)}.compact-nav{display:none}.intro{gap:28px}.eyebrow{background:var(--chip);border-radius:100px;align-self:flex-start;align-items:center;gap:8px;padding:7px 14px 7px 8px;font-size:13px;font-weight:500;line-height:1.3;display:inline-flex}.eyebrow-icon{background:var(--accent-soft);width:22px;height:22px;color:var(--accent);border-radius:100px;justify-content:center;align-items:center;display:flex}.headline{position:relative}.margin-note{color:var(--accent);pointer-events:none;align-items:flex-end;gap:4px;display:flex;position:absolute;top:-48px;right:0;transform:rotate(-7deg)}.margin-note p{white-space:nowrap;padding-bottom:14px;font-size:17px;line-height:1.6}.margin-note svg{transform:translateY(6px)}.lead{max-width:420px}.stack{flex-direction:column;gap:14px;display:flex}.stack-label{color:var(--muted);font-size:13px;line-height:1.4}.tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.tile{transition:background-color .2s var(--ease);border-radius:14px;align-items:center;gap:12px;padding:14px;display:flex}@media (hover:hover){.tile:hover{background-color:var(--inset)}}.tile-icon{background:var(--chip);width:36px;height:36px;color:var(--text);border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.tile-text{flex-direction:column;gap:3px;min-width:0;display:flex}.tile-name{font-size:14px;font-weight:600;line-height:1.2}.tile-note{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:1.35;overflow:hidden}.section-head{flex-direction:column;gap:14px;display:flex}.section-head .t-body{max-width:560px}.note-body{flex-direction:column;gap:20px;margin-top:0;font-size:20px;line-height:1.55;display:flex}.note-body .hl{color:var(--accent)}.note-body .hl-italic{color:var(--accent);font-variation-settings:"opsz" 32;font-size:1.01em;font-style:italic}.sign-off{align-items:center;gap:14px;display:flex}.sign-off .hand{font-size:24px;line-height:1.5}.sign-off p:last-child{color:var(--subtle);font-size:13px;font-weight:500;line-height:1.3}.figures{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.figure{border-bottom:1px solid var(--line);flex-direction:column;gap:8px;padding:28px 32px 28px 0;display:flex}.figure:nth-child(2n){border-left:1px solid var(--line);padding:28px 0 28px 32px}.figure-label{font-size:16px;line-height:1.5}.figure-note{color:var(--subtle);font-size:13px;line-height:1.4}.roles{flex-direction:column;display:flex}.role-row{border-top:1px solid var(--line);transition:background-color .2s var(--ease);background-color:#0000;gap:24px;padding:22px 0;display:flex}@media (hover:hover){.role-row:hover{background-color:var(--chip)}}.role-years{width:130px;color:var(--muted);flex:none;padding-top:6px;font-size:13px;font-weight:500;line-height:1.3}.role-body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.role-title{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.role-title h3{letter-spacing:-.02em;font-size:19px;line-height:1.15}.role-title p{color:var(--subtle);font-size:13px;font-weight:500;line-height:1.3}.role-title p.is-accent{color:var(--accent)}.role-points{color:var(--muted);padding-left:17px;font-size:14px;line-height:1.55}.case-list{flex-direction:column;gap:34px;display:flex}.case-card{transition:background-color .2s var(--ease);border-radius:20px;gap:28px;padding:24px;display:flex}@media (hover:hover){a:hover>.case-card{background-color:var(--inset)}}.case-story{flex-direction:column;flex:1;gap:14px;min-width:0;display:flex}.case-results{background:var(--inset);width:190px;transition:background-color .2s var(--ease);border-radius:14px;flex-direction:column;flex:none;gap:14px;padding:16px;display:flex}.metric{flex-direction:column;gap:4px;display:flex}.metric-value{letter-spacing:-.03em;font-size:26px;line-height:1}.metric-label{color:var(--muted);font-size:12px;line-height:1.35}.creds{flex-direction:column;display:flex}.cred{border-top:1px solid var(--line);align-items:center;gap:14px;padding:16px 0;display:flex}.cred svg{color:var(--accent);flex:none}.cred-name{flex:1;font-size:15px;font-weight:600;line-height:1.3}.cred-issuer{color:var(--muted);font-size:14px}.cred-year{color:var(--subtle);text-align:right;min-width:34px;font-size:14px}.recs{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.rec{border-radius:18px;flex-direction:column;gap:14px;padding:20px;display:flex}.rec-head{align-items:flex-start;gap:12px;display:flex}.rec-photo{width:48px;height:48px;box-shadow:0 0 0 1px var(--ring);color:var(--accent);background:var(--accent-soft);border-radius:100px;flex:none;justify-content:center;align-items:center;font-size:15px;font-weight:600;display:flex;overflow:clip}.rec-id{flex-direction:column;gap:2px;min-width:0;display:flex}.rec-name{align-items:center;gap:6px;font-size:15px;font-weight:600;line-height:1.3;display:flex}.rec-name svg{color:#0a66c2}html[data-theme=dark] .rec-name svg{color:#3b8de0}.rec-role{color:var(--muted);font-size:13px;line-height:1.4}.rec-meta{color:var(--subtle);flex-direction:column;gap:1px;padding-top:2px;font-size:12px;line-height:1.35;display:flex}.rec-quote{font-size:15px;line-height:1.6}.rec-link{color:var(--muted);transition:color .2s var(--ease);align-self:flex-start;align-items:center;gap:6px;padding-top:2px;font-size:13px;font-weight:500;line-height:1.3;display:inline-flex}@media (hover:hover){.rec-link:hover{color:var(--text)}}.section.contact{padding-bottom:48px}.ps{border-radius:26px;flex-direction:column;gap:22px;padding:36px;display:flex}.ps-kicker{color:var(--accent);font-size:24px;line-height:1.5}.ps .t-body{max-width:450px}.ps .btn-row{padding-top:6px}.footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:22px 0 28px;font-size:13px;font-weight:500;line-height:1.3;display:flex}.footer p{color:var(--subtle)}.back-top{color:var(--muted);transition:color .2s var(--ease);align-items:center;gap:6px;display:inline-flex}@media (hover:hover){.back-top:hover{color:var(--text)}}.section.case-header{gap:20px;padding:56px 0 48px}.back-link{color:var(--muted);transition:color .2s var(--ease);align-self:flex-start;align-items:center;gap:6px;font-size:14px;font-weight:500;line-height:1.2;display:inline-flex}@media (hover:hover){.back-link:hover{color:var(--text)}}.title-block{flex-direction:column;gap:12px;padding-top:12px;display:flex}.title-block .client{color:var(--accent);font-size:14px;font-weight:500;line-height:1.2}.title-block .t-lead{max-width:620px}.case-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:8px;display:grid}.case-metric{background:var(--inset);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:6px;padding:20px;display:flex}.case-metric .metric-value{letter-spacing:-.035em;font-size:34px}.case-metric .metric-label{font-size:13px;line-height:1.4}.built-with{flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;display:flex}.built-with svg{color:var(--muted);margin-right:-2px}.built-with span:last-child{font-weight:500;line-height:1.2}.section.story{gap:0;padding:48px 0 56px}.story h3{letter-spacing:-.025em;font-size:22px;line-height:1.25}.story p{color:var(--muted);margin:11px 0 0;font-size:16px;line-height:1.7}.story p+h3{margin-top:44px}.next-case{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:28px 0;display:flex}.next-case>p{color:var(--muted);font-size:14px}.next-link{transition:transform .2s var(--ease);align-items:center;gap:8px;display:inline-flex;transform:translate(0)}@media (hover:hover){.next-link:hover{transform:translate(3px)}}.next-link svg{color:var(--accent)}.section.case-files-head{padding:56px 0 64px}.appear{animation:appear .7s var(--ease-out) var(--d,0s) both}@keyframes appear{0%{opacity:.001;transform:translateY(24px)}}.margin-note.appear{animation:appear-note .8s var(--ease-out) .9s both}@keyframes appear-note{0%{opacity:.001;transform:translateY(8px)scale(.92)rotate(0)}}.js:not(.is-ready) .appear{animation-play-state:paused}.reveal{transition:opacity var(--dur,.7s) var(--ease-out) var(--d,0s), transform var(--dur,.7s) var(--ease-out) var(--d,0s)}.js .reveal:not(.in){opacity:0;transform:translateY(var(--y,24px))}@media (width<=1199.98px){.shell{flex-direction:column;gap:12px;padding:24px 12px 12px;display:flex}.sidebar{justify-content:flex-start;gap:12px;width:auto;height:auto;padding:0;position:static;overflow:visible}.sidebar-bottom{padding-top:0}.side-nav{display:none}.compact-nav{z-index:5;background:var(--raised);box-shadow:0 0 0 1px var(--ring), 0 8px 20px -10px var(--shadow);border-radius:14px;gap:4px;padding:5px;display:flex;position:sticky;top:8px}.compact-nav a{transition:background-color .2s var(--ease), box-shadow .25s ease;border-radius:10px;padding:9px 14px;font-size:14px;font-weight:500;line-height:1.2}@media (hover:hover){.compact-nav a:hover{background-color:var(--chip)}}.compact-nav a[aria-current]{background-color:var(--chip);box-shadow:inset 0 0 0 1px var(--ring)}.main{margin:0;padding:0}.panel{border-radius:28px;padding:0 56px}.section{padding:64px 0}.t-h1{font-size:42px}.t-h2{font-size:30px}}@media (width<=809.98px){.shell{gap:8px;padding:16px 8px 8px}.panel{border-radius:22px;padding:0 24px}.section{padding:52px 0}.t-h1{font-size:32px}.t-h2{font-size:26px}.t-h2-lg{font-size:30px}.margin-note{display:none}.lead{max-width:none}.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.note-body{font-size:18px}.figures{grid-template-columns:minmax(0,1fr)}.figure,.figure:nth-child(2n){border-left:0;padding:24px 0}.role-row{flex-direction:column;gap:8px}.role-years{width:auto;padding-top:0}.case-card{flex-direction:column;gap:20px;padding:20px}.case-results{width:100%}.cred{gap:6px 12px}.cred-issuer{text-align:right}.cred-year{display:none}.recs{grid-template-columns:minmax(0,1fr);gap:10px}.ps{gap:18px;padding:24px}.footer{flex-direction:column;align-items:flex-start;gap:10px}.case-metrics{grid-template-columns:minmax(0,1fr)}.next-case{flex-direction:column;align-items:flex-start}.section.case-header,.section.case-files-head{padding:44px 0 40px}.section.story{padding:40px 0 44px}}@media (prefers-reduced-motion:reduce){.appear,.margin-note.appear{animation:none}.js .reveal:not(.in){opacity:1;transform:none}.live-dot{animation:none}}.rec-photo img{object-fit:cover;width:100%;height:100%}
