:root{font-family:DM Sans,sans-serif;color:#1e2b2b;background:#f6f7f2;font-synthesis:none;text-rendering:optimizeLegibility;--paper: #f6f7f2;--ink: #1e2b2b;--muted: #566363;--line: #d8dfd9;--coral: #c95039;--green: #d8e86c;--soft-green: #e8eddf;--mono: "IBM Plex Mono", monospace}*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth;scroll-padding-top:88px}body{min-width:320px;margin:0;background-color:var(--paper);background-image:linear-gradient(rgba(30,43,43,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(30,43,43,.025) 1px,transparent 1px);background-size:36px 36px;color:var(--ink);font-size:16px;line-height:1.6}button,a{color:inherit;font:inherit}a{text-decoration:none}a:hover{color:var(--coral)}button:focus-visible,a:focus-visible{outline:3px solid var(--coral);outline-offset:4px}.app-container{overflow:clip}.page-width{width:min(1120px,calc(100% - 64px));margin-inline:auto}.site-header{position:sticky;z-index:5;top:0;border-bottom:1px solid var(--line);background:var(--paper)}.nav-wrap{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:24px}.brand,.nav-links,.brand-mark,.hero-actions,.button,.text-action,.profile-index-head,.profile-stat,.technology-list,.project-links,.education-row,.social-link,.social-name,.footer-inner{display:flex;align-items:center}.brand{gap:10px;font-size:14px;font-weight:700}.brand-mark{width:34px;height:34px;justify-content:center;background:var(--ink);color:var(--green);font-family:var(--mono);font-size:11px}.nav-links{gap:26px}.nav-links a{color:var(--muted);font-size:13px}.nav-links a:hover{color:var(--ink)}.menu-toggle{display:none;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid var(--line);background:transparent;cursor:pointer}.hero{display:grid;min-height:530px;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:center;gap:72px;padding-block:72px 84px}.eyebrow{margin:0;color:var(--muted);font-family:var(--mono);font-size:11px;font-weight:500;line-height:1.5}.hero-copy>.eyebrow{display:flex;align-items:center;gap:9px;color:var(--coral)}.eyebrow-mark,.index-status>span{width:8px;height:8px;border-radius:50%;background:var(--coral)}.hero h1{max-width:620px;margin:24px 0 15px;font-size:68px;font-weight:600;letter-spacing:0;line-height:.98}.hero-role{margin:0;color:var(--coral);font-size:21px;font-weight:600}.hero-summary{max-width:470px;margin:22px 0 0;color:var(--muted);font-size:17px}.hero-actions{flex-wrap:wrap;gap:24px;margin-top:32px}.button{min-height:46px;justify-content:center;gap:9px;padding:0 16px;border:1px solid var(--ink);font-size:13px;font-weight:600}.button-primary{background:var(--ink);color:var(--paper)}.button-primary:hover{border-color:var(--coral);background:var(--coral);color:#fff}.text-action{gap:6px;color:var(--ink);font-size:13px;font-weight:600}.profile-index{position:relative;min-height:350px;overflow:hidden;padding:20px 22px 18px;background:var(--soft-green)}.profile-index:after{position:absolute;right:-36px;bottom:44px;width:154px;height:154px;border:1px solid rgba(30,43,43,.12);content:"";transform:rotate(45deg)}.profile-index-head{position:relative;z-index:1;justify-content:space-between;gap:12px}.index-monogram{height:178px;color:var(--coral);font-size:150px;font-weight:600;letter-spacing:0;line-height:1.15}.profile-stats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(30,43,43,.22)}.profile-stat{min-height:58px;align-items:baseline;gap:7px;padding-top:12px}.profile-stat+.profile-stat{padding-left:10px;border-left:1px solid rgba(30,43,43,.18)}.profile-stat strong{font-family:var(--mono);font-size:20px;font-weight:500}.profile-stat span,.profile-index-foot{color:var(--muted);font-size:11px}.profile-index-foot{position:relative;z-index:1;display:block;margin-top:7px;font-family:var(--mono);font-size:10px}.content-section{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,1.3fr);gap:68px;padding-block:54px 60px}.section-rule{border-top:1px solid var(--line)}.section-heading h2{margin:11px 0 0;font-size:30px;font-weight:600;line-height:1.2}.about-copy{max-width:670px}.about-copy p{margin:0 0 14px;color:var(--muted);font-size:16px}.about-copy p:last-child{margin-bottom:0}.skills-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none}.skills-list li{display:flex;min-height:50px;align-items:center;gap:12px;border-bottom:1px solid var(--line);font-size:14px;font-weight:500}.skill-index,.project-number{color:var(--coral);font-family:var(--mono);font-size:10px}.project-list{min-width:0}.project-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:16px;padding:23px 0 25px;border-top:1px solid var(--line)}.project-row:first-child{padding-top:0;border-top:0}.project-number{padding-top:5px}.project-main h3,.education-row h3{margin:0;font-size:18px;font-weight:600}.project-main p{max-width:620px;margin:7px 0 12px;color:var(--muted);font-size:14px}.technology-list{flex-wrap:wrap;gap:7px 15px;margin:0;padding:0;color:#465653;font-family:var(--mono);font-size:10px;list-style:none}.project-links{align-self:start;gap:4px}.project-links a{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border:1px solid var(--line)}.education-list{border-top:1px solid var(--line)}.education-row{gap:18px;padding-block:18px}.education-mark{display:grid;width:48px;height:48px;flex:0 0 auto;place-items:center;background:var(--green);font-family:var(--mono);font-size:12px}.education-row p{margin:3px 0 0;color:var(--muted);font-size:14px}.social-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}.social-link{min-height:64px;justify-content:space-between;gap:10px;padding:0 13px;border-bottom:1px solid var(--line);font-size:13px;font-weight:600}.social-link+.social-link{border-left:1px solid var(--line)}.social-name{gap:9px}.social-name svg{color:var(--coral)}.site-footer{margin-top:12px;border-top:1px solid var(--line)}.footer-inner{min-height:72px;justify-content:space-between;gap:16px;color:var(--muted);font-family:var(--mono);font-size:10px}.footer-inner a{color:var(--ink)}@media(max-width:900px){.hero{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);gap:38px}.hero h1{font-size:56px}.content-section{grid-template-columns:minmax(160px,.55fr) minmax(0,1.45fr);gap:38px}}@media(max-width:680px){html{scroll-padding-top:72px}.page-width{width:calc(100% - 40px)}.nav-wrap{min-height:64px}.brand{font-size:13px}.menu-toggle{display:inline-flex}.nav-links{position:absolute;top:63px;right:0;left:0;display:none;align-items:stretch;gap:0;padding:8px 20px 14px;border-bottom:1px solid var(--line);background:var(--paper)}.nav-links.is-open{display:flex;flex-direction:column}.nav-links a{padding:10px 0;border-bottom:1px solid var(--line)}.hero{min-height:0;grid-template-columns:1fr;gap:38px;padding-block:56px 56px}.hero h1{max-width:450px;margin-top:20px;font-size:48px}.hero-role{font-size:19px}.hero-summary{font-size:15px}.hero-actions{gap:18px;margin-top:25px}.profile-index{min-height:300px}.index-monogram{height:150px;font-size:126px}.content-section{grid-template-columns:1fr;gap:22px;padding-block:38px 42px}.section-heading h2{font-size:26px}.skills-list{grid-template-columns:repeat(2,minmax(0,1fr))}.project-row{grid-template-columns:25px minmax(0,1fr) auto;gap:10px}.project-main h3{font-size:16px}.project-main p{font-size:13px}.social-list{grid-template-columns:1fr}.social-link+.social-link{border-left:0}.footer-inner{min-height:66px;font-size:9px}}@media(prefers-reduced-motion:no-preference){.hero-copy,.profile-index{animation:arrive .5s ease-out both}.profile-index{animation-delay:.1s}@keyframes arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}
