
:root{--teal:#0f766e;--teal-dark:#115e59;--teal-soft:#ecfdf8;--ink:#17211f;--body:#53615e;--muted:#8a9693;--line:#e2ece9;--white:#fff;--max:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:Inter,system-ui,sans-serif;line-height:1.65}a{text-decoration:none;color:inherit}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:#fff;border:1px solid var(--line);padding:10px 14px;z-index:100}.page-shell{width:min(var(--max),calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:390px minmax(0,1fr);gap:96px}.intro-panel{min-height:100vh}.intro-inner{position:sticky;top:0;height:100vh;padding:76px 0 54px;display:flex;flex-direction:column}.name{font-size:2.7rem;line-height:1;font-weight:700;letter-spacing:-.055em}.role{margin:12px 0 0;font-weight:600;color:var(--teal);font-size:1.05rem}.tagline{max-width:340px;margin:18px 0 0;color:var(--body);font-size:1rem}.profile-photo{width:220px;margin:30px 0 0;overflow:hidden;border-radius:18px;background:var(--teal-soft)}.profile-photo img{width:100%;aspect-ratio:1/1.12;object-fit:cover;object-position:center 24%;display:block}.section-nav{display:grid;gap:7px;margin-top:34px;width:max-content}.section-nav a{display:flex;align-items:center;gap:12px;font-size:.76rem;text-transform:uppercase;letter-spacing:.16em;font-weight:700;color:var(--muted);transition:.2s}.section-nav a span{width:28px;height:1px;background:#cad7d4;transition:.2s}.section-nav a:hover,.section-nav a.active{color:var(--teal-dark)}.section-nav a:hover span,.section-nav a.active span{width:52px;background:var(--teal)}.social-links{margin-top:auto;display:flex;gap:22px;font-size:.88rem;font-weight:600;color:var(--body)}.social-links a:hover{color:var(--teal)}
.content-panel{padding:76px 0 46px}.content-section{padding:82px 0;border-bottom:1px solid var(--line);scroll-margin-top:20px}.content-section.first{padding-top:0}.section-kicker{margin:0 0 24px;color:var(--teal);font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700}.prose p{font-size:1.02rem;color:var(--body);margin:0 0 18px}.prose p:first-child{color:var(--ink);font-size:1.14rem}.experience-list{display:grid}.experience-row{display:grid;grid-template-columns:92px 1fr;gap:26px;padding:28px 20px;border-radius:14px;transition:.2s}.experience-row:hover{background:#f8fcfb}.experience-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);padding-top:5px}.experience-row h2,.expertise-list h2,.education-list h2{font-size:1.05rem;line-height:1.45;margin:0 0 8px;letter-spacing:-.018em}.experience-row h2 span{color:var(--teal-dark);font-weight:600}.experience-row p,.expertise-list p,.education-list p{color:var(--body);margin:0}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.tags span{background:var(--teal-soft);color:var(--teal-dark);border-radius:999px;padding:5px 10px;font-size:.73rem;font-weight:600}.expertise-list,.education-list{display:grid;gap:0}.expertise-list>div,.education-list>div{padding:24px 0;border-top:1px solid var(--line)}.expertise-list>div:last-child,.education-list>div:last-child{border-bottom:1px solid var(--line)}footer{display:flex;justify-content:space-between;gap:20px;padding:40px 0 20px;color:var(--muted);font-size:.78rem}footer p{margin:0}footer a{font-weight:600;color:var(--teal-dark)}
@media(max-width:900px){.page-shell{grid-template-columns:1fr;gap:0;width:min(720px,calc(100% - 36px))}.intro-panel{min-height:auto}.intro-inner{position:relative;height:auto;padding:52px 0 34px}.name{font-size:2.5rem}.profile-photo{width:min(100%,360px)}.section-nav{display:none}.social-links{margin-top:28px}.content-panel{padding-top:0}.content-section{padding:64px 0}.experience-row{grid-template-columns:1fr;gap:7px;padding:24px 0}.experience-row:hover{background:transparent}footer{flex-direction:column}.tagline{max-width:600px}}
@media(max-width:560px){.page-shell{width:calc(100% - 28px)}.name{font-size:2.2rem}.profile-photo{width:100%}.content-section{padding:54px 0}.social-links{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
