@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=IBM+Plex+Mono:wght@400;500&family=Instrument+Serif:ital@0;1&display=swap";:root{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#262923;background:#f8f7f3;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg:#f8f7f3;--surface:#f0efe9;--text:#262923;--muted:#686b62;--border:#dedfd5;--accent:#ba4929;--accent-hover:#993b20;--mono:"IBM Plex Mono",monospace;--serif:"Instrument Serif",Georgia,serif;color-scheme:light}:root[data-theme=dark]{--bg:#181c18;--surface:#20251f;--text:#eeeae0;--muted:#b0b5a9;--border:#3a4035;--accent:#ee9a77;--accent-hover:#f1b69b;color-scheme:dark;background:var(--bg);color:var(--text)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);line-height:1.6}html{scroll-behavior:smooth;scroll-padding-top:100px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}button{border:0}svg{flex-shrink:0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:var(--accent);color:var(--bg)}h1,h2,h3,p{margin:0}ul{margin:0;padding:0}strong{font-weight:600;color:var(--text)}.container{max-width:1232px;margin-inline:auto;padding-inline:36px}.section-padding{padding-block:112px}.eyebrow{font-family:var(--mono);font-size:11px;line-height:1.6;letter-spacing:1.05px;font-weight:400}.eyebrow>span:not(.status-dot){color:var(--accent)}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#658561;flex-shrink:0}.text-link{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:500;border-bottom:1px solid var(--border);padding-block:5px}.text-link:hover{color:var(--accent);border-color:var(--accent)}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:15px 22px;min-height:49px;font-size:13px;font-weight:500;border-radius:4px}.button-primary{background:var(--accent);color:#fff;transition:background .2s,transform .2s}.button-primary:hover{background:var(--accent-hover);transform:translateY(-2px)}[data-theme=dark] .button-primary{color:#211d17}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-80px;left:24px;background:var(--accent);color:#fff;padding:12px 20px;z-index:200}.skip-link:focus{top:12px}.navbar{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.nav-container{height:84px;display:flex;align-items:center;gap:28px}.nav-logo{display:flex;align-items:baseline;font-size:38px;letter-spacing:-3px;line-height:1;font-weight:650}.logo-dot{color:var(--accent)}.logo-name{margin-left:17px;font-size:14px;letter-spacing:-.25px;font-weight:500}.nav-menu{display:flex;align-items:center;gap:28px;margin-left:auto;font-size:12px;color:var(--muted)}.nav-menu>a{padding-block:12px}.nav-menu>a:hover{color:var(--accent)}.nav-menu .nav-contact{display:flex;gap:13px;align-items:center;color:var(--text);margin-left:8px}.nav-actions{display:flex;align-items:center;gap:10px}.theme-toggle{width:36px;height:36px;display:grid;place-items:center;background:transparent;border:1px solid var(--border);border-radius:50%}.theme-toggle:hover{background:var(--surface)}.menu-toggle{display:none;width:40px;height:40px;background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:6px}.menu-toggle span{width:19px;height:1px;background:var(--text)}.hero{padding-top:91px}.hero-main{display:block;min-height:0}.hero-intro{display:flex;gap:11px;align-items:center;font-size:10px}.hero h1{font-size:clamp(52px,5.8vw,78px);font-weight:500;letter-spacing:-4px;line-height:1.08;margin-top:26px}.hero h1>span{font-family:var(--serif);font-weight:400;font-style:italic;color:var(--accent);letter-spacing:-2.8px}.hero-description{max-width:520px;font-size:18px;line-height:1.65;margin-top:25px;letter-spacing:-.3px}.hero-context{font-size:12px;color:var(--muted);margin-top:20px;line-height:1.9}.hero-cta{display:flex;gap:28px;align-items:center;margin-top:30px}.hero-bottom{margin-top:48px;border-top:1px solid var(--border);padding-block:25px;display:flex;justify-content:space-between;align-items:center;font:10px var(--mono);letter-spacing:.8px;color:var(--muted)}.hero-bottom>a{display:flex;align-items:center;gap:25px;letter-spacing:0}.hero-bottom>a:hover{color:var(--accent)}.hero-bottom>a>span{font-size:18px}.section-heading{margin-bottom:39px}.section-heading .eyebrow{color:var(--muted)}.section-heading-row{margin-top:15px;display:flex;justify-content:space-between;gap:35px;align-items:flex-end}.section-heading h2{font-size:36px;letter-spacing:-1.5px;line-height:1.22;font-weight:500;max-width:580px}.section-intro{flex-shrink:0;max-width:340px;font-size:12px;line-height:1.8;color:var(--muted)}.projects{padding-top:48px}.project-filters{display:flex;gap:8px;margin-bottom:30px}.project-filters button{background:transparent;font-size:11px;padding:9px 15px;border-radius:4px;border:1px solid transparent;display:flex;gap:13px;align-items:center;color:var(--muted)}.project-filters button[aria-pressed=true]{background:var(--text);color:var(--bg)}.project-filters button:hover{border-color:var(--border)}.project-filters button span{font:9px var(--mono);opacity:.6}.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.project-card{min-width:0}.project-body{padding:23px 2px 8px}.project-kind{font-size:9px;color:var(--accent)}.project-body h3{font-size:25px;font-weight:500;letter-spacing:-.7px;line-height:1.25;margin-top:9px}.project-full-title{font-size:10px;color:var(--muted);margin-top:8px}.project-description{font-size:12px;line-height:1.9;color:var(--muted);margin-top:16px;max-width:490px}.project-details{margin-top:18px;border-top:1px solid var(--border)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.project-details summary{font-size:11px;padding:13px 0;display:flex;align-items:center;justify-content:space-between;font-weight:500}.project-details summary>span{font-size:19px;font-weight:400;transition:transform .2s}.project-details[open] summary>span{transform:rotate(45deg)}.project-details ul{padding-left:17px;font-size:12px;color:var(--muted)}.project-details li{margin-bottom:7px}.project-stack{font:9px/1.9 var(--mono);color:var(--muted);margin-top:15px;padding-bottom:9px}.about{background:var(--surface)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;margin-top:48px}.about-statement{font-size:35px;font-weight:450;line-height:1.32;letter-spacing:-1.2px}.about-statement em{font-family:var(--serif);font-size:42px;color:var(--accent);font-weight:400}.about-location{font:10px var(--mono);letter-spacing:0;display:flex;gap:10px;align-items:center;margin-top:25px}.about-copy{font-size:14px;line-height:1.9;color:var(--muted)}.about-copy p+p{margin-top:17px}.about-copy .text-link{margin-top:22px;color:var(--text)}.about-stats{margin-top:57px;padding-top:30px;border-top:1px solid var(--border);display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.about-stats>div{display:flex;flex-direction:column}.stat-number{font-size:40px;letter-spacing:-1.6px;line-height:1.3;font-weight:450}.stat-label{font:10px var(--mono);color:var(--muted);margin-top:7px}.experience .section-heading{margin-bottom:46px}.experience-item{border-top:1px solid var(--border)}.experience-item:last-child{border-bottom:1px solid var(--border)}.experience-item summary{display:grid;grid-template-columns:60px 1fr auto 24px;gap:20px;align-items:center;padding:26px 0}.experience-index{font:10px var(--mono);color:var(--muted)}.experience-role{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--muted)}.company-name{font-size:22px;color:var(--text);font-weight:500;letter-spacing:-.5px;display:flex;align-items:center;gap:14px}.current-role{color:var(--accent);font:8px var(--mono);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);padding:3px 6px;border-radius:3px;letter-spacing:.5px}.experience-date{font:10px var(--mono);color:var(--muted)}.details-plus{font-size:22px;text-align:center;font-weight:400;transition:transform .2s}.experience-item[open] .details-plus{transform:rotate(45deg)}.experience-body{margin-left:80px;max-width:860px;padding-bottom:30px}.experience-location{font:9px var(--mono);color:var(--muted);margin-bottom:17px}.experience-body ul{list-style:none}.experience-body li{font-size:12px;color:var(--muted);line-height:1.9;padding-left:20px;position:relative}.experience-body li+li{margin-top:13px}.experience-body li:before{content:"↳";position:absolute;left:0;color:var(--accent)}.experience-stack{font:9px/1.9 var(--mono);color:var(--muted);margin-top:24px;border-left:2px solid var(--border);padding-left:14px}.notes{background:var(--surface)}.notes-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 50px}.note-card{padding:26px 0;border-top:1px solid var(--border);display:flex;flex-direction:column;align-items:flex-start}.note-meta{font:8px var(--mono);letter-spacing:.5px;color:var(--muted);width:100%;display:flex;justify-content:space-between;align-items:center}.note-meta svg{width:15px;height:15px}.note-card h3{font-size:21px;line-height:1.35;font-weight:500;letter-spacing:-.5px;margin-top:20px;max-width:450px;transition:color .2s}.note-card:hover h3{color:var(--accent)}.note-card>p{font-size:12px;line-height:1.85;color:var(--muted);margin-top:15px}.note-tags{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px;font:9px var(--mono);color:var(--muted)}.note-read{display:flex;align-items:center;gap:15px;font-size:10px;font-weight:500;margin-top:auto;padding-top:24px}.note-card:hover .note-read{color:var(--accent)}.skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px 50px}.skill-group{border-top:1px solid var(--border);padding-top:18px}.skill-group h3{font-size:13px;display:flex;align-items:center;gap:15px;font-weight:500}.skill-group h3>span{font:9px var(--mono);color:var(--accent)}.skill-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.skill-tags>span{font-size:10px;color:var(--muted);border:1px solid var(--border);padding:5px 10px;border-radius:3px;line-height:1.65}.contact{background:var(--surface)}.contact>.container>.eyebrow{color:var(--muted)}.contact-main{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:center;margin-top:32px}.contact h2{font-family:var(--serif);font-weight:400;font-size:clamp(60px,7.5vw,93px);letter-spacing:-2px;line-height:1.01}.contact h2 span{color:var(--accent)}.contact-copy{max-width:300px;font-size:15px;line-height:1.85;color:var(--muted)}.contact-copy .button{margin-top:24px}.contact-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:54px;padding-top:24px;border-top:1px solid var(--border)}.email-group{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.contact-email{font-size:15px;letter-spacing:-.2px}.contact-email:hover{color:var(--accent)}.copy-email{background:transparent;width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--border);border-radius:4px}.copy-email:hover{background:var(--bg)}.copy-status{font-size:10px;color:var(--accent)}.contact-socials{display:flex;gap:28px;font-size:11px}.contact-socials a{display:flex;align-items:center;gap:8px}.contact-socials a:hover{color:var(--accent)}.contact-socials svg{width:13px;height:13px}.footer{padding-top:43px;padding-bottom:29px}.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-logo{font-size:22px;font-weight:500;letter-spacing:-.8px}.footer-logo span{color:var(--accent)}.footer-top .text-link{font-size:10px}.footer-bottom{margin-top:28px;font:8px/1.8 var(--mono);color:var(--muted)}@media(min-width:1500px){.hero{padding-top:110px;padding-bottom:10px}.hero-main{display:block;min-height:0}}@media(max-width:1050px){.hero-main{display:block;min-height:0}.hero h1{font-size:62px}.hero-intro{font-size:9px}.section-heading h2{font-size:31px}.section-intro{max-width:250px}.nav-menu{gap:20px}.about-grid{gap:50px}.contact-main{gap:40px}}@media(max-width:760px){.container{padding-inline:24px}.section-padding{padding-block:76px}.nav-container{height:70px;gap:16px}.nav-logo{font-size:34px}.logo-name{font-size:12px;margin-left:12px}.nav-actions{margin-left:auto}.menu-toggle{display:flex}.nav-menu{display:none;position:absolute;top:70px;left:0;right:0;background:var(--bg);padding:20px 24px 25px;border-bottom:1px solid var(--border);box-shadow:0 15px 20px #00000008;flex-direction:column;gap:3px;align-items:stretch;margin:0}.nav-menu.is-open{display:flex}.nav-menu>a{padding:11px;font-size:14px}.nav-menu .nav-contact{margin-left:0;justify-content:space-between}.hero{padding-top:54px}.hero-main{display:block;min-height:0}.hero h1{font-size:clamp(53px,9vw,76px);letter-spacing:-3px}.hero-description{font-size:17px;max-width:520px}.hero-context{font-size:12px}.hero-cta{gap:23px}.hero-bottom{margin-top:42px;font-size:8px;gap:16px;line-height:1.8}.hero-bottom>a{gap:12px;text-align:right}.projects{padding-top:46px}.section-heading-row{flex-direction:column;align-items:flex-start;gap:17px}.section-heading h2{font-size:32px;max-width:540px}.section-intro{max-width:none}.section-heading{margin-bottom:28px}.projects-grid{gap:33px;grid-template-columns:1fr}.project-body h3{font-size:25px}.project-description{font-size:13px}.project-full-title{font-size:11px}.about-grid{grid-template-columns:1fr;gap:30px;margin-top:35px}.about-statement{font-size:31px}.about-statement em{font-size:37px}.about-copy{font-size:14px}.about-stats{grid-template-columns:repeat(2,1fr);gap:28px 24px;margin-top:38px}.stat-number{font-size:36px}.stat-label{font-size:9px}.experience-item summary{grid-template-columns:25px 1fr 20px;gap:12px;padding-block:22px}.experience-date{grid-column:2;grid-row:2;font-size:9px}.details-plus{grid-row:1 / 3;grid-column:3}.experience-role{font-size:11px}.company-name{font-size:21px}.experience-index{grid-row:1 / 3;align-self:start;padding-top:8px}.experience-body{margin-left:37px;padding-bottom:25px}.experience-body li{font-size:12px}.notes-grid{grid-template-columns:1fr;gap:0}.note-card{padding-block:25px}.note-card h3{font-size:23px;max-width:none}.note-card>p{font-size:13px}.skills-grid{grid-template-columns:1fr;gap:24px}.skill-tags>span{font-size:11px}.contact-main{grid-template-columns:1fr;gap:28px;margin-top:27px}.contact h2{font-size:76px}.contact-copy{font-size:14px;max-width:390px}.contact-copy .button{margin-top:19px}.contact-bottom{flex-direction:column;align-items:flex-start;gap:21px;margin-top:38px}.contact-email{font-size:14px}.contact-socials{gap:23px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:8px;font-size:8px}.footer-logo{font-size:21px}}@media(max-width:380px){.container{padding-inline:19px}.hero-intro{font-size:8px}.hero h1{font-size:51px}.hero-cta{gap:17px}.hero-cta .button{padding-inline:16px;font-size:12px}.hero-cta .text-link{font-size:12px}.project-filters{gap:2px}.project-filters button{padding:9px 10px;font-size:10px}.contact h2{font-size:65px}.hero-bottom{font-size:7px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.button-primary:hover{transform:none}}.hero-content{max-width:850px}.project-card{border-top:1px solid var(--border)}
