:root{--ink:#122f32;--soft:#576c6c;--mint:#b8e9ca;--mint-light:#e7f5ec;--paper:#f7f8f4;--line:#dbe4de;--white:#fff;--container:1240px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color-scheme:light;font-synthesis:none}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-underline-offset:5px}svg{display:block;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.08;letter-spacing:-.045em}h2{font-size:clamp(2.2rem,4vw,3.5rem)}h2>span{color:#69847b}h3{font-size:1.4rem;line-height:1.25}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #398b62;outline-offset:6px}.container{width:min(var(--container),calc(100% - 96px));margin-inline:auto}.skip-link{position:fixed;top:12px;left:12px;z-index:100;padding:12px 20px;background:var(--mint);transform:translateY(-160%)}.skip-link:focus{transform:none}.site-header{position:sticky;top:0;z-index:30;background:#f7f8f4f5;border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:94px;gap:30px}.identity{display:inline-flex;align-items:center;gap:14px;text-decoration:none;font-size:.95rem;font-weight:600;line-height:1.4}.identity-mark{display:flex;align-items:center;justify-content:center;width:48px;height:48px;flex:none;border-radius:13px;background:var(--ink);color:#fff;font-size:1.4rem;letter-spacing:-.09em;font-weight:650}.identity-mark>span{color:var(--mint)}.identity small{display:block;font-size:.56rem;letter-spacing:.16em;font-weight:500;margin-top:5px;color:var(--soft)}.navigation{display:flex;align-items:center;gap:32px}.navigation>a{text-decoration:none;font-size:.85rem;color:var(--soft);padding-block:10px}.navigation>a:hover,.navigation>a[aria-current]{color:var(--ink)}.navigation .nav-contact{color:var(--ink);border:1px solid #b8c8be;border-radius:5px;padding:10px 18px}.nav-contact>span{margin-left:18px}.menu-toggle{display:none}.hero{padding-top:62px}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:76px;align-items:center;padding-bottom:64px}.eyebrow{font-size:.66rem;line-height:1.5;letter-spacing:.15em;font-weight:650;margin-bottom:24px}.hero .eyebrow{display:flex;align-items:center;gap:10px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#4e9b6c;flex:none}h1{font-size:clamp(4.1rem,7.7vw,7rem);line-height:.98;letter-spacing:-.065em}h1>span{color:#6cad83}.hero-role{font-size:clamp(1.5rem,2.4vw,2.15rem);line-height:1.25;letter-spacing:-.035em;font-weight:500;margin-top:26px;max-width:480px}.hero-intro{font-size:.98rem;line-height:1.85;color:var(--soft);margin-top:22px;max-width:510px}.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:51px;padding:13px 19px;border:1px solid transparent;border-radius:5px;text-decoration:none;font-size:.8rem;font-weight:600;line-height:1.6}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:#28504b}.button-outline{background:transparent;border-color:#c7d4ca;color:var(--ink)}.button-outline:hover{background:var(--mint-light)}.hero-footnote{display:flex;align-items:center;gap:13px;margin-top:30px}.mini-mark{display:flex;align-items:center;justify-content:center;width:31px;height:31px;border:1px solid #a8c7b1;border-radius:50%;color:#43845a;font-size:.8rem}.hero-footnote p{font-size:.75rem;line-height:1.7}.hero-footnote p>span{color:var(--soft);font-size:.7rem}.profile-system{background:var(--ink);color:white;border-radius:12px;overflow:hidden;box-shadow:0 22px 50px -30px #153a3466;border:1px solid #224943;transform:rotate(1deg)}.system-top{display:flex;align-items:center;gap:15px;padding:20px 22px;border-bottom:1px solid #ffffff1a;font-size:.54rem;letter-spacing:.1em;color:#abc7bd;line-height:1.5}.system-lights{display:flex;gap:5px;flex:none}.system-lights i{width:5px;height:5px;border-radius:50%;background:#577d70}.system-lights i:first-child{background:var(--mint)}.system-code{margin-left:auto;white-space:nowrap}.system-map{position:relative;padding:32px 24px 26px;background-image:radial-gradient(#a9dbc318 1px,transparent 1px);background-size:18px 18px}.system-lines{position:absolute;inset:0;width:100%;height:100%;stroke:#6fa38a55;stroke-width:1}.system-lines circle{fill:#b8e9ca;stroke:none}.core-node{position:relative;display:flex;align-items:center;justify-content:center;gap:20px;padding-bottom:29px;z-index:1}.core-node>span{display:flex;align-items:center;justify-content:center;width:66px;height:66px;border:1px solid #80b99b66;background:#214a40;border-radius:18px;color:#fff;font-size:2.1rem;letter-spacing:-.09em;font-weight:600}.core-node>span>span{color:var(--mint)}.core-node p{font-size:.82rem;line-height:1.65;color:#cfdfd7}.system-nodes{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:16px}.system-node{display:grid;grid-template-columns:1fr auto;align-items:center;row-gap:12px;text-align:left;background:#193d36;box-shadow:0 0 0 4px #122f32;border:1px solid #8ec5a43b;color:white;padding:18px 17px;border-radius:7px;transition:background .18s,border-color .18s}.node-index{color:#86af9b;font-size:.59rem;letter-spacing:.1em}.system-node>svg{width:23px;height:23px;color:var(--mint)}.system-node>strong{grid-column:1/-1;font-size:.88rem;font-weight:500;line-height:1.3;letter-spacing:-.02em}.system-node>small{grid-column:1/-1;color:#a7c2b5;font-size:.58rem;line-height:1.5;min-height:1.75em}.system-node:hover,.system-node[aria-pressed=true]{background:#245846;border-color:#b8e9ca}.system-bottom{display:flex;align-items:center;gap:9px;padding:16px 24px;border-top:1px solid #ffffff1a;background:#10292c;font-size:.62rem;color:#b4d1c0}.system-bottom>span:last-child{margin-left:auto;color:var(--mint)}.technology-strip{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px 30px;min-height:91px;border-top:1px solid var(--line);padding-block:25px}.technology-strip>span{color:#62776b;font-size:.81rem;font-weight:550;letter-spacing:-.01em}.section{padding-block:100px}.profile-section{background:#fff;border-block:1px solid var(--line)}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.section-aside{font-size:.87rem;line-height:1.8;color:var(--soft);max-width:340px;margin-top:25px}.profile-copy{padding-top:42px}.profile-copy p{font-size:1rem;color:var(--soft);line-height:1.9;margin-bottom:20px}.profile-copy p:first-child{font-size:1.14rem;color:var(--ink);line-height:1.75}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:.8rem;font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px;line-height:1.6}.profile-copy>.text-link{margin-top:9px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:38px}.section-heading>p{font-size:.91rem;color:var(--soft);max-width:300px;line-height:1.8;padding-bottom:4px}.filters{display:flex;flex-wrap:wrap;gap:9px}.filters>button{font-size:.76rem;font-weight:550;padding:10px 18px;min-height:43px;border:1px solid #cbd9ce;background:transparent;border-radius:5px;color:var(--soft);line-height:1.6}.filters>button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.filters>button:hover{border-color:#4b8063}.filter-status{font-size:.7rem;color:var(--soft);margin-top:17px;margin-bottom:22px;min-height:20px}.skill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.skill-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:28px;min-height:255px;display:flex;flex-direction:column}.skill-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.skill-card-top>span{font-size:.64rem;color:#5c7667;letter-spacing:.05em}.skill-icon{width:31px;height:31px;color:#447f5d}.skill-card h3{font-size:1.3rem;margin-bottom:14px}.skill-card>p{font-size:.86rem;color:var(--soft);line-height:1.8;margin-bottom:24px}.skill-tags{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0;margin-top:auto}.skill-tags>li{font-size:.65rem;line-height:1.5;background:#f0f6f0;padding:5px 9px;border:1px solid #e1ebe3;border-radius:4px;color:#42644e}.experience-section{background:#fff;border-block:1px solid var(--line)}.text-button{padding:11px 0;background:transparent;border:0;border-bottom:1px solid #82988b;color:var(--ink);font-size:.76rem;line-height:1.6;white-space:nowrap}.experience-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:52px;align-items:start}.experience-details{border-top:1px solid var(--line);padding-block:25px}.experience-details:last-child{border-bottom:1px solid var(--line)}.experience-details>summary{display:flex;align-items:flex-start;gap:20px;list-style:none;cursor:pointer}.experience-details>summary::-webkit-details-marker{display:none}.experience-marker{height:11px;width:11px;background:#a7d5b5;border:3px solid #e8f5eb;border-radius:50%;flex:none;margin-top:6px}.experience-details summary small{display:block;font-size:.58rem;font-weight:600;letter-spacing:.14em;color:#536f5b;margin-bottom:10px;line-height:1.5}.experience-details summary strong{display:block;font-size:1.65rem;font-weight:550;letter-spacing:-.04em;line-height:1.25}.experience-details summary span>span{display:block;font-size:.8rem;color:var(--soft);margin-top:7px}.expand-icon{margin-left:auto;flex:none;font-size:1.1rem;line-height:1.4}.experience-details[open] .expand-icon{transform:rotate(45deg)}.experience-description{padding:24px 0 3px 31px;font-size:.86rem;color:var(--soft);line-height:1.85}.experience-description ul{padding-left:19px;margin-block:15px 22px}.experience-description li{padding-left:3px;margin-block:4px}.experience-description .text-link{color:var(--ink);font-size:.76rem}.credential-card{border:1px solid #c5dfce;border-radius:9px;background:linear-gradient(130deg,#edf7ef,#f9fcf7);padding:34px}.credential-seal{width:49px;height:49px;margin-bottom:28px;color:#4b8c61}.credential-seal>svg{width:100%;height:100%}.credential-card .eyebrow{font-size:.58rem;margin-bottom:14px}.credential-card h3{font-size:1.8rem;line-height:1.15;letter-spacing:-.04em;max-width:270px}.credential-card>p:not(.eyebrow){font-size:.84rem;color:var(--soft);margin-top:17px;line-height:1.8}.credential-extra{margin-top:26px;padding-top:19px;border-top:1px solid #d6e6d9}.credential-extra>span{display:block;font-size:.61rem;letter-spacing:.06em;color:var(--soft);margin-bottom:6px}.credential-extra>strong{font-size:.9rem;font-weight:550}.contact-section{background:var(--ink);color:#fff}.contact-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:100px;align-items:center}.contact-section .eyebrow{color:#92bda3}.contact-section h2{font-size:clamp(2.5rem,4.3vw,3.75rem);line-height:1.13}.contact-section h2>span{color:var(--mint)}.contact-grid>div>p:last-child{font-size:.9rem;color:#b0c8bb;margin-top:23px;max-width:400px;line-height:1.8}.contact-card{border-left:1px solid #ffffff25;padding-left:50px}.contact-label{display:block;font-size:.58rem;letter-spacing:.16em;color:#a4c1b0;margin-bottom:16px}.email-link{font-size:clamp(1.25rem,2.1vw,1.9rem);font-weight:500;letter-spacing:-.035em;overflow-wrap:anywhere}.contact-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:22px}.copy-button{display:inline-flex;align-items:center;gap:9px;border:1px solid #6b988055;background:#21483b;color:#d4ecdc;border-radius:4px;padding:9px 12px;font-size:.71rem;min-height:39px}.copy-button:hover{background:#2a5b48}.contact-actions>a{font-size:.73rem;color:#b5d8c1;text-decoration:none}.copy-status{font-size:.7rem;min-height:22px;color:var(--mint);margin-top:9px}.contact-name{font-size:.85rem;margin-top:16px}.contact-name>span{display:block;font-size:.7rem;color:#9ab6a5;margin-top:4px}.site-footer{padding-block:30px;background:#0d2427;color:#b8cebf}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:24px}.site-footer .identity-mark{background:#1f4238;width:38px;height:38px;font-size:1.2rem;border-radius:10px}.site-footer .identity{font-size:.78rem;gap:11px}.site-footer .identity small{font-size:.48rem;color:#7da28b}.footer-copy{font-size:.65rem;color:#8aa893}.site-footer .text-link{font-size:.65rem;font-weight:400;border-bottom:0;gap:17px}.js .filters{display:flex}.filters,.print-trigger,.copy-button,#expand-experience{visibility:hidden}.js .filters,.js .print-trigger,.js .copy-button,.js #expand-experience{visibility:visible}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.hero-grid{gap:40px}.navigation{gap:24px}.hero-actions{gap:10px}.button{font-size:.74rem;padding-inline:14px;gap:12px}.profile-grid{gap:60px}.skill-card{padding:23px}.experience-grid{gap:32px}.contact-grid{gap:50px}.contact-card{padding-left:35px}.system-map{padding:27px 18px 23px}.system-node{padding:16px 13px}.system-top{padding-inline:18px}.system-top>span:nth-child(2){font-size:.48rem}}
@media(max-width:900px){.hero-grid{grid-template-columns:1.05fr 1fr;gap:28px}h1{font-size:5rem}.hero-role{font-size:1.65rem}.hero-intro{font-size:.9rem}.header-inner{min-height:82px}.navigation{gap:20px}.navigation>a{font-size:.76rem}.navigation .nav-contact{padding:9px 12px}.identity-name{font-size:.83rem}.identity-mark{width:43px;height:43px}.hero{padding-top:45px}.system-top>span:nth-child(2){font-size:.43rem;letter-spacing:.05em}.system-top{gap:9px}.system-code{display:none}.core-node{gap:14px;padding-bottom:25px}.core-node>span{width:55px;height:55px;font-size:1.8rem}.core-node p{font-size:.72rem}.system-node>strong{font-size:.78rem}.system-node>small{font-size:.52rem}.system-bottom{font-size:.54rem;padding-inline:18px}.system-nodes{gap:12px}.system-node{row-gap:10px}.system-node>svg{width:21px;height:21px}.section{padding-block:75px}.profile-grid{gap:40px}.profile-copy{padding-top:36px}.profile-copy p{font-size:.93rem}.profile-copy p:first-child{font-size:1.05rem}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-grid{grid-template-columns:1.2fr 1fr;gap:28px}.credential-card{padding:26px}.credential-card h3{font-size:1.55rem}.contact-grid{gap:35px}.contact-card{padding-left:28px}.email-link{font-size:1.35rem}}
@media(max-width:760px){html{scroll-padding-top:92px}.container{width:calc(100% - 40px)}.header-inner{min-height:78px;position:relative}.identity{gap:11px}.identity-name{font-size:.83rem}.identity small{font-size:.48rem}.identity-mark{width:42px;height:42px;border-radius:12px;font-size:1.3rem}.menu-toggle{display:flex;align-items:center;gap:8px;background:transparent;border:0;color:var(--ink);font-size:.76rem;padding:12px 0 12px 14px;min-height:44px}.navigation{position:absolute;top:100%;left:-20px;right:-20px;display:none;flex-direction:column;align-items:stretch;gap:0;background:var(--paper);border-block:1px solid var(--line);padding:12px 20px 20px}.navigation.is-open{display:flex}.navigation>a{padding:12px 4px;font-size:.95rem;min-height:48px}.navigation .nav-contact{padding:12px 4px;border:0;color:var(--ink)}.nav-contact>span{margin-left:10px}.hero{padding-top:37px}.hero-grid{grid-template-columns:1fr;gap:38px;padding-bottom:35px}.eyebrow{font-size:.59rem;margin-bottom:22px}.hero h1{font-size:clamp(4.2rem,16vw,6.3rem);line-height:1}.hero-role{font-size:1.75rem;max-width:440px;margin-top:22px}.hero-intro{font-size:.93rem;max-width:530px;margin-top:18px}.hero-actions{margin-top:24px;gap:10px}.button{font-size:.75rem;min-height:49px;padding:12px 15px}.hero-footnote{margin-top:25px}.hero-footnote p{font-size:.72rem}.hero-footnote p>span{font-size:.65rem}.profile-system{transform:none;max-width:550px;width:100%;justify-self:center;border-radius:9px}.system-top{padding:17px 20px;gap:13px}.system-top>span:nth-child(2){font-size:.5rem;letter-spacing:.09em}.system-code{display:block}.system-map{padding:26px 20px 22px}.core-node{padding-bottom:26px;gap:17px}.core-node>span{width:60px;height:60px}.core-node p{font-size:.78rem}.system-nodes{gap:14px}.system-node{padding:17px 15px;row-gap:11px}.system-node>strong{font-size:.86rem}.system-node>small{font-size:.57rem}.system-bottom{padding:15px 20px;font-size:.59rem}.technology-strip{justify-content:flex-start;gap:16px 26px;padding-block:25px;min-height:auto}.technology-strip>span{font-size:.72rem}.section{padding-block:58px}h2{font-size:2.35rem;line-height:1.12}.profile-grid{grid-template-columns:1fr;gap:26px}.section-aside{margin-top:20px;max-width:500px;font-size:.84rem}.profile-copy{padding-top:0}.profile-copy p{font-size:.91rem;line-height:1.85}.profile-copy p:first-child{font-size:1.06rem}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:20px;max-width:500px;font-size:.88rem}.filters{gap:7px}.filters>button{font-size:.7rem;padding:9px 12px;min-height:41px}.filter-status{font-size:.65rem;margin-top:15px;margin-bottom:18px}.skill-grid{gap:12px}.skill-card{padding:22px;min-height:245px}.skill-card h3{font-size:1.25rem}.skill-card>p{font-size:.83rem}.skill-card-top{margin-bottom:23px}.skill-tags>li{font-size:.62rem;padding:4px 7px}.experience-grid{grid-template-columns:1fr;gap:28px}.text-button{margin-top:24px;font-size:.72rem}.experience-details summary strong{font-size:1.5rem}.experience-description{font-size:.83rem}.credential-card{padding:28px}.credential-card h3{max-width:300px;font-size:1.75rem}.credential-seal{margin-bottom:22px}.contact-grid{grid-template-columns:1fr;gap:32px}.contact-section h2{font-size:2.75rem}.contact-grid>div>p:last-child{font-size:.87rem;max-width:500px}.contact-card{padding-top:28px;padding-left:0;border-left:0;border-top:1px solid #ffffff25}.email-link{font-size:clamp(1.25rem,5.6vw,1.85rem)}.contact-actions{gap:22px}.footer-inner{flex-wrap:wrap;gap:24px}.footer-copy{order:3;flex-basis:100%;font-size:.6rem}.site-footer .text-link{font-size:.65rem;margin-left:auto}.site-footer{padding-block:27px}.site-footer .identity{font-size:.75rem}}
@media(max-width:440px){.skill-grid{grid-template-columns:1fr}.skill-card{min-height:unset;padding:25px}.skill-card-top{margin-bottom:22px}.skill-card h3{font-size:1.35rem}.skill-card>p{font-size:.86rem}.skill-tags>li{font-size:.65rem}.hero-actions{align-items:stretch;flex-direction:column;max-width:350px}.button{font-size:.78rem;justify-content:space-between;padding-inline:18px}.system-code{display:none}.system-top>span:nth-child(2){font-size:.46rem}.system-map{padding-inline:15px}.system-node{padding:15px 12px}.system-node>small{font-size:.5rem}.system-node>strong{font-size:.79rem}.system-bottom{font-size:.54rem;padding-inline:16px}.system-lights i{width:4px;height:4px}.technology-strip{column-gap:23px}.technology-strip>span{font-size:.68rem}.contact-section h2{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
@page{size:A4;margin:14mm}
@media print{html{scroll-behavior:auto;scroll-padding-top:0}body{background:#fff;color:#152a2c;font-size:9pt;line-height:1.5}.container{width:100%;max-width:none}.site-header{position:static;background:#fff;border-bottom:1px solid #ccd6cc}.header-inner{min-height:55px}.identity-mark{width:35px;height:35px;font-size:16pt}.identity-name{font-size:10pt}.identity small{font-size:6pt}.navigation,.menu-toggle,.skip-link,.profile-system,.hero-actions,.filters,.filter-status,.text-button,.copy-button,.copy-status,.site-footer .text-link,.text-link,.contact-actions{display:none!important}.hero{padding-top:22px}.hero-grid{display:block;padding-bottom:20px}.hero .eyebrow{font-size:7pt;margin-bottom:10px}h1,.hero h1{font-size:34pt;line-height:1.05;letter-spacing:-.05em}h1 br{display:none}.hero-role{font-size:15pt;margin-top:10px;max-width:none}.hero-intro{font-size:9pt;margin-top:10px;max-width:none;line-height:1.5}.hero-footnote{margin-top:12px}.hero-footnote p,.hero-footnote p>span{font-size:7pt}.mini-mark{width:23px;height:23px}.technology-strip{min-height:auto;padding-block:12px;gap:10px;justify-content:flex-start}.technology-strip>span{font-size:7pt}.section{padding-block:23px;border-color:#ccd6cc;background:#fff!important}.eyebrow{font-size:6.5pt;margin-bottom:9px}h2,.contact-section h2{font-size:19pt;line-height:1.15}h2>span,.contact-section h2>span{color:#304e3b}.profile-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:25px}.section-aside{font-size:8pt;margin-top:12px}.profile-copy{padding-top:0}.profile-copy p,.profile-copy p:first-child{font-size:8.5pt;line-height:1.5;margin-bottom:9px}.section-heading{margin-bottom:15px}.section-heading>p{font-size:8pt;max-width:260px}.skill-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.skill-card{padding:13px;min-height:unset;break-inside:avoid;border-radius:3px;background:#fff}.skill-card-top{margin-bottom:8px}.skill-card-top>span{font-size:6pt}.skill-icon{width:21px;height:21px}.skill-card h3{font-size:11pt;margin-bottom:7px}.skill-card>p{font-size:8pt;line-height:1.45;margin-bottom:9px}.skill-tags>li{font-size:6.5pt;padding:3px 6px}.experience-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:20px;align-items:start}.experience-details{padding-block:12px;break-inside:avoid}.experience-details>summary{gap:10px}.experience-details summary small{font-size:6pt;margin-bottom:5px}.experience-details summary strong{font-size:14pt}.experience-details summary span>span{font-size:8pt;margin-top:4px}.expand-icon{display:none}.experience-marker{width:8px;height:8px;margin-top:3px}.experience-description{font-size:8pt;padding:12px 0 0 18px;line-height:1.5}.experience-description ul{margin-block:8px 0}.credential-card{padding:17px;background:#f1f7f0!important;break-inside:avoid}.credential-seal{width:32px;height:32px;margin-bottom:13px}.credential-card .eyebrow{font-size:6pt;margin-bottom:8px}.credential-card h3{font-size:15pt;max-width:none}.credential-card>p:not(.eyebrow){font-size:8pt;line-height:1.5;margin-top:10px}.credential-extra{margin-top:12px;padding-top:10px}.credential-extra>span{font-size:6pt}.credential-extra>strong{font-size:8pt}.contact-section{color:var(--ink);break-inside:avoid}.contact-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.contact-section .eyebrow,.contact-grid>div>p:last-child{color:var(--soft)}.contact-grid>div>p:last-child{font-size:8pt;line-height:1.5;margin-top:12px}.contact-card{padding:0 0 0 20px;border:0;border-left:1px solid #ccd6cc}.contact-label{font-size:6pt;color:var(--soft);margin-bottom:9px}.email-link{font-size:12pt}.contact-name{font-size:8pt;margin-top:14px}.contact-name>span{font-size:7pt;color:var(--soft)}.site-footer{background:#fff;color:var(--ink);padding-block:15px;border-top:1px solid #ccd6cc}.footer-inner{flex-wrap:nowrap;gap:15px}.footer-copy{order:0;flex-basis:auto;font-size:6pt;color:var(--soft)}.site-footer .identity-mark{background:var(--ink);width:30px;height:30px;font-size:13pt}.site-footer .identity{font-size:8pt}.site-footer .identity small{font-size:5pt}a[href^=mailto]{text-decoration:none}h2,h3{break-after:avoid}p{orphans:3;widows:3}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

@media(max-width:760px){html:not(.js) .navigation{position:static;display:flex;padding:10px 0;border:0}html:not(.js) .header-inner{flex-wrap:wrap}html:not(.js) .menu-toggle{display:none}html:not(.js) .navigation{width:100%}}
@media(max-width:360px){.hero h1{font-size:3.9rem}.system-node>strong{font-size:.71rem}}

.system-node{text-decoration:none}

/* Career, education and qualifications. */
.career-timeline{list-style:none;margin:0 0 22px;padding:0}.career-timeline>li{position:relative;border-left:1px solid #cbded0;padding:0 0 25px 24px;margin-left:4px}.career-timeline>li:last-child{padding-bottom:0;border-left-color:transparent}.career-timeline>li:before{content:"";position:absolute;top:6px;left:-4px;width:7px;height:7px;background:#78aa88;border-radius:50%;box-shadow:0 0 0 4px #fff}.career-date{display:block;font-size:.63rem;letter-spacing:.04em;font-weight:650;color:#4b7959;margin-bottom:7px;line-height:1.5}.career-timeline h4{margin:0 0 5px;font-size:1.02rem;font-weight:550;letter-spacing:-.02em;color:var(--ink);line-height:1.4}.career-timeline p{font-size:.78rem;line-height:1.7;color:var(--soft)}.education-language-block{margin-top:45px}.education-language-block>h3{font-size:1.65rem;line-height:1.2}
.experience-list{min-width:0}.experience-details>summary>span:nth-child(2){min-width:0;flex:1}.experience-details summary strong{font-size:1.5rem;overflow-wrap:break-word}.experience-details summary small{font-size:.63rem;letter-spacing:.09em}.experience-details summary span>span{overflow-wrap:break-word}.experience-details .expand-icon{margin-left:0}.experience-description{overflow-wrap:break-word}.experience-description p+p{margin-top:12px}.education-section{background:var(--paper)}.education-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.education-card{min-width:0;padding:32px;background:#fff;border:1px solid var(--line);border-radius:8px}.education-year{display:inline-block;font-size:.72rem;font-weight:650;letter-spacing:.08em;color:#42694e;background:var(--mint-light);padding:5px 11px;border-radius:4px;margin-bottom:25px}.education-card h3{font-size:1.65rem;line-height:1.2;margin-bottom:11px}.education-school{font-size:.92rem;color:var(--ink);font-weight:550;line-height:1.7}.education-card>p:not(.education-year):not(.education-school){font-size:.85rem;color:var(--soft);line-height:1.8;margin-top:12px}.education-specialties{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin:22px 0 0;padding:0}.education-specialties>li{font-size:.72rem;line-height:1.6;border:1px solid #d9e7dc;border-radius:4px;background:#f4f8f3;color:#42644e;padding:6px 10px}.qualifications-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin:55px 0 24px}.qualifications-heading h3{font-size:1.65rem;line-height:1.2}.qualifications-heading>p{max-width:360px;font-size:.83rem;color:var(--soft);line-height:1.8}.certificate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.certificate-card{min-width:0;display:flex;flex-direction:column;padding:26px;border:1px solid var(--line);border-radius:8px;background:#fff}.certificate-kind{font-size:.58rem;font-weight:650;letter-spacing:.1em;line-height:1.7;text-transform:uppercase;color:#4c765a;margin-bottom:16px}.certificate-card h4{margin:0 0 20px;font-size:1.05rem;font-weight:600;letter-spacing:-.025em;line-height:1.4;overflow-wrap:break-word}.certificate-issuer{margin-top:auto;font-size:.74rem;line-height:1.8;color:var(--soft);overflow-wrap:break-word}.language-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}.language-item{padding:20px 24px;border:1px solid var(--line);border-radius:6px;background:#fff;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 20px}.language-item strong{font-size:.9rem;font-weight:550}.language-item>span{font-size:.78rem;color:var(--soft)}
@media(max-width:1100px){.certificate-card{padding:22px}.education-card{padding:28px}.navigation{gap:20px}}
@media(max-width:900px){.navigation{gap:15px}.navigation .nav-contact{padding-inline:10px}.certificate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-details>summary{gap:15px}.experience-details summary strong{font-size:1.35rem}.experience-description{padding-left:26px}.education-grid{gap:16px}.education-card{padding:25px}.language-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.navigation{gap:0}.navigation .nav-contact{padding-inline:4px}.experience-details>summary{gap:15px}.experience-details summary strong{font-size:1.4rem}.education-card h3{font-size:1.5rem}.education-year{margin-bottom:20px}.qualifications-heading{display:block;margin-top:38px}.qualifications-heading h3{font-size:1.5rem}.qualifications-heading>p{max-width:500px;margin-top:13px}.certificate-card{padding:23px}.certificate-card h4{font-size:1rem}.certificate-kind{font-size:.56rem}.certificate-issuer{font-size:.72rem}}
@media(max-width:560px){.education-grid,.certificate-grid,.language-list{grid-template-columns:1fr}.education-card{padding:27px}.certificate-card{padding:24px}.certificate-card h4{margin-bottom:15px}.experience-details{padding-block:23px}.experience-details summary small{font-size:.6rem}.experience-details summary strong{font-size:1.32rem;line-height:1.3}.experience-details summary span>span{font-size:.78rem}.experience-description{padding:19px 0 2px 26px}.language-item{padding:18px 23px}}
@media print{.experience-grid{display:block}.experience-details{padding-block:10px}.experience-details>summary{gap:10px}.experience-details summary small{font-size:6pt;letter-spacing:.06em;margin-bottom:4px}.experience-details summary strong{font-size:12pt;line-height:1.25}.experience-details summary span>span{font-size:8pt}.experience-description{padding:9px 0 0 18px;font-size:8pt;line-height:1.45}.experience-description p+p{margin-top:7px}.credential-card{margin-top:14px;padding:13px}.credential-seal{display:none}.credential-card .eyebrow{margin-bottom:5px}.credential-card h3{font-size:12pt}.credential-card>p:not(.eyebrow){margin-top:7px;font-size:8pt}.credential-extra{margin-top:8px;padding-top:8px}.education-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.education-card{padding:13px;border-radius:3px;break-inside:avoid}.education-year{font-size:7pt;padding:3px 7px;margin-bottom:10px}.education-card h3{font-size:12pt;line-height:1.25;margin-bottom:7px}.education-school{font-size:8pt;line-height:1.45}.education-card>p:not(.education-year):not(.education-school){font-size:8pt;line-height:1.45;margin-top:7px}.education-specialties{gap:5px;margin-top:10px}.education-specialties>li{font-size:6.5pt;padding:3px 6px}.qualifications-heading{display:block;margin:20px 0 12px;break-after:avoid}.qualifications-heading h3{font-size:13pt}.qualifications-heading>p{max-width:none;font-size:7.5pt;line-height:1.45;margin-top:6px}.certificate-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.certificate-card{padding:12px;border-radius:3px;break-inside:avoid}.certificate-kind{font-size:5.5pt;letter-spacing:.06em;margin-bottom:7px}.certificate-card h4{font-size:9pt;line-height:1.3;margin-bottom:8px;break-after:avoid}.certificate-issuer{font-size:7pt;line-height:1.4}.language-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}.language-item{padding:10px 12px;border-radius:3px;break-inside:avoid}.language-item strong{font-size:8pt}.language-item>span{font-size:7pt}}
@media(max-width:760px){.education-language-block{margin-top:35px}.education-language-block>h3{font-size:1.5rem}.career-timeline>li{padding-left:20px}.career-timeline h4{font-size:.98rem}}
@media print{.career-timeline{margin:0 0 10px}.career-timeline>li{padding:0 0 11px 15px;break-inside:avoid}.career-timeline>li:before{width:5px;height:5px;top:4px;left:-3px;box-shadow:0 0 0 3px #fff}.career-date{font-size:6pt;margin-bottom:3px}.career-timeline h4{font-size:9pt;line-height:1.3;margin-bottom:3px}.career-timeline p{font-size:7pt;line-height:1.4}.education-language-block{margin-top:20px;break-inside:avoid}.education-language-block>h3{font-size:13pt}}

.certificate-description{font-size:.77rem;line-height:1.7;color:var(--soft);margin-top:12px}.credential-card>.text-link{margin-top:18px}
@media print{.certificate-description{font-size:7pt;line-height:1.45;margin-top:7px}}
