:root{--paper:#f6f5ef;--white:#fff;--ink:#172b2a;--muted:#54635f;--green:#153f3c;--teal:#286962;--line:#d6ddd4;--sand:#edb877;--pale:#e7ece3;--radius:18px;--font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--teal)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b05a1e;outline-offset:5px}button{font:inherit}img,svg{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(2.7rem,5vw,4.9rem);font-weight:650}h2{font-size:clamp(2rem,3.3vw,3rem);font-weight:650}h3{font-size:1.5rem;letter-spacing:-.025em}p{margin-bottom:1.15rem}.container{width:min(1160px,calc(100% - 80px));margin-inline:auto}.header{border-bottom:1px solid var(--line);background:rgba(246,245,239,.97);position:sticky;top:0;z-index:20}.nav-wrap{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:flex;gap:12px;align-items:center;font-size:15px;font-weight:700;text-decoration:none;white-space:nowrap}.brand-mark{font-size:28px;font-weight:800;letter-spacing:-3px}.brand-mark span{color:#a7562b}nav{display:flex;align-items:center;gap:28px;font-size:13px;font-weight:600}nav a{text-decoration:none}nav .nav-contact{border:1px solid var(--green);border-radius:30px;padding:9px 17px}.skip{position:absolute;left:16px;top:-100px;z-index:99;padding:12px;background:white}.skip:focus{top:12px}.eyebrow{font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:750;color:var(--teal);margin-bottom:20px}.hero{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;padding:77px 0 58px;align-items:center}.hero h1{max-width:720px;margin-bottom:24px}.hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--teal)}.hero-intro{font-size:18px;line-height:1.65;max-width:575px;color:var(--muted)}.hero-meta{font-size:13px;color:var(--muted);margin-top:23px}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:27px}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:47px;padding:11px 20px;text-decoration:none;border-radius:7px;background:var(--green);color:white;font-size:13px;font-weight:650;border:1px solid var(--green)}.button:hover{background:#245c55;color:white}.button.secondary{background:transparent;color:var(--green);border-color:#aebcb2}.button.secondary:hover{background:var(--pale)}.signal-card{border-radius:20px;background:var(--green);color:#fafbf7;padding:26px;box-shadow:0 15px 35px #123d3310;transform:rotate(1deg)}.signal-top{display:flex;align-items:center;gap:14px;padding-bottom:22px;border-bottom:1px solid #ffffff2b}.avatar{width:58px;height:58px;border-radius:50%;object-fit:cover;object-position:50% 25%;border:2px solid #fff8}.signal-top strong{font-size:15px}.signal-top p{font-size:11px;color:#c4d8cc;margin:3px 0 0}.signal-label{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#c4d8cc;margin:23px 0 8px}.signal-plot{display:block;width:100%;margin:15px 0 10px}.signal-caption{font-size:11px;color:#c4d8cc;margin:8px 0 25px}.signal-bottom{border-top:1px solid #ffffff2b;padding-top:18px;display:flex;justify-content:space-between;align-items:center;gap:12px}.signal-bottom strong{font-size:19px;letter-spacing:-.03em}.signal-bottom span{font-size:11px;color:#c4d8cc}.signal-bottom .circle-arrow{font-size:22px;color:var(--sand)}.proof-strip{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;gap:30px}.proof-strip>div{border-right:1px solid var(--line);padding-right:24px}.proof-strip>div:last-child{border:0}.proof-strip strong{display:block;font-size:24px;letter-spacing:-.03em}.proof-strip span{font-size:12px;color:var(--muted)}.section{padding:76px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:30px}.section-heading h2{margin-bottom:0}.section-heading p{margin:0;max-width:330px;font-size:14px;color:var(--muted)}.section-heading .eyebrow{margin-bottom:12px}.featured{display:grid;grid-template-columns:1.08fr 1fr;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:white}.project-art{background:#e3eadd;min-height:330px;padding:34px;display:flex;flex-direction:column;justify-content:space-between}.art-title{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#47614e}.motif-row{display:flex;gap:12px}.motif-box{padding:16px 13px 12px;border:1px solid #b9c9b7;border-radius:10px;background:#f2f5ed;flex:1;min-width:0}.motif-box small{font-size:10px;color:#4c6453}.motif-box svg{display:block;margin:12px 0 8px;width:100%}.art-footer{font-size:11px;color:#4c6453}.project-copy{padding:36px}.project-copy h3{font-size:29px;margin-bottom:15px}.project-copy p,.mini-card p{font-size:14px;color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.tag{display:inline-block;border:1px solid var(--line);padding:3px 9px;border-radius:5px;font-size:10px;color:#40594d;font-weight:600}.text-link{display:inline-flex;align-items:center;gap:15px;font-size:13px;font-weight:700}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:20px}.mini-card{background:#fcfcf8;border:1px solid var(--line);border-radius:var(--radius);padding:27px;display:flex;flex-direction:column}.card-index{font-size:11px;color:var(--teal);margin-bottom:30px;display:flex;justify-content:space-between}.mini-card h3{font-size:23px;margin-bottom:14px}.mini-card .text-link{margin-top:auto;padding-top:16px}.capabilities{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#e9ede5}.cap-grid{display:grid;grid-template-columns:1fr 2fr;gap:65px}.cap-grid h2{font-size:38px}.skill-rows{display:grid;gap:22px}.skill-row{display:grid;grid-template-columns:155px 1fr;gap:20px;border-bottom:1px solid #cad4c8;padding-bottom:20px}.skill-row:last-child{border:0;padding:0}.skill-row h3{font-size:15px;line-height:1.5;letter-spacing:0;margin:0}.skill-row p{font-size:14px;margin:0;color:var(--muted)}.pub-row{display:grid;grid-template-columns:85px 1fr 32px;gap:20px;border-top:1px solid var(--line);padding:25px 0;text-decoration:none}.pub-row:last-child{border-bottom:1px solid var(--line)}.pub-year{font-size:13px;color:var(--muted)}.pub-row h3{font-size:20px;letter-spacing:-.02em;line-height:1.4;margin-bottom:7px}.pub-row p{font-size:12px;color:var(--muted);margin:0}.pub-arrow{font-size:22px}.contact{background:var(--green);color:white;border-radius:var(--radius);padding:47px 50px;display:grid;grid-template-columns:1.45fr 1fr;gap:50px;align-items:center;margin:0 0 70px}.contact .eyebrow{color:#c0d9bf}.contact h2{font-size:38px;margin-bottom:17px}.contact p{color:#d0ded6;font-size:14px;margin:0}.contact-links{display:flex;flex-direction:column;gap:13px;align-items:start}.contact-links>a{font-size:14px}.contact-links .button{background:var(--sand);border-color:var(--sand);color:var(--ink);margin-bottom:5px}.footer{border-top:1px solid var(--line)}.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center;min-height:86px;font-size:11px;color:var(--muted)}.footer p{margin:0}.footer-inner>div{display:flex;gap:23px}.page-head{padding:65px 0 40px;max-width:850px}.page-head h1{font-size:clamp(2.5rem,5vw,4rem);margin-bottom:22px}.lede{font-size:19px;color:var(--muted)}.back{display:inline-block;font-size:12px;margin-bottom:33px}.content-grid{display:grid;grid-template-columns:1fr 2.25fr;gap:65px;padding-bottom:75px}.facts{border-top:1px solid var(--line)}.fact{border-bottom:1px solid var(--line);padding:18px 0}.fact dt{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);margin-bottom:7px}.fact dd{margin:0;font-size:14px}.prose{max-width:800px}.prose h2{font-size:28px;margin:35px 0 16px}.prose h2:first-child{margin-top:0}.prose p,.prose li{font-size:15px;color:#40534d}.prose li{margin-bottom:9px}.prose ul{padding-left:22px}.note{padding:20px 23px;background:var(--pale);border-left:3px solid var(--teal);font-size:13px;line-height:1.65;border-radius:0 8px 8px 0;margin:26px 0}.timeline{padding-bottom:65px}.role{display:grid;grid-template-columns:230px 1fr;gap:60px;padding:32px 0;border-top:1px solid var(--line)}.role time{font-size:12px;color:var(--muted)}.role h2{font-size:26px;margin-bottom:9px}.role h3{font-size:15px;letter-spacing:0;color:var(--teal)}.role p,.role li{font-size:15px;color:var(--muted)}.role ul{padding-left:20px}.resume-sheet{max-width:850px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:45px;margin-bottom:60px}.resume-sheet h2{font-size:24px;margin:30px 0 13px}.resume-sheet h3{font-size:17px;letter-spacing:0;margin-bottom:7px}.resume-sheet p,.resume-sheet li{font-size:14px}.resume-sheet ul{padding-left:22px}.resume-sheet .sub{color:var(--muted);font-size:12px}.publication{padding:30px 0;border-top:1px solid var(--line)}.publication h2{font-size:25px;line-height:1.3;margin:10px 0 16px}.publication .authors{font-size:13px;color:var(--muted)}.publication>p{max-width:850px;font-size:15px}.pub-badge{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--teal);font-weight:700}.copy-status{font-size:12px;color:var(--teal);min-height:20px}.citation{font-size:12px;color:var(--muted);padding:14px 18px;background:var(--pale);margin-top:18px}.citation summary{cursor:pointer;font-weight:600}.citation p{margin:12px 0 0;overflow-wrap:anywhere}.small{font-size:12px;color:var(--muted)}
@media(min-width:1400px){.hero h1{font-size:74px}}@media(max-width:1000px){.container{width:calc(100% - 48px)}nav{gap:17px}.hero{gap:35px}.hero h1{font-size:53px}.hero{padding-top:55px}.cards{grid-template-columns:1fr 1fr}.cards .mini-card:last-child{grid-column:1/-1}.cap-grid{gap:35px}.contact{gap:25px}.content-grid{gap:35px}}
@media(max-width:720px){html{scroll-padding-top:135px}.container{width:calc(100% - 36px)}.nav-wrap{flex-direction:column;align-items:flex-start;gap:7px;padding:12px 0}.brand{font-size:14px}.brand-mark{font-size:24px}nav{width:100%;gap:0;justify-content:space-between;font-size:11px}nav .nav-contact{border:none;padding:8px 0}.hero{grid-template-columns:1fr;padding:43px 0 35px;gap:30px}.hero h1{font-size:clamp(40px,10vw,63px);max-width:560px}.hero-intro{font-size:16px}.hero-meta{font-size:12px}.signal-card{transform:none;max-width:470px;width:100%;padding:24px}.signal-plot{max-height:160px}.proof-strip{gap:12px;padding:20px 0}.proof-strip>div{padding-right:8px}.proof-strip strong{font-size:20px}.proof-strip span{font-size:10px;display:block;line-height:1.5;margin-top:5px}.section{padding:48px 0}.section-heading{display:block}.section-heading p{margin-top:18px}.featured{grid-template-columns:1fr}.project-art{min-height:280px;padding:25px}.project-copy{padding:26px}.project-copy h3{font-size:27px}.cards{grid-template-columns:1fr}.cards .mini-card:last-child{grid-column:auto}.card-index{margin-bottom:21px}.cap-grid{grid-template-columns:1fr;gap:20px}.cap-grid h2{font-size:32px}.skill-row{grid-template-columns:1fr;gap:7px}.pub-row{grid-template-columns:40px 1fr 20px;gap:13px}.pub-row h3{font-size:17px}.contact{grid-template-columns:1fr;padding:30px 25px;gap:27px;margin-bottom:45px}.contact h2{font-size:32px}.contact-links>a{font-size:13px}.footer-inner{padding:22px 0;flex-direction:column;align-items:start;gap:13px}.footer-inner>div{gap:20px;flex-wrap:wrap}.page-head{padding:43px 0 25px}.lede{font-size:17px}.content-grid{grid-template-columns:1fr;gap:25px}.facts{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.role{grid-template-columns:1fr;gap:12px;padding:26px 0}.resume-sheet{padding:25px}.publication h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.header,.footer,.actions,.skip,.back,.contact{display:none}body{background:white;font-size:11pt}.container{width:100%}.resume-sheet{border:0;padding:0;max-width:none}a{text-decoration:none;color:inherit}.page-head{padding:0}.page-head h1{font-size:28pt}h2,h3{break-after:avoid}li{break-inside:avoid}}
@media(max-width:720px){.page-head h1{font-size:clamp(2.1rem,8.6vw,3.2rem);overflow-wrap:break-word}}
@media(max-width:720px){.nav-wrap{position:relative}nav{font-size:12px;gap:12px}nav a{padding:6px 0;white-space:nowrap}nav .nav-contact{position:absolute;right:0;top:16px;font-size:11px;white-space:nowrap;padding:0}}
@media(max-width:380px){.brand{font-size:12px;gap:8px}nav .nav-contact{font-size:10px}}
