@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{--ink:#111;--paper:#f5f3ee;--muted:#77746d;--line:rgba(17,17,17,.16);--acid:#dfff00;--dark:#111;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Manrope",Arial,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid var(--line);background:rgba(245,243,238,.95);backdrop-filter:blur(12px);position:sticky;top:0;z-index:20}.brand img{width:148px}.nav{display:flex;gap:30px;font-size:13px;font-weight:700}.nav a{position:relative}.nav a:after{content:"";position:absolute;left:0;bottom:-5px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:.25s}.nav a:hover:after{transform:scaleX(1);transform-origin:left}.menu-toggle{display:none;background:none;border:0;font:inherit;font-weight:700}
.hero{min-height:calc(100vh - 86px);background:var(--dark);color:#fff;position:relative;overflow:hidden;display:flex;align-items:center}.hero-inner{width:min(var(--max),90vw);margin:auto;padding:10vh 0 12vh;position:relative;z-index:2}.eyebrow,.section-label{font:500 11px/1.2 "DM Mono",monospace;text-transform:uppercase;letter-spacing:.13em}.eyebrow{color:#aaa;margin:0 0 28px}.hero h1{margin:0;font-size:clamp(76px,15vw,210px);line-height:.79;letter-spacing:-.085em;font-weight:800}.hero h1 span{margin-left:8vw}.hero-copy{max-width:520px;margin:52px 0 30px 18vw;color:#c6c6c6;font-size:17px}.hero-actions{margin-left:18vw;display:flex;align-items:center;gap:26px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:1px solid currentColor;font-size:12px;font-weight:800;transition:.2s}.button:hover{transform:translateY(-2px)}.button-light{color:var(--dark);background:#fff}.text-link{font-size:12px;font-weight:800}.light-link{color:#fff}.dark-link{color:var(--ink)}.text-link span,.contact-link span{margin-left:7px}.hero-mark{position:absolute;right:-3vw;bottom:-7vw;font-size:min(38vw,520px);line-height:.7;font-weight:800;letter-spacing:-.12em;color:rgba(255,255,255,.035)}
.section{width:min(var(--max),90vw);margin:0 auto;padding:120px 0}.section-label{color:var(--muted);padding-bottom:22px;border-bottom:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;padding:65px 0 50px}.section-heading h2,.skills-intro h2,.contact-content h2{font-size:clamp(52px,8vw,100px);line-height:.88;letter-spacing:-.07em;margin:0}.section-heading p{max-width:370px;margin:0;color:#5f5c55;font-size:14px}
.project-list{border-top:1px solid var(--line)}.project{display:grid;grid-template-columns:25% 75%;padding:38px 0;border-bottom:1px solid var(--line);transition:padding .2s}.project:hover{padding-left:12px}.project-meta{font:500 10px/1.6 "DM Mono",monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);display:flex;gap:24px}.project-main{max-width:780px}.project-main h3{font-size:clamp(32px,4vw,56px);line-height:1;letter-spacing:-.055em;margin:0 0 17px}.project-main p{max-width:700px;color:#57544e;font-size:15px;margin:0 0 24px}.experience{padding-top:55px}.timeline{border-top:1px solid var(--line)}.timeline-item{display:grid;grid-template-columns:19% 31% 50%;gap:25px;padding:45px 0;border-bottom:1px solid var(--line)}.timeline-date{font:500 10px/1.7 "DM Mono",monospace;color:#5f5c55}.timeline-date span{color:#9b988f}.timeline-role h3{font-size:23px;line-height:1.08;letter-spacing:-.035em;margin:0 0 8px}.timeline-role h4{font:500 12px "DM Mono",monospace;text-transform:uppercase;letter-spacing:.05em;margin:0;color:var(--muted)}.timeline-body{font-size:13px;color:#57544e}.timeline-body p{margin:0 0 15px}.timeline-body ul{margin:0;padding-left:17px}.timeline-body li{margin:0 0 7px}.current{background:rgba(223,255,0,.08);margin:0 -20px;padding-left:20px;padding-right:20px}.older-experience{margin-top:25px}.older-experience summary{cursor:pointer;font:500 11px "DM Mono",monospace;text-transform:uppercase;letter-spacing:.08em;padding:22px 0}.older-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border-top:1px solid var(--line)}.older-grid>div{background:var(--paper);padding:28px}.older-grid span,.older-grid em{display:block;font:500 9px "DM Mono",monospace;text-transform:uppercase;color:var(--muted);font-style:normal}.older-grid strong{display:block;margin:9px 0 2px;font-size:17px}.older-grid p{font-size:12px;color:#66635d;margin:10px 0 0}
.skills{background:var(--dark);color:#fff;max-width:none;width:100%;padding-left:max(5vw,calc((100vw - var(--max))/2));padding-right:max(5vw,calc((100vw - var(--max))/2))}.skills .section-label{color:#999;border-color:#333}.skills-intro{display:flex;justify-content:space-between;align-items:end;gap:40px;padding:65px 0 55px}.skills-intro p{max-width:370px;color:#aaa;font-size:14px}.skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#333}.skill-grid>div{background:var(--dark);padding:30px 28px;min-height:170px}.skill-grid h3{margin:0 0 15px;font-size:15px}.skill-grid p{margin:0;color:#aaa;font-size:12px;line-height:1.8}
.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:10vw;padding-top:70px}.display{font-size:clamp(34px,5vw,64px);line-height:1.02;letter-spacing:-.055em;font-weight:700;margin:0}.body-copy{max-width:520px;color:#4d4b46;font-size:15px}.body-copy p{margin:0 0 19px}
.contact-band{background:var(--acid);padding:100px max(5vw,calc((100vw - var(--max))/2))}.contact-band .section-label{border-color:rgba(17,17,17,.25)}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:10vw;padding-top:65px}.contact-content>div{max-width:450px}.contact-content p{font-size:14px;color:#393830;margin:0 0 26px}.contact-link{display:inline-block;font-size:19px;font-weight:800;border-bottom:1px solid var(--ink);padding-bottom:8px}.contact-note{margin-top:28px!important;color:#6a675e!important;font:500 10px/1.5 "DM Mono",monospace!important;text-transform:uppercase;letter-spacing:.04em}
.footer{width:min(var(--max),90vw);margin:auto;padding:35px 0 55px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--muted);font:500 10px "DM Mono",monospace;text-transform:uppercase;letter-spacing:.08em;border-top:1px solid var(--line)}.footer img{width:120px}
@media(max-width:760px){.site-header{height:70px;padding:0 5vw}.brand img{width:125px}.menu-toggle{display:block}.nav{position:absolute;top:70px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);display:none;padding:20px 5vw;flex-direction:column;gap:18px}.nav.is-open{display:flex}.hero{min-height:calc(100vh - 70px)}.hero-inner{padding:90px 0}.hero h1{font-size:clamp(68px,22vw,140px)}.hero h1 span{margin-left:0}.hero-copy,.hero-actions{margin-left:0}.hero-copy{margin-top:45px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-mark{font-size:70vw;right:-10vw;bottom:0}.section{padding:85px 0}.section-heading,.skills-intro{display:block;padding:50px 0 35px}.section-heading p,.skills-intro p{margin-top:28px}.project{display:block;padding:32px 0}.project:hover{padding-left:0}.project-meta{justify-content:space-between;margin-bottom:18px}.timeline-item{display:block;padding:35px 0}.timeline-role{margin:16px 0}.current{margin:0;padding-left:15px;padding-right:15px}.older-grid{grid-template-columns:1fr}.skill-grid{grid-template-columns:1fr}.skill-grid>div{min-height:auto}.about-grid{grid-template-columns:1fr;gap:45px;padding-top:50px}.contact-band{padding:75px 5vw}.contact-content{grid-template-columns:1fr;gap:45px;padding-top:50px}.footer{flex-wrap:wrap}.footer span:last-child{width:100%}}
