:root{--background:#fafaf8;--text:#171817;--body:#444743;--muted:#777b76;--line:#dedfdc;--soft:#f3f3f0;--sans:"Inter", "Helvetica Neue", Helvetica, Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--background)}body{background:var(--background);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;font-weight:400;line-height:1.7}::selection{background:#dfe8dd}a{color:inherit;border-bottom:1px solid var(--line);text-decoration:none;transition:border-color .15s,color .15s}a:hover{color:#000;border-color:var(--text)}h1,h2,h3,h4,p{margin-top:0}main{width:min(720px,100% - 40px);margin:0 auto}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:32px;padding:62px 0 30px;display:flex}.identity{border:0;flex-direction:column;gap:1px;display:flex}.identity strong{letter-spacing:-.01em;font-size:15px;font-weight:500}.identity span{color:var(--muted);font-size:12px}.topbar nav{flex-wrap:wrap;justify-content:flex-end;gap:6px 16px;padding-top:1px;display:flex}.topbar nav a{color:var(--muted);white-space:nowrap;border-color:#0000;font-size:12px}.topbar nav a:hover{color:var(--text);border-color:var(--line)}.intro{padding:76px 0 70px;scroll-margin-top:24px}.intro h1{letter-spacing:-.045em;margin-bottom:28px;font-size:clamp(34px,6vw,44px);font-weight:500;line-height:1.08}.intro-copy{max-width:650px;color:var(--body);font-size:16px}.intro-copy p{margin-bottom:14px}.intro-links{color:var(--muted);flex-wrap:wrap;gap:8px 18px;margin-top:28px;font-size:12px;display:flex}.intro-links a{border-color:#0000}.intro-links a:hover{border-color:var(--line)}.section{border-top:1px solid var(--line);padding:62px 0 30px;scroll-margin-top:24px}.section>h2{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:36px;font-size:11px;font-weight:500}.company{padding:28px 0 30px}.current-company{padding-top:0}.role-line{justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:20px;display:flex}.role-line h3{letter-spacing:-.01em;margin-bottom:1px;font-size:16px;font-weight:500}.role-line p,.role-line time{color:var(--muted);margin-bottom:0;font-size:12px}.role-line time{white-space:nowrap;flex-shrink:0}.company-summary{max-width:650px;color:var(--body);margin-bottom:0;font-size:14px}.platform-list{margin-top:38px}.platform{interpolate-size:allow-keywords;padding:7px 0}.platform::details-content{opacity:0;block-size:0;transition:block-size .32s cubic-bezier(.4, 0, .2, 1), opacity .22s ease, content-visibility .32s allow-discrete;overflow:clip}.platform[open]::details-content{opacity:1;block-size:auto}.platform summary{cursor:pointer;padding:9px 0 9px 18px;list-style:none;position:relative}.platform summary::-webkit-details-marker{display:none}.platform summary:before{content:"";border-right:1px solid var(--muted);border-bottom:1px solid var(--muted);transform-origin:50%;width:5px;height:5px;transition:transform .26s cubic-bezier(.4,0,.2,1);position:absolute;top:13px;left:2px;transform:rotate(45deg)}.platform[open] summary:before{transform:rotate(225deg)}.platform-summary-main{justify-content:space-between;align-items:baseline;gap:20px;display:flex}.platform-name{font-size:15px;font-weight:500}.platform-descriptor{color:var(--muted);text-align:right;font-size:11px}.platform-preview{color:var(--muted);margin-top:1px;font-size:11px;display:block}.platform-body{padding:10px 0 18px 18px}.platform-body>p{max-width:640px;color:var(--body);margin-bottom:16px;font-size:13px}.platform ul,.detail-list{margin:0;padding:0;list-style:none}.platform li,.detail-list li{color:#555954;padding-left:15px;font-size:12px;line-height:1.65;position:relative}.platform li+li,.detail-list li+li{margin-top:6px}.platform li:before,.detail-list li:before{content:"–";color:var(--muted);position:absolute;left:0}.experience-list .company{border-top:1px solid var(--line)}.experience-list .company:first-child{border-top:0;padding-top:0}.experience-list .role-line{margin-bottom:14px}.experience-project-list{margin-top:24px}.detail-list,.earlier-work>p{max-width:650px}.earlier-work>p{color:#555954;margin-bottom:0;font-size:12px}.fact-list{color:var(--body);font-size:13px}.fact-list p{margin-bottom:9px}.fact-list strong{color:var(--text);font-weight:500}.education{border-top:1px solid var(--line);margin-top:34px;padding-top:22px;font-size:13px}.education-link{border:0;align-items:center;gap:14px;display:flex}.education-seal{object-fit:contain;flex:none;width:48px;height:48px}.education-link>div{flex-direction:column;display:flex}.education strong{font-weight:500}.education span{color:var(--muted);font-size:12px}.contact{padding-bottom:64px}.contact>h2{margin-bottom:22px}.contact>p{max-width:570px;color:var(--body);margin-bottom:24px;font-size:14px}.contact-links{flex-wrap:wrap;gap:10px 22px;font-size:12px;display:flex}footer{border-top:1px solid var(--line);color:var(--muted);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;gap:20px;padding:24px 0 46px;font-size:10px;display:flex}@media (max-width:620px){.topbar{flex-direction:column;gap:22px;padding-top:38px}.topbar nav{justify-content:flex-start;gap:6px 14px}.intro{padding:54px 0 52px}.intro h1{margin-bottom:24px}.section{padding-top:48px}.section>h2{margin-bottom:30px}.role-line,.platform>header{flex-direction:column;align-items:flex-start;gap:3px}.platform-summary-main{flex-direction:column;align-items:flex-start;gap:1px}.platform-descriptor{text-align:left}.platform-list{margin-top:32px}footer{flex-direction:column;gap:4px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}.platform::details-content{transition-duration:.01ms!important}}
