:root{color:#2d2d2a;background:#f7f1e8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;color:#2d2d2a;background:#f7f1e8;font-size:17px;line-height:1.6}a{color:inherit}button,a{font:inherit}.site-shell{min-height:100vh}.container{width:min(980px,calc(100% - 40px));margin:0 auto}.site-header{position:sticky;top:0;z-index:10;background:#f7f1e8f0}.header-inner{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{border:0;padding:0;color:#2d2d2a;background:transparent;font-size:1rem;font-weight:700;text-decoration:none;cursor:pointer}.nav-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:clamp(14px,2.4vw,26px)}.nav-links button{border:0;padding:0;color:#5f5a52;background:transparent;cursor:pointer;font-size:.92rem;font-weight:650}.nav-links button:hover,.nav-links button:focus-visible{color:#354c5d;text-decoration:underline;text-underline-offset:5px}.eyebrow{margin:0 0 18px;color:#7a6758;font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.intro{border-bottom:1px solid rgba(45,45,42,.1);padding:72px 0 56px}.intro h1{margin:0;color:#282825;font-size:clamp(2.25rem,6vw,3rem);font-weight:700;line-height:1.08;letter-spacing:-.025em}.intro-role{margin:4px 0 0;color:#4c4943;font-size:1.16rem;font-weight:700}.intro-summary{max-width:980px;margin:18px 0 0;color:#5f5a52;font-size:1.18rem;line-height:1.5}.profile-links{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:10px;margin-top:20px}.profile-links a{display:inline-flex;width:40px;min-height:40px;align-items:center;justify-content:center;border:1px solid rgba(45,45,42,.18);border-radius:9px;color:#4f565f;background:transparent;text-decoration:none}.profile-links svg{width:19px;height:19px;fill:currentColor}.profile-links a:hover,.profile-links a:focus-visible{border-color:#6f7f8f;color:#354c5d}.button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;border:1px solid rgba(45,45,42,.18);border-radius:8px;padding:10px 18px;color:#2d2d2a;background:transparent;font-weight:700;text-decoration:none}.button-primary{border-color:#6f7f8f;color:#fff;background:#6f7f8f}.button:hover,.button:focus-visible{border-color:#596879;color:#25303a}.button-primary:hover,.button-primary:focus-visible{color:#fff;background:#596879}.section{border-bottom:1px solid rgba(45,45,42,.1);padding:48px 0}.section-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:64px;align-items:start}.section-heading{margin:0}.section-heading h2{margin:0;color:#282825;font-size:clamp(1.8rem,3vw,2.15rem);line-height:1.15;letter-spacing:-.02em}.section-heading>p:not(.eyebrow){max-width:680px;margin:14px 0 0;color:#645f58}.text-stack p{margin:0 0 10px;color:#514d47}.text-stack p:last-child{margin-bottom:0}.education-block{margin-top:32px}.education-block h3{margin:0 0 14px;color:#282825;font-size:1.05rem;letter-spacing:-.01em}.education-list{display:grid;gap:0}.education-item{padding:0 0 24px}.education-item+.education-item{border-top:1px solid rgba(45,45,42,.1);padding-top:24px}.education-item__topline{display:flex;align-items:baseline;justify-content:space-between;gap:24px}.education-item h4{margin:0;color:#282825;font-size:1rem;letter-spacing:-.01em}.education-item__topline span{flex:none;color:#756f67;font-size:.95rem;font-weight:700}.education-item p{margin:5px 0 0;color:#5f5a52}.projects-content,.project-list,.experience-list{display:grid;gap:0}.projects-content{gap:28px}.project-group{display:grid;gap:10px}.project-group-title{margin:0;color:#282825;font-size:1.12rem;line-height:1.3;letter-spacing:-.01em}.featured-project,.project-row{padding:0 0 30px}.featured-project{display:grid;gap:8px;border-bottom:1px solid rgba(45,45,42,.14);padding:4px 0 24px}.project-row{display:grid;gap:8px}.project-row+.project-row{border-top:1px solid rgba(45,45,42,.1);padding-top:28px}.project-row:last-child{padding-bottom:0}.featured-project h4,.project-row h4{margin:0;color:#282825;font-size:1.38rem;font-weight:700;line-height:1.3;letter-spacing:-.01em}.featured-project h4{font-size:1.48rem}.project-stack{margin:0;color:#756f67;font-size:.9rem;font-weight:500;line-height:1.45}.featured-project>p:not(.project-stack),.project-row p:not(.project-stack){max-width:760px;margin:0;color:#5f5a52;font-size:1.03rem;line-height:1.55}.project-button{display:inline-flex;width:fit-content;min-height:34px;align-items:center;justify-content:center;border:1px solid rgba(45,45,42,.18);border-radius:7px;padding:5px 12px;color:#4f6475;background:transparent;font-size:.88rem;font-weight:700;line-height:1;text-decoration:none}.project-button:hover,.project-button:focus-visible{border-color:#6f7f8f;color:#354c5d}.experience-item{padding:0 0 28px}.experience-item+.experience-item{border-top:1px solid rgba(45,45,42,.1);padding-top:28px}.experience-item__topline,.experience-item__meta{display:flex;align-items:baseline;justify-content:space-between;gap:24px}.experience-item h3{margin:0;color:#282825;font-size:1.28rem;line-height:1.3;letter-spacing:-.01em}.experience-item__topline span{flex:none;color:#756f67;font-size:.95rem;font-weight:700}.experience-item__meta{margin-top:6px;color:#5f5a52}.experience-item__meta strong{color:#4c4943}.experience-item__meta span{color:#756f67}.experience-item p{max-width:820px;margin:14px 0 0;color:#5f5a52}#skills{padding:40px 0}.skills-list{display:grid;gap:10px}.skill-row{display:grid;grid-template-columns:136px minmax(0,1fr);gap:14px;align-items:start;padding:0}.skill-row h3{margin:3px 0 0;color:#282825;font-size:.9rem;line-height:1.35}.skill-tags{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none}.skill-tags li{display:inline-flex;min-height:29px;align-items:center;border:1px solid rgba(45,45,42,.14);border-radius:7px;padding:4px 10px;color:#4f565f;background:#ffffff29;font-size:.8125rem;font-weight:700;line-height:1.2}.resume-content{max-width:680px}.resume-content p{margin:0;color:#5f5a52}.resume-content .button{width:auto;min-height:42px;margin-top:16px;padding:0 18px}.life-page{min-height:calc(100vh - 121px);background:#f7f1e8}.life-content{min-height:calc(100vh - 121px);display:grid;place-items:center;align-content:center;gap:22px;padding:72px 0;text-align:center}.knicks-image{width:min(560px,88vw);aspect-ratio:3 / 2;display:block;border:1px solid rgba(0,107,182,.22);border-radius:8px;object-fit:cover;object-position:center}.life-content h1{max-width:880px;margin:0;color:#282825;font-size:clamp(2.35rem,7vw,5.25rem);font-weight:900;line-height:.98;letter-spacing:0}.life-back{margin-top:0}.site-footer{padding:28px 0;color:#756f67;font-size:.92rem}.site-footer .profile-links{margin:0 0 24px}.site-footer p{margin:0}@media(max-width:760px){body{font-size:16px}.container{width:min(100% - 28px,980px)}.header-inner{min-height:64px;align-items:flex-start;flex-direction:column;justify-content:center;gap:8px;padding:10px 0}.nav-links{justify-content:flex-start;gap:12px 18px}.nav-links button{font-size:.84rem}.intro{padding:48px 0 40px}.section{padding:40px 0}.intro h1{font-size:clamp(2.25rem,10vw,2.55rem)}.profile-links{width:auto}.project-row,.section-layout,.skill-row{grid-template-columns:1fr}.section-layout{gap:24px}.project-row,.experience-item{gap:18px}.education-item__topline,.experience-item__topline,.experience-item__meta{display:grid;gap:4px}.education-item__topline span,.experience-item__topline span{font-size:.9rem}}
