@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{color-scheme:light;--bg:#f8f7f3;--text:#252722;--muted:#74756c;--line:#ddded5;--accent:#db593f;--green:#54614c;--max-width:1240px;background:var(--bg);color:var(--text);font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:40px}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}a,button,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%}button{color:inherit}::-moz-selection{background:#f1c6b7}::selection{background:#f1c6b7}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:5px}p{line-height:1.7}h1,h2,h3,p{margin-top:0}h2{font-size:clamp(32px,3.2vw,44px);font-weight:500;letter-spacing:-1.8px;line-height:1.15;margin-bottom:0}h3{font-weight:550}em{font-family:Georgia,Times New Roman,serif;font-weight:400}a,button{touch-action:manipulation}.shell{overflow:clip}.page-shell,.site-footer,.site-header{margin:auto;width:min(calc(100% - 96px),var(--max-width))}.site-header{border-bottom:1px solid var(--line);height:110px;justify-content:space-between}.brand,.site-header{align-items:center;display:flex}.brand{font-size:19px;font-weight:650;gap:13px;letter-spacing:-.6px}.brand-mark{background:var(--text);border-radius:50%;color:var(--bg);font-size:25px;font-weight:500;height:35px;letter-spacing:-2px;line-height:31px;padding-right:3px;text-align:center;width:35px}.brand-period{color:var(--accent)}.site-nav{align-items:center;display:flex;font-size:13px;gap:31px}.site-nav a{padding:12px 0;position:relative}.site-nav a:hover{color:var(--accent)}.site-nav .is-current:not(.nav-contact):after{background:var(--accent);border-radius:50%;bottom:2px;content:"";height:4px;left:50%;position:absolute;width:4px}.site-nav .nav-contact{border:1px solid #bfc0b6;border-radius:4px;margin-left:4px;padding:11px 17px}.nav-contact span{margin-left:18px}.eyebrow{color:var(--muted);font:10px IBM Plex Mono,monospace;letter-spacing:1.4px;margin-bottom:24px}.tiny-cross{color:var(--accent);font-size:19px;margin-right:9px;vertical-align:-2px}.intro-hero{display:grid;gap:0 65px;grid-template-columns:1.05fr 1fr;padding-top:75px}.intro-copy{padding-top:12px}.intro-copy h1{font-size:clamp(50px,5.35vw,76px);font-weight:500;letter-spacing:-4px;line-height:1.05;margin-bottom:25px}.intro-copy h1 em{color:var(--accent);letter-spacing:-3.7px}.intro-description{color:#696c62;font-size:17px;line-height:1.75;max-width:425px}.hero-actions{align-items:center;display:flex;gap:28px;margin-top:29px}.button{align-items:center;border:1px solid transparent;border-radius:4px;display:inline-flex;font-size:13px;font-weight:550;gap:27px;justify-content:center;min-height:48px;padding:0 21px;transition:background .2s,transform .2s}.button-primary{background:var(--accent);color:#fff}.button-primary:hover{background:#be4933;transform:translateY(-2px)}.text-link{align-items:center;display:inline-flex;font-size:13px;font-weight:500;gap:15px;min-height:44px}.text-link:hover{color:var(--accent)}.intro-person{align-items:center;display:flex;gap:13px;margin-top:42px}.intro-person img{border-radius:50%;filter:saturate(.6);height:44px;-o-object-fit:cover;object-fit:cover;-o-object-position:center 35%;object-position:center 35%;width:44px}.intro-person span,.intro-person strong{display:block;font-size:11px;line-height:1.9}.intro-person strong{font-weight:500}.hero-footnote,.intro-person span{color:var(--muted)}.hero-footnote{display:flex;font:9px IBM Plex Mono,monospace;grid-column:1/-1;justify-content:space-between;letter-spacing:1px;margin:49px 0 26px}.hero-footnote a{font-family:DM Sans,sans-serif;font-size:11px;letter-spacing:0}.hero-footnote a span{margin-left:12px}.system-canvas{align-self:start;background-color:#f1f1ea;background-image:radial-gradient(#cfd1c5 .8px,transparent 0);background-size:17px 17px;border:1px solid var(--line);border-radius:9px;box-shadow:0 14px 26px -22px #4448;overflow:hidden;transform:rotate(-1deg)}.canvas-bottom,.canvas-top{background:#f1f1eadb;color:#707466;display:flex;font:8px IBM Plex Mono,monospace;gap:10px;justify-content:space-between;letter-spacing:1px;padding:18px 20px}.canvas-top>span:first-child{align-items:center;display:flex;gap:8px}.canvas-top i{background:#748966;border-radius:50%;height:5px;width:5px}.system-map{aspect-ratio:480/340;margin:0 6px;position:relative;width:calc(100% - 12px)}.map-connections{height:100%;inset:0;overflow:visible;position:absolute;width:100%}.map-connections path{stroke:#b8c0aa;stroke-width:1.5}.map-connections circle{fill:#829372}.map-connections .flow-path{animation:flow 8s linear infinite;stroke:#869977;stroke-dasharray:5 100}.map-node{align-items:center;background:#fcfcf8;border:1px solid #d6dacd;border-radius:5px;box-shadow:0 4px 8px #25272205;display:flex;font-size:11px;gap:9px;line-height:1.4;padding:13px 10px;position:absolute;text-align:left;white-space:nowrap}.intelligence-node small,.map-node small{color:var(--muted);display:block;font-size:8px;font-weight:400;margin-top:4px}.node-icon{background:#edf0e5;border-radius:4px;color:#68775b;display:grid;font-size:19px;height:31px;place-items:center;width:29px}.context-node{left:4%;top:16%;width:37%}.tools-node{right:3%;top:16%;width:40%}.human-node{left:3%;top:74%;width:40%}.outcome-node{background:#e9eddf;right:2%;top:74%;width:42%}.intelligence-node{align-items:center;background:#303d30;border:1px solid #303d30;border-radius:7px;box-shadow:0 7px 16px #303d3020;color:#fcfcf3;display:flex;font-size:15px;gap:13px;left:26%;min-height:75px;padding:13px 18px;position:absolute;text-align:left;top:43%;width:49%}.intelligence-node small{color:#b6c4ac;font-size:9px}.agent-symbol{color:#dfedb4;font-size:36px}.core-dot{background:#d9eeab;border-radius:50%;height:4px;position:absolute;right:10px;top:10px;width:4px}.map-node.selected,.map-node:hover{border-color:#84956d;box-shadow:0 0 0 3px #82937216}.intelligence-node.selected,.intelligence-node:hover{box-shadow:0 0 0 5px #82937220,0 7px 16px #303d3020}.map-label{color:#939789;font:7px IBM Plex Mono,monospace;letter-spacing:1.2px;position:absolute}.label-input{left:5%;top:6%}.label-output{right:4%;top:65%}.canvas-caption{background:#f8f9f1;border-top:1px solid #daddcf;display:flex;gap:13px;min-height:89px;padding:15px 20px}.caption-number{color:#859372;font:11px IBM Plex Mono,monospace;padding-top:3px}.canvas-caption p{color:#777d6e;font-size:10px;line-height:1.6;margin:0;max-width:340px}.canvas-caption strong{color:#3f4b37;display:block;font-size:11px;font-weight:500;margin-bottom:3px}.canvas-bottom{border-top:1px solid #e2e4d8;font-size:7px;letter-spacing:.6px;padding:12px 20px}.experience-strip{align-items:center;border-block:1px solid var(--line);color:#666b5f;display:flex;gap:25px;justify-content:space-between;padding:30px 0}.experience-strip .eyebrow{font-size:8px;letter-spacing:1px;margin:0}.company-jpm{font-family:Georgia,serif;font-size:22px;letter-spacing:-.6px}.company-alibaba{font-size:23px;font-style:italic;font-weight:700;letter-spacing:-1px}.company-ow{font-size:13px;font-weight:700;letter-spacing:-.6px}.experience-note{color:#83877c;font-size:10px}.section{padding:83px 0}.section-heading{align-items:end;display:flex;gap:20px;justify-content:space-between;margin-bottom:33px}.section-heading .eyebrow{margin-bottom:16px}.work-grid{display:grid;gap:26px;grid-template-columns:repeat(3,minmax(0,1fr))}.project-art{aspect-ratio:1.5;border-radius:5px;overflow:hidden;position:relative;transition:transform .3s}.work-card:hover .project-art{transform:translateY(-5px)}.art-arrow{border:1px solid #ffffff60;border-radius:50%;display:grid;font-size:16px;height:27px;place-items:center;position:absolute;right:14px;top:12px;width:27px}.news{background:#263c35;color:#ecf1e5;display:grid;place-items:center}.news-window{background:#21362e;border:1px solid #70877b;border-radius:5px;box-shadow:0 10px 30px #13251b55;padding:14px;transform:rotate(-5deg) translateY(10px);width:78%}.mini-bar{align-items:center;border-bottom:1px solid #506157;display:flex;justify-content:space-between;padding-bottom:11px}.mini-bar b{font-size:15px;letter-spacing:-.6px}.mini-bar b span{color:#afc69e;font-weight:400}.mini-bar i{color:#c2d49c;font:5px IBM Plex Mono,monospace;letter-spacing:1px}.news-line{align-items:center;display:flex;font-size:8px;gap:6px;margin:14px 0 9px}.news-dot{background:#d2e895;border-radius:50%;height:4px;width:4px}.skeleton-line{background:#50645b;height:3px;margin:5px 0;width:82%}.skeleton-line.short{width:61%}.news-tags{display:flex;gap:4px;margin:12px 0}.news-tags span{border:1px solid #617165;border-radius:10px;font-size:5px;padding:3px 7px}.signal-chart{align-items:end;display:flex;gap:5px;height:26px}.signal-chart i{background:#83997b;height:30%;width:8%}.signal-chart i:nth-child(3n){height:65%}.signal-chart i:nth-child(2n){height:45%}.signal-chart i:nth-child(5n){background:#c4d7a0;height:100%}.language{background:#e8dfcd;color:#584c3c;padding:27px 28px}.language-script{display:block;font-family:serif;font-size:55px;letter-spacing:10px;line-height:1.15;margin-left:20px;transform:rotate(-6deg)}.language-script>span{color:#a96f51;display:block;margin-left:65px}.language-note{font-size:8px;letter-spacing:1px;position:absolute;right:28px;top:38px;writing-mode:vertical-rl}.language-note span{color:#907f68;margin-top:12px}.art-stamp{bottom:15px;font:7px IBM Plex Mono,monospace;left:20px;letter-spacing:1.3px;position:absolute}.game .art-arrow,.language .art-arrow{border-color:#69736b50}.game{background:#dae3df;color:#506a60;display:grid;place-items:center}.island{height:180px;position:relative;transform:rotate(-12deg) scale(.9);width:220px}.hex{background:#a5b588;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);color:#4f6b4d;display:grid;font-size:32px;height:76px;place-items:center;position:absolute;width:67px}.hex-1{background:#cebf94;left:42px;top:0}.hex-2{left:112px;top:0}.hex-3{background:#b0bf92;left:7px;top:59px}.hex-4{background:#e1c77e;color:#8f6748;left:77px;top:59px}.hex-5{background:#b7a18b;left:147px;top:59px}.hex-6{background:#819979;left:42px;top:118px}.hex-7{background:#d2b88e;left:112px;top:118px}.work-card-meta{color:var(--muted);display:flex;font:8px IBM Plex Mono,monospace;justify-content:space-between;letter-spacing:1px;margin:22px 0 10px}.work-card h3{font-size:23px;letter-spacing:-.7px;margin-bottom:9px}.work-card p{color:var(--muted);font-size:12px;line-height:1.8;margin-bottom:0}.approach-section{border-block:1px solid var(--line);display:grid;gap:90px;grid-template-columns:1fr 1fr}.approach-intro h2 em{color:#708063}.approach-intro>p:not(.eyebrow){color:var(--muted);font-size:14px;margin:25px 0 17px;max-width:410px}.approach-steps article{border-bottom:1px solid var(--line);display:flex;gap:26px;padding:23px 0}.approach-steps article:first-child{padding-top:0}.approach-steps article:last-child{border:0;padding-bottom:0}.approach-steps article>span{color:#9caa8c;font:10px IBM Plex Mono,monospace;line-height:28px}.approach-steps h3{font-size:18px;letter-spacing:-.35px;margin-bottom:8px}.approach-steps p{color:var(--muted);font-size:12px;margin:0}.about-grid{display:grid;gap:90px;grid-template-columns:1fr 1fr}.about-grid p{color:var(--muted);font-size:14px;margin-bottom:13px}.education-row{align-items:start;border-top:1px solid var(--line);display:grid;gap:30px;grid-template-columns:.55fr 1fr 1fr;margin-top:36px;padding-top:27px}.education-row .eyebrow{margin-top:5px}.education-row p{font-size:12px;margin:0}.education-row p span{color:var(--muted);font-size:10px}.closing-note{align-items:center;background:#eaece1;border:1px solid #dfe2d3;border-radius:7px;display:flex;justify-content:space-between;margin-bottom:65px;padding:48px 53px}.closing-note .eyebrow{font-size:9px;margin-bottom:16px}.closing-note h2{font-size:clamp(34px,4vw,54px)}.closing-note em{color:#738262}.closing-note p:last-child{color:#73796b;font-size:12px;margin:19px 0 0}.closing-arrow{background:var(--accent);border-radius:50%;color:#fff;display:grid;font-size:40px;height:76px;place-items:center;transition:transform .2s;width:76px}.closing-arrow:hover{transform:rotate(8deg)}.site-footer{align-items:center;border-top:1px solid var(--line);color:var(--muted);display:flex;font-size:11px;gap:20px;justify-content:space-between;padding:27px 0 35px}.site-footer p{color:var(--text);margin:0}.footer-links{display:flex;flex-wrap:wrap;gap:24px}.footer-links a:hover{color:var(--accent)}.page-hero{padding:75px 0 20px}.page-hero h1{font-size:clamp(42px,5vw,66px);font-weight:500;letter-spacing:-2.8px;line-height:1.08;margin-bottom:25px;max-width:800px}.hero-lede{color:var(--muted);font-size:16px;max-width:620px}.example-tabs{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:30px}.example-tab{background:transparent;border:1px solid var(--line);border-radius:4px;padding:20px;text-align:left}.example-tab span,.tab-example__details dt{color:var(--muted);font:9px IBM Plex Mono,monospace;letter-spacing:1px}.example-tab strong{display:block;font-size:15px;font-weight:500;margin-top:10px}.example-tab.is-active{background:#e9eddf;border-color:#84956d}.example-tab:hover{border-color:#84956d}.tab-example{display:grid;gap:36px;grid-template-columns:1fr 1fr;padding-top:35px}.tab-example h2{font-size:32px;margin-bottom:20px}.tab-example__summary{color:var(--muted);font-size:14px}.tab-example__details>div{margin-top:23px}.tab-example__details dd{color:var(--muted);font-size:12px;line-height:1.8;margin:9px 0 0}.workflow-case-visual{align-self:start;margin:0}.workflow-case-visual__frame{background:#0a1220;border-radius:7px;overflow:hidden}.workflow-case-visual__frame svg{display:block;height:auto;width:100%}.project-strip-section{border-top:1px solid var(--line)}.project-strip-header h2{max-width:650px}.project-strip{display:grid;gap:30px;grid-template-columns:repeat(3,1fr);margin-top:35px}.project-link{border-top:1px solid var(--line);padding-top:24px}.project-link>span{color:var(--muted);font:9px IBM Plex Mono,monospace}.project-link strong{display:block;font-size:24px;font-weight:500;margin-top:15px}.project-link p{color:var(--muted);font-size:13px}.project-link:hover strong{color:var(--accent)}.contact-hero-grid{display:grid;gap:80px;grid-template-columns:1fr 1fr;padding-bottom:40px}.contact-hero h1{font-size:clamp(40px,4.3vw,60px)}.contact-form{background:#efefe7;border:1px solid var(--line);border-radius:6px;display:grid;gap:21px;padding:30px}.contact-form label{display:grid;gap:9px}.contact-form label>span{font-size:11px;font-weight:500}.contact-form input,.contact-form textarea{background:#fafbf6;border:1px solid #d8dbcf;border-radius:3px;color:var(--text);font-size:13px;padding:13px;width:100%}.contact-form textarea{min-height:145px;resize:vertical}.contact-form input::-moz-placeholder,.contact-form textarea::-moz-placeholder{color:#83887b}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#83887b}.contact-form .button[disabled]{cursor:wait;opacity:.55}.contact-form-feedback{font-size:13px;margin:0}.contact-form-feedback.is-error{color:#ab3928}.contact-form-feedback.is-success{color:#365837}.signal-list{list-style:none;margin:0;padding:0}.signal-list li{border-bottom:1px solid var(--line);color:var(--muted);font-size:14px;padding:15px 0}.contact-reasons{padding-top:20px}.skip-link{background:var(--text);color:#fff;left:20px;padding:14px;position:fixed;top:10px;transform:translateY(-160%);z-index:100}.skip-link:focus{transform:translateY(0)}@keyframes flow{to{stroke-dashoffset:-210}}@media(min-width:1450px){.intro-hero{gap:0 85px;padding-top:85px}.intro-copy h1{font-size:80px}.intro-description{font-size:18px}.system-map{aspect-ratio:480/345}}@media(max-width:1100px){.page-shell,.site-footer,.site-header{width:calc(100% - 64px)}.intro-hero{gap:0 32px;padding-top:55px}.intro-copy h1{font-size:57px}.intro-copy h1,.intro-copy h1 em{letter-spacing:-3px}.intro-description{font-size:15px}.map-node{font-size:9px;gap:5px;padding:10px 7px}.map-node small{font-size:6.5px}.node-icon{font-size:16px;width:24px}.intelligence-node{font-size:12px;gap:8px;min-height:65px;padding:10px}.agent-symbol{font-size:29px}.canvas-top,.intelligence-node small{font-size:7px}.canvas-top{padding:15px}.canvas-bottom{font-size:6px;padding:12px}.experience-note{display:none}.about-grid,.approach-section,.contact-hero-grid{gap:45px}.language-script{font-size:43px}.news-window{padding:10px}.language-note{right:18px}.island{transform:rotate(-12deg) scale(.75)}.work-grid{gap:20px}}@media(max-width:760px){.page-shell,.site-footer,.site-header{width:calc(100% - 40px)}.site-header{height:82px}.brand{font-size:15px;gap:8px}.brand-mark{font-size:22px;height:29px;line-height:25px;width:29px}.site-nav{font-size:11px;gap:16px}.site-nav a:first-child{display:none}.site-nav .nav-contact{margin:0;padding:9px 11px}.nav-contact span{margin-left:8px}.intro-hero{gap:36px;grid-template-columns:1fr;padding-top:43px}.intro-copy{padding-top:0}.intro-copy h1{font-size:clamp(48px,10vw,72px);letter-spacing:-2.8px}.intro-copy h1 em{letter-spacing:-2.5px}.intro-copy .eyebrow{font-size:8px;letter-spacing:1.1px}.intro-description{font-size:16px;max-width:470px}.intro-person{margin-top:29px}.hero-actions{margin-top:23px}.system-canvas{justify-self:center;max-width:520px;transform:none;width:100%}.map-node{font-size:11px;gap:8px;padding:12px 9px}.system-map{min-height:290px}.label-output{top:70%}.human-node,.outcome-node{top:79%}.map-node small{font-size:8px}.intelligence-node{font-size:14px;min-height:70px;padding:13px}.intelligence-node small{font-size:8px}.node-icon{width:28px}.agent-symbol{font-size:34px}.canvas-top{font-size:8px;padding:17px}.canvas-bottom{font-size:7px;padding:13px 17px}.hero-footnote{font-size:7px;gap:15px;margin:0 0 23px}.hero-footnote a{font-size:10px;white-space:nowrap}.experience-strip{flex-wrap:wrap;gap:22px;justify-content:space-between;padding:22px 0}.experience-strip .eyebrow{font-size:8px;width:100%}.company-jpm{font-size:20px}.company-alibaba{font-size:22px}.company-ow{font-size:12px}.section{padding:55px 0}.section-heading{align-items:start;flex-direction:column;gap:13px;margin-bottom:25px}h2{font-size:35px;letter-spacing:-1.4px}.work-grid{gap:34px;grid-template-columns:1fr}.project-art{aspect-ratio:1.65}.work-card p{font-size:14px}.work-card-meta{margin-top:18px}.news-window{max-width:300px;padding:18px}.news-line{font-size:9px}.signal-chart{height:40px}.language-script{font-size:64px;margin-left:28px}.language-note{font-size:10px;right:40px}.island{transform:rotate(-12deg) scale(.92)}.about-grid,.approach-section,.contact-hero-grid{gap:32px;grid-template-columns:1fr}.approach-intro>p:not(.eyebrow){font-size:15px}.approach-steps p{font-size:13px}.education-row{gap:18px;grid-template-columns:1fr;margin-top:23px}.education-row .eyebrow{margin-bottom:0}.education-row p{font-size:13px}.education-row p span{font-size:11px}.closing-note{gap:15px;margin-bottom:40px;padding:30px 24px}.closing-note h2{font-size:36px}.closing-note h2 em{display:block}.closing-note p:last-child{font-size:11px}.closing-arrow{flex:none;font-size:29px;height:51px;width:51px}.site-footer{align-items:start;flex-direction:column;gap:15px;padding:24px 0}.footer-links{font-size:10px;gap:17px}.page-hero{padding-top:45px}.page-hero h1{font-size:43px;letter-spacing:-2px}.hero-lede{font-size:15px}.example-tabs{gap:7px}.example-tab{padding:13px 10px}.example-tab span{font-size:7px;letter-spacing:.5px}.example-tab strong{font-size:11px;line-height:1.4}.tab-example{gap:22px;grid-template-columns:1fr}.project-strip{gap:18px;grid-template-columns:1fr}.contact-form{padding:22px}.contact-reasons{padding-top:15px}}@media(max-width:380px){.map-node{font-size:9px;gap:5px;padding:9px 6px}.map-node small{font-size:6px}.node-icon{width:22px}.intelligence-node{font-size:12px;gap:7px;min-height:60px;padding:9px}.agent-symbol{font-size:27px}.canvas-bottom,.canvas-top{font-size:6px}.intro-copy h1{font-size:46px}.hero-footnote>span{line-height:1.8;max-width:145px}.company-ow{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}}.work-hero{padding-bottom:0}.work-hero h1{max-width:980px}.work-hero h1 em{color:var(--accent)}.work-hero .hero-lede{max-width:690px}.project-index{border-block:1px solid var(--line);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:40px}.project-index a{align-items:center;display:flex;font-size:14px;font-weight:500;gap:15px;padding:23px 20px}.project-index a+a{border-left:1px solid var(--line)}.project-index a>span:first-child{color:var(--muted);font:10px IBM Plex Mono,monospace}.project-index a>span:last-child{color:var(--accent);margin-left:auto}.project-index a:hover{background:#efefe7}.project-story{--project-color:#52694e;--project-tint:#e9eddf;border-bottom:1px solid var(--line);padding:66px 0;scroll-margin-top:25px}.project-story--learning{--project-color:#956240;--project-tint:#eee4d5}.project-story--play{--project-color:#4a726b;--project-tint:#e0eae5}.project-story-header{align-items:center;display:flex;gap:24px;justify-content:space-between;margin-bottom:38px}.project-identity{align-items:center;display:flex;gap:22px}.project-number{background:var(--project-tint);border-radius:4px;color:var(--project-color);display:grid;font:20px IBM Plex Mono,monospace;height:65px;place-items:center;width:58px}.project-identity .eyebrow{color:var(--project-color);font-size:9px;margin-bottom:10px}.project-identity h2{font-size:38px;letter-spacing:-1.3px}.project-visit{color:var(--project-color)}.project-story-intro{align-items:start;display:grid;gap:65px;grid-template-columns:1fr 1fr;margin-bottom:28px}.project-story-intro h3{font-size:clamp(26px,2.7vw,35px);font-weight:500;letter-spacing:-1px;line-height:1.25;margin:0}.project-story-intro>p{color:var(--muted);font-size:15px;margin:0}.project-challenge{background:var(--project-tint);border-radius:4px;display:grid;gap:25px;grid-template-columns:180px 1fr;margin:28px 0 33px;padding:23px 26px}.project-challenge .eyebrow{color:var(--project-color);font-size:9px;margin:4px 0 0}.project-challenge p{color:#50564b;font-size:14px;margin:0}.project-capability-label{font-size:9px;margin-bottom:20px}.project-capabilities{display:grid;gap:32px;grid-template-columns:repeat(3,minmax(0,1fr))}.project-capabilities>section{border-top:1px solid var(--line);padding-top:18px}.capability-number{color:var(--project-color);font:9px IBM Plex Mono,monospace}.project-capabilities h4{font-size:17px;font-weight:550;letter-spacing:-.3px;margin:12px 0}.project-capabilities p{color:var(--muted);font-size:13px;line-height:1.85;margin:0}.project-engineering{border-block:1px solid var(--line);display:grid;gap:25px;grid-template-columns:180px 1fr;margin-top:32px;padding:22px 0}.project-engineering .eyebrow{font-size:9px;line-height:1.8;margin:3px 0 0;max-width:160px}.project-engineering>p:last-child{color:var(--muted);font-size:13px;margin:0}.project-story-footer{margin-top:24px}.expertise-tags{display:flex;flex-wrap:wrap;gap:8px}.expertise-tags span{border:1px solid var(--line);border-radius:30px;color:var(--project-color);font-size:10px;padding:7px 12px}.project-stack{color:var(--muted);font:9px IBM Plex Mono,monospace;line-height:1.9;margin:16px 0 0}.project-takeaway{color:var(--project-color);font-family:Georgia,serif;font-size:21px;font-style:italic;line-height:1.5;margin:25px 0 0}.work-closing{margin-top:65px}.visually-hidden{border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@media(max-width:760px){.project-index{grid-template-columns:1fr;margin-top:28px}.project-index a{padding:18px 5px}.project-index a+a{border-left:0;border-top:1px solid var(--line)}.project-story{padding:43px 0}.project-story-header{align-items:start;flex-direction:column;gap:14px;margin-bottom:24px}.project-identity{gap:16px}.project-number{font-size:17px;height:57px;width:46px}.project-identity h2{font-size:32px}.project-identity .eyebrow{font-size:8px;letter-spacing:.8px}.project-story-intro{gap:17px;grid-template-columns:1fr;margin-bottom:22px}.project-story-intro h3{font-size:28px}.project-story-intro>p{font-size:14px}.project-challenge{gap:12px;grid-template-columns:1fr;margin:22px 0 28px;padding:21px}.project-challenge p{font-size:13px}.project-capabilities{gap:25px;grid-template-columns:1fr}.project-capabilities h4{font-size:18px}.project-capabilities p{font-size:14px}.project-engineering{gap:12px;grid-template-columns:1fr;margin-top:26px}.project-engineering .eyebrow{max-width:none}.project-engineering>p:last-child{font-size:14px}.project-takeaway{font-size:20px}.work-closing{margin-top:43px}.work-closing .eyebrow{line-height:1.7}}.biography-hero{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:80px;grid-template-columns:1.35fr .8fr;padding-bottom:65px}.biography-copy h1{font-size:clamp(44px,4.8vw,66px);letter-spacing:-2.8px;max-width:none}.biography-copy h1 em{color:var(--accent)}.biography-name{font-size:19px;font-weight:500;margin:29px 0 15px}.biography-name span{color:var(--muted);font-size:16px;font-weight:400;margin-left:14px}.biography-copy .hero-lede{max-width:520px}.biography-photo{background:#edeee5;border:1px solid var(--line);border-radius:5px;justify-self:end;margin:0;max-width:400px;padding:10px 10px 0;transform:rotate(1.5deg)}.biography-photo img{border-radius:2px;height:365px;-o-object-fit:cover;object-fit:cover;-o-object-position:center 78%;object-position:center 78%;width:100%}.biography-photo .portrait-cycler{background:var(--line);border-radius:2px;height:365px;overflow:hidden;position:relative}.biography-photo .portrait-cycler img{height:100%;inset:0;opacity:0;position:absolute;transition:opacity .26s ease}.biography-photo .portrait-cycler img.is-active{opacity:1}@media(prefers-reduced-motion:reduce){.biography-photo .portrait-cycler img{transition:none}}.biography-photo figcaption{color:var(--muted);display:flex;font:8px IBM Plex Mono,monospace;gap:12px;justify-content:space-between;letter-spacing:.6px;padding:17px 3px}.biography-photo figcaption span:last-child{font-family:Georgia,serif;font-size:12px;font-style:italic;letter-spacing:0}.biography-story{display:grid;gap:80px;grid-template-columns:1fr 1.35fr}.biography-prose p{color:var(--muted);font-size:15px;line-height:1.85;margin-bottom:20px}.biography-skills{margin-top:26px}.biography-section{border-top:1px solid var(--line);padding:65px 0}.biography-section-note{color:var(--muted);font:9px IBM Plex Mono,monospace;letter-spacing:1px}.career-entry{border-top:1px solid var(--line);display:grid;gap:40px;grid-template-columns:240px 1fr;padding:29px 0}.career-meta{color:var(--muted);display:flex;flex-direction:column;font:11px IBM Plex Mono,monospace;gap:6px;line-height:1.8;padding-top:4px}.career-meta span:last-child{color:#92958a;font:12px DM Sans,sans-serif}.career-title{align-items:center;display:flex;gap:20px}.career-title h3{font-size:24px;letter-spacing:-.5px;margin:0}.career-title a{color:var(--accent);font-size:24px;min-height:36px;min-width:36px;text-align:center}.career-role{color:var(--green);font-size:13px;margin:7px 0 12px}.career-description{color:var(--muted);font-size:14px;margin:0;max-width:760px}.academic-entry{border-top:1px solid var(--line);display:grid;gap:40px;grid-template-columns:240px 1fr;padding:30px 0}.academic-meta{color:var(--muted);display:flex;flex-direction:column;font:11px IBM Plex Mono,monospace;gap:24px}.academic-grade{color:var(--green);font:26px DM Sans,sans-serif;letter-spacing:-.8px}.academic-grade small{color:var(--muted);display:block;font:8px IBM Plex Mono,monospace;letter-spacing:1px;margin-top:7px}.academic-entry .eyebrow{font-size:9px;line-height:1.7;margin-bottom:11px}.academic-entry h3{font-size:24px;letter-spacing:-.6px;margin-bottom:9px}.academic-degree{color:var(--green);font-size:14px}.academic-entry ul{margin-bottom:0;padding-left:17px}.academic-entry li{color:var(--muted);font-size:13px;line-height:1.85;margin-top:10px;padding-left:4px}.academic-entry li::marker{color:#a4af94}.earlier-education{border-top:1px solid var(--line);color:var(--muted);font-size:12px;margin:0;padding-top:23px}.earlier-education strong{color:var(--text);font-weight:500;margin-right:25px}.community-grid{display:grid;gap:45px;grid-template-columns:1fr 1fr}.community-grid article{background:#eeefe6;border:1px solid #e1e4d6;border-radius:4px;padding:30px}.community-grid .eyebrow{font-size:8px;line-height:1.8;margin-bottom:15px}.community-grid h3{font-size:23px;letter-spacing:-.5px;margin-bottom:14px}.community-grid p:last-child{color:var(--muted);font-size:14px;margin:0}.about-page .closing-note{margin-top:20px}@media(max-width:1100px){.biography-hero{gap:40px}.biography-photo .portrait-cycler,.biography-photo img{height:330px}.biography-story{gap:40px}.academic-entry,.career-entry{gap:30px;grid-template-columns:180px 1fr}}@media(max-width:760px){.biography-hero{gap:35px;grid-template-columns:1fr;padding-bottom:40px}.biography-copy h1{font-size:clamp(39px,8.9vw,60px);letter-spacing:-2px}.biography-copy>.eyebrow{font-size:8px;letter-spacing:1px}.biography-name{font-size:17px;margin-top:22px}.biography-photo{justify-self:center;max-width:420px;transform:none;width:100%}.biography-photo .portrait-cycler,.biography-photo img{height:320px}.biography-photo figcaption{font-size:7px}.biography-photo figcaption span:last-child{font-size:11px}.biography-story{gap:25px;grid-template-columns:1fr}.biography-prose p{font-size:14px}.biography-section{padding:42px 0}.biography-section-note{font-size:8px}.academic-entry,.career-entry{gap:16px;grid-template-columns:1fr;padding:25px 0}.career-meta{flex-direction:row;flex-wrap:wrap;font-size:10px;gap:8px;justify-content:space-between}.career-meta span:last-child{font-size:11px}.academic-entry h3,.career-title h3{font-size:23px}.academic-meta{align-items:center;flex-direction:row;gap:20px;justify-content:space-between}.academic-grade{font-size:20px;text-align:right}.academic-grade small{font-size:7px}.earlier-education strong{display:block;margin-bottom:7px}.community-grid{gap:18px;grid-template-columns:1fr}.community-grid article{padding:24px}.site-nav{gap:12px}.site-nav .nav-contact{padding:9px}.brand{font-size:14px;gap:6px}}@media(max-width:380px){.site-nav{gap:10px}.site-nav .nav-contact span{display:none}.brand-mark{font-size:20px;height:25px;line-height:23px;width:25px}.biography-photo .portrait-cycler,.biography-photo img{height:290px}}
