@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--paper:#f7f7f2;--ink:#183d39;--muted:#606c67;--line:#d9ded6;--accent:#d9ef9e;--white:#fff;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:48px;line-height:1.7}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #699335;outline-offset:6px}a,button{touch-action:manipulation}.wrap{max-width:1200px;margin:auto;padding:0 40px}header{border-bottom:1px solid var(--line);background:rgba(247,247,242,.96);position:sticky;top:0;z-index:10}nav{display:flex;justify-content:space-between;align-items:center;min-height:88px}.brand{display:flex;align-items:center;font-family:Manrope,Arial,sans-serif;font-weight:750;font-size:28.5px;gap:12px}.brand-dot{color:#799946;margin-left:-10px}.monogram{display:grid;place-items:center;width:36px;height:36px;border:1px solid #87988b;border-radius:50%;font-size:18px;letter-spacing:-1px}.nav-links{display:flex;gap:32px;font-size:21px}.nav-links a:hover,.text-link:hover{color:#63812f}.hero{display:grid;grid-template-columns:1.35fr 1fr;gap:65px;padding:72px 0 58px;align-items:center}.eyebrow{font-size:15px;font-weight:700;letter-spacing:2px;display:flex;gap:9px;align-items:center;margin:0 0 24px}.status-dot{display:inline-block;width:7px;height:7px;background:#6b8d37;border-radius:50%;flex-shrink:0}h1,h2,h3,p,figure{margin-top:0}h1{font-family:Manrope,Arial,sans-serif;line-height:1.12;font-size:clamp(63px,6.75vw,91.5px);letter-spacing:-2.8px;font-weight:650;margin-bottom:26px}em{font-family:var(--serif);font-weight:400}h1 em{letter-spacing:-2px}.intro{max-width:495px;color:var(--muted);font-size:25.5px;line-height:1.8}.intro strong{color:var(--ink);font-weight:600}.hero-actions{display:flex;gap:25px;align-items:center;margin:30px 0 38px}.button{padding:13px 19px;border-radius:5px;font-size:19.5px;font-weight:600;display:inline-flex;gap:25px;align-items:center}.primary{background:var(--ink);color:white}.primary:hover{background:#315951}.text-link{font-size:19.5px;font-weight:600;display:inline-flex;gap:18px;align-items:center}.hero-note{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:15px}.hero-note>span:not(.note-line){font-size:12px;letter-spacing:1px;color:var(--muted)}.hero-note strong{font-weight:500}.note-line{height:12px;border-left:1px solid #b4bcb2;margin:0 8px}.portrait{margin:0;position:relative}.portrait-frame{position:relative;border-radius:160px 160px 10px 10px;overflow:hidden;background:#e9eee4;padding-top:0;border:1px solid #e0e4db}.portrait img{width:100%;height:460px;display:block;object-fit:cover;object-position:center 40%}.photo-label{position:absolute;bottom:17px;left:50%;transform:translateX(-50%);background:var(--paper);border:1px solid var(--line);padding:8px 14px;white-space:nowrap;border-radius:30px;font-size:15px;display:flex;gap:8px;align-items:center}figcaption{display:flex;justify-content:space-between;font-size:15px;margin-top:14px}figcaption span:last-child{font-family:var(--serif);font-style:italic;color:var(--muted)}.topic-strip{padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:16.5px;color:var(--muted)}.topic-strip i{font-size:27px;color:#91a66b;font-style:normal}.section{padding:76px 0;border-bottom:1px solid var(--line)}h2{font-family:Manrope,Arial,sans-serif;font-size:52.5px;font-weight:500;line-height:1.25;letter-spacing:-1.2px;margin-bottom:18px}.about{display:grid;grid-template-columns:1fr 1.35fr;gap:65px}.about-copy p{font-size:21px;color:var(--muted);margin-bottom:18px}.about-copy .lead{font-size:30px;color:var(--ink);line-height:1.55}.about-copy strong{font-weight:550;color:var(--ink)}.languages{border-top:1px solid var(--line);padding-top:20px;margin-top:28px;display:flex;flex-wrap:wrap;gap:22px;font-size:18px;align-items:center}.small-label{font-size:13.5px;letter-spacing:1.5px;font-weight:600}.languages small{color:var(--muted);display:block;font-size:15px}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:28px}.section-heading p:not(.eyebrow){font-size:18px;color:var(--muted)}.timeline-frame{border:1px solid var(--line);border-radius:12px;background:#ffffff69;padding:40px 38px}.timeline{list-style:none;margin:0;padding:0}.timeline li{display:grid;grid-template-columns:190px 1fr;gap:25px;position:relative}.time{font-family:Manrope,Arial,sans-serif;font-size:25.5px;font-weight:600;padding-top:3px}.time small{font-family:'DM Sans',Arial,sans-serif;display:flex;gap:6px;align-items:center;font-size:12px;letter-spacing:1.4px;margin-top:9px;color:var(--muted)}.milestone{position:relative;padding:0 0 43px 34px;border-left:1px solid #bccbb3}.milestone:before{content:'';position:absolute;top:10px;left:-5px;width:9px;height:9px;background:#8fa580;border:2px solid var(--paper);border-radius:50%}.timeline li:last-child .milestone{padding-bottom:0}.current .milestone:before{background:var(--ink);box-shadow:0 0 0 5px #e0ebd2}.milestone h3{font-size:30px;line-height:1.4;font-weight:600;margin-bottom:4px}.milestone p{font-size:19.5px;color:var(--muted);margin-bottom:13px;max-width:665px}.milestone .institution{font-size:16.5px;color:#597357;margin-bottom:16px}.tags{display:flex;flex-wrap:wrap;gap:7px}.tags span{font-size:13.5px;border:1px solid #d7e0cf;border-radius:4px;padding:4px 9px;color:#526649;background:#f4f7ef}.work-intro{color:var(--muted);font-size:21px;margin-top:-15px;margin-bottom:26px}.project-list article{display:grid;grid-template-columns:45px 1fr 150px;gap:22px;align-items:center;padding:22px 0;border-top:1px solid var(--line)}.project-number{font-family:var(--serif);font-size:24px;color:#82917f}.project-list h3{font-size:27px;font-weight:500;margin-bottom:3px}.project-list p{font-size:19.5px;color:var(--muted);margin-bottom:0}.project-kind{font-size:12px;letter-spacing:1.2px;text-align:right}.toolkit{display:grid;grid-template-columns:1fr 1.35fr;gap:65px}.cert{font-size:18px;color:var(--muted);margin-top:35px}.cert strong{font-weight:500;color:var(--ink)}.cert span{font-size:15px}.skills>div{border-bottom:1px solid var(--line);padding:0 0 15px;margin-bottom:20px}.skills>div:last-child{margin-bottom:0;border-bottom:0}.skills h3{font-size:18px;font-weight:600;margin-bottom:6px}.skills p{font-size:21px;color:var(--muted);margin-bottom:0}.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;padding:48px;background:var(--ink);color:var(--paper);margin:65px 0 35px;border-radius:12px}.contact .eyebrow{color:var(--accent)}.contact h2{font-size:48px}.contact p:not(.eyebrow){font-size:18px;color:#c0cec6}.contact-links a{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #49635a;padding:10px 0 13px;font-size:21px}.contact-links a:hover{color:var(--accent)}.contact-links small{display:block;letter-spacing:1.3px;font-size:12px;color:#b6c6b8}.contact-links a:last-child{border-bottom:0}footer{display:flex;justify-content:space-between;font-size:15px;color:var(--muted);padding-bottom:30px}.skip{position:fixed;top:-100px;left:20px;background:white;z-index:100;padding:10px}.skip:focus{top:10px}@media(min-width:1500px){.hero{padding-top:85px;padding-bottom:75px}}@media(max-width:900px){.wrap{padding:0 25px}.hero{gap:30px}.portrait img{height:410px}.hero-note{max-width:300px}.section{padding:55px 0}.about,.toolkit{gap:35px;grid-template-columns:1fr 1.25fr}.contact{gap:30px;padding:32px}.timeline li{grid-template-columns:155px 1fr;gap:12px}.timeline-frame{padding:30px 25px}.project-list article{grid-template-columns:25px 1fr 100px;gap:16px}h2{font-size:45px}}@media(max-width:640px){html{scroll-padding-top:85px}.wrap{padding:0 21px}nav{min-height:76px;flex-wrap:wrap;gap:10px;padding-top:12px!important;padding-bottom:12px!important}.brand{font-size:24px}.monogram{width:28px;height:28px}.nav-links{gap:15px;font-size:16.5px}.hero{grid-template-columns:1fr;padding:40px 0 30px;gap:30px}h1{font-size:72px;letter-spacing:-2px}.eyebrow{font-size:13.5px;letter-spacing:1.5px}.intro{font-size:22.5px}.hero-actions{margin:25px 0}.hero-note{max-width:none}.portrait{max-width:360px;width:100%;margin:auto}.portrait img{height:390px}.portrait-frame{border-radius:140px 140px 8px 8px}.topic-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:15px}.topic-strip i{display:none}.about,.toolkit{grid-template-columns:1fr;gap:15px}.section-heading{display:block}.section-heading .text-link{margin:8px 0}.section-heading p:not(.eyebrow) br{display:none}.timeline-frame{padding:25px 20px}.timeline li{grid-template-columns:1fr;gap:12px;padding-left:16px;border-left:1px solid #bccbb3}.milestone{border-left:0;padding:0 0 36px 0}.milestone:before{left:-21px;top:-40px}.time{font-size:22.5px}.time small{margin-top:3px}.milestone h3{font-size:27px}.milestone p{font-size:18px}.project-list article{grid-template-columns:22px 1fr;gap:12px}.project-kind{grid-column:2;text-align:left;margin-top:-4px}.project-list h3{font-size:25.5px}.project-list p{font-size:18px}.contact{grid-template-columns:1fr;gap:15px;margin:40px 0 25px;padding:28px 22px}.contact h2{font-size:43.5px}.contact-links a{font-size:19.5px}.cert{margin-top:20px}.work-intro{margin-top:0}.section{padding:43px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
