:root{color:#19202a;background:#f5f1e9;font-family:Space Grotesk,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #19202a;--muted: #6f736f;--paper: #f5f1e9;--line: #d8d1c5;--blue: #2148c0;--coral: #ef765d;--yellow: #edc85a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}button{font:inherit}.site-nav{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1240px;padding:28px 5vw}.wordmark{font-family:Fraunces,serif;font-size:28px;font-weight:600;letter-spacing:-1px}.wordmark span{color:var(--coral)}.site-nav nav{display:flex;gap:34px;margin-left:70px}.site-nav nav a{color:var(--muted);font-size:13px;font-weight:500}.site-nav nav a:hover,.site-nav nav a.active{color:var(--ink)}.site-nav nav a.active:after{background:var(--coral);content:"";display:block;height:2px;margin-top:7px;width:18px}.resume-button{background:var(--ink);border:0;border-radius:2px;color:#fff;cursor:pointer;font-size:12px;padding:12px 16px}.resume-button span{color:var(--yellow);padding-left:8px}.page-shell{margin:0 auto;max-width:1240px;padding:0 5vw 70px}.eyebrow{color:var(--blue);font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.hero{align-items:end;display:grid;gap:7vw;grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr);min-height:550px;padding:80px 0 95px}.hero h1{font-family:Fraunces,serif;font-size:clamp(58px,8.4vw,112px);font-weight:500;letter-spacing:-5px;line-height:.9;margin:18px 0 28px;max-width:750px}.hero h1 em{color:var(--blue);font-style:italic}.hero-intro{color:var(--muted);font-size:16px;line-height:1.65;max-width:430px}.hero-aside{border-left:1px solid var(--line);padding:12px 0 10px 28px}.portrait{aspect-ratio:4 / 5;background:#e1e5e8;filter:saturate(.85);max-width:225px;object-fit:cover;width:100%}.aside-note{color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:11px;line-height:1.6;margin-top:17px;max-width:210px}.rule{border:0;border-top:1px solid var(--line);margin:0}.section{padding:92px 0}.section-heading{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:50px}.section h2{font-family:Fraunces,serif;font-size:clamp(40px,5vw,65px);font-weight:500;letter-spacing:-2px;line-height:1;margin:0}.section-heading p{color:var(--muted);font-size:13px;margin:0;max-width:240px}.work-grid{display:grid;gap:18px;grid-template-columns:repeat(2,1fr)}.project{min-height:300px;padding:30px;position:relative}.project:nth-child(1){background:var(--blue);color:#fff}.project:nth-child(2){background:var(--yellow)}.project:nth-child(3){background:#d6d8d0}.project:nth-child(4){background:var(--coral);color:#fff}.project-number{font-family:IBM Plex Mono,monospace;font-size:11px;opacity:.7}.project h3{font-family:Fraunces,serif;font-size:36px;font-weight:500;letter-spacing:-1px;margin:55px 0 12px;max-width:270px}.project p{font-size:13px;line-height:1.5;margin:0;max-width:290px}.project-link{bottom:28px;font-size:12px;position:absolute;right:30px}.project-link:after{content:" ↗"}.split{display:grid;gap:10vw;grid-template-columns:.8fr 1.2fr}.quote{font-family:Fraunces,serif;font-size:clamp(30px,3.5vw,48px);letter-spacing:-1px;line-height:1.07;margin:0}.quote-mark{color:var(--coral);font-size:80px;line-height:.3;vertical-align:-30px}.review-by{color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:11px;margin-top:25px}.timeline{border-top:1px solid var(--line)}.timeline-item{display:grid;gap:25px;grid-template-columns:130px 1fr 150px;padding:24px 0}.timeline-item+.timeline-item{border-top:1px solid var(--line)}.timeline-date,.timeline-company{color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:11px}.timeline-role{font-size:16px;font-weight:500}.timeline-company{text-align:right}.cta{align-items:end;background:var(--ink);color:#fff;display:flex;justify-content:space-between;padding:45px 38px}.cta h2{color:#fff;font-size:clamp(38px,5vw,65px);max-width:600px}.cta a{border-bottom:1px solid var(--yellow);color:var(--yellow);font-family:IBM Plex Mono,monospace;font-size:12px;padding-bottom:8px}.footer{color:var(--muted);display:flex;font-family:IBM Plex Mono,monospace;font-size:10px;justify-content:space-between;padding-top:28px}.about-hero{max-width:790px;padding:105px 0 90px}.about-hero h1{font-family:Fraunces,serif;font-size:clamp(54px,8vw,105px);font-weight:500;letter-spacing:-5px;line-height:.92;margin:20px 0 30px}.about-hero h1 em{color:var(--coral);font-style:italic}.about-hero p{color:var(--muted);font-size:17px;line-height:1.65;max-width:530px}.about-grid{display:grid;gap:10vw;grid-template-columns:.65fr 1.35fr}.about-grid h2{font-family:Fraunces,serif;font-size:36px;font-weight:500;margin:0 0 28px}.detail-list{list-style:none;margin:0;padding:0}.detail-list li{border-top:1px solid var(--line);display:grid;gap:15px;grid-template-columns:90px 1fr;padding:18px 0}.detail-list strong{font-size:13px;font-weight:500}.detail-list span{color:var(--muted);font-size:12px;line-height:1.5}.contact-panel{background:var(--yellow);padding:30px}.contact-panel p{font-family:Fraunces,serif;font-size:31px;line-height:1.05;margin:0 0 34px}.contact-panel a{border-bottom:1px solid var(--ink);font-family:IBM Plex Mono,monospace;font-size:11px;padding-bottom:5px}@media (max-width: 700px){.site-nav{padding:22px 6vw}.site-nav nav{gap:16px;margin-left:0}.site-nav nav a:nth-child(3){display:none}.resume-button{padding:10px 11px}.page-shell{padding:0 6vw 45px}.hero{display:flex;flex-direction:column;gap:38px;min-height:auto;padding:70px 0 72px}.hero h1,.about-hero h1{letter-spacing:-3px}.hero-aside{align-items:center;display:flex;gap:20px;padding:0;border:0}.portrait{max-width:110px}.section{padding:65px 0}.section-heading{align-items:start;flex-direction:column;gap:15px;margin-bottom:30px}.work-grid{grid-template-columns:1fr}.project{min-height:260px}.split,.about-grid{gap:45px;grid-template-columns:1fr}.timeline-item{gap:8px;grid-template-columns:1fr 1fr}.timeline-role{grid-column:1 / -1;grid-row:1}.timeline-date{grid-column:1;grid-row:2}.timeline-company{grid-column:2;grid-row:2}.cta{align-items:start;flex-direction:column;gap:35px;padding:30px 24px}.footer{gap:10px;flex-direction:column}.about-hero{padding:70px 0 65px}}@media print{.site-nav,.project-link,.cta,.footer{display:none}.page-shell{max-width:none}.hero{min-height:auto;padding-top:20px}}
