@font-face{font-family:Instrument Sans;src:url(/fonts/instrument-sans.woff2)format("woff2");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:Instrument Serif;src:url(/fonts/instrument-serif.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Instrument Serif;src:url(/fonts/instrument-serif-italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}:root{--ink:#232122;--paper:#fff9f4;--peach:#fff0e1;--line:#f3dfcb;--purple:#7c22e8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper) url(/images/grid-pattern.svg) repeat;background-size:60px 58px;margin:0;font-family:Instrument Sans}button{font:inherit}main{overflow:hidden}.section{scroll-margin-top:92px}nav{z-index:5;background:#1f1f1f;border:1px solid #d6cec2;border-radius:100px;align-items:center;gap:40px;padding:8px 40px;display:flex;position:fixed;top:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 22px #33251d18}nav button{cursor:pointer;color:#fafafa;white-space:nowrap;background:0 0;border:0;border-radius:20px;flex:none;height:40px;padding:0 16px;font-size:20px;font-weight:400;line-height:1.2;transition:background .16s,color .16s,transform .12s}nav button:hover{background:#ffffff0a}nav button:active{background:#ffffff14;transform:scale(.98)}nav button:focus-visible{outline-offset:3px;outline:2px solid #fafafa}nav .mark{object-fit:contain;border-radius:50%;flex:none;width:40px;height:40px;padding:4px 0 8px}nav .active,nav .active:hover{color:#1f1f1f;background:#a2ab73;font-weight:500}h2{text-align:center;margin:0;font:400 clamp(28px,2.1vw,40px)/1.5 Instrument Serif}.section-title{isolation:isolate;width:max-content;margin-inline:auto;padding:18px 28px;position:relative}.section-title:before{content:"";z-index:-1;background:50%/contain no-repeat;width:100%;height:100%;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.experience-title:before{background-image:url(/images/illustrations/exp%20bg.svg)}.projects-title:before{background-image:url(/images/illustrations/key%20projects%20bg.svg)}[data-reveal]{opacity:0;transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0s);transform:translateY(26px)}.doodle[data-reveal],.experience-doodle[data-reveal]{transition-duration:.8s}.is-revealed{opacity:1;transform:translateY(0)}.hero{isolation:isolate;place-items:center;min-height:clamp(760px,56.25vw,1080px);padding:120px 24px 90px;display:grid;position:relative}.intro{z-index:1;text-align:center;width:min(1000px,100% - 300px);font-size:clamp(18px,1.667vw,32px);line-height:1.5;position:relative}.intro p{margin:0}.intro .lead{margin-bottom:24px;font-weight:500}.doodle{z-index:0;object-fit:contain;pointer-events:none;display:block;position:absolute}.plant{width:clamp(48px,3.54vw,68px);top:24.7%;left:calc(50% - min(28.125vw,540px))}.loops{width:clamp(82px,6.99vw,134px);top:26.2%;left:calc(50% + min(22.03vw,423px))}.cup{width:clamp(66px,6.78vw,130px);top:41.75%;left:calc(50% + min(26.88vw,516px))}.drop{width:clamp(52px,5.95vw,114px);top:54.6%;left:calc(50% - min(30.2vw,580px))}.eye{width:clamp(52px,5.73vw,110px);top:61.9%;left:calc(50% + min(11.04vw,212px))}.experience{place-items:center;min-height:clamp(760px,56.25vw,1080px);padding:48px clamp(48px,7vw,160px);display:grid}.experience-layout{width:min(1084px,100%);margin:auto;position:relative}.experience-doodle{object-fit:contain;pointer-events:none;display:block;position:absolute}.lipstick{width:51px;top:74px;left:64px}.tube{width:75px;top:44px;right:0}.credit-card{width:65px;top:300px;right:0}.gold-bar{width:84px;top:430px;left:16px}.cursor{width:33px;bottom:24px;right:40px}.resume{background:#fff1e5;border:1px solid #f9f4ec;border-radius:24px;width:min(960px,100% - 124px);margin:24px auto 40px;overflow:hidden}.resume article{border-bottom:1px solid var(--line);padding:32px 40px}.resume article:last-child{border-bottom:0}.role-top{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.resume h3,.project-copy h3{margin:0;font-size:20px;font-weight:600}.resume time,.project-copy time{white-space:nowrap;font-size:16px;font-weight:500}.resume p{margin:12px 0 0;font-size:20px;line-height:1.5}.resume-link{width:max-content;color:inherit;text-underline-offset:4px;align-items:center;gap:4px;margin:auto;font-size:20px;font-weight:600;text-decoration:underline;display:flex}.resume-link svg{fill:currentColor;width:20px;height:20px}.projects{align-content:center;min-height:clamp(760px,56.25vw,1080px);padding:64px clamp(48px,7vw,160px);display:grid}.projects h2{margin-bottom:32px}.project-grid{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;grid-auto-columns:clamp(280px,26vw,420px);grid-auto-flow:column;gap:24px;width:100%;margin:-16px auto 0;padding:16px 0 14px;scroll-padding-inline:1px;display:grid;overflow:auto hidden}.project-card{isolation:isolate;scroll-snap-align:start;border-radius:7.222%/8.025%;transition:transform .2s;display:block;position:relative}.project-card img{border-radius:inherit;clip-path:inset(0 round 7.222%/8.025%);filter:drop-shadow(0 2px 4px #67412308);width:100%;height:auto;transition:filter .2s;display:block}.project-date{z-index:1;color:#202020;pointer-events:none;background:#fff1e5;padding:0 .18em;font:500 clamp(12px,1.04vw,16px)/1 Instrument Sans;position:absolute;top:69.2%;right:7.1%}.project-card:hover{transform:translateY(-5px)}.project-card:hover img{filter:drop-shadow(0 10px 22px #67412320)}footer{color:#f7f3ef;text-align:center;background:#202020;padding:120px 20px 80px}.thanks{justify-content:center;align-items:center;gap:16px;font:400 clamp(28px,2.1vw,40px)/1.5 Instrument Serif;display:flex}.thanks img{object-fit:contain;width:clamp(27px,4.2vw,81px);height:clamp(27px,4.2vw,81px);display:block}footer p{color:#f7f3ef;margin:24px 0 0;font-size:clamp(12px,1.05vw,20px)}@media (max-width:800px){.projects{min-height:auto}.project-grid{grid-template-columns:none;grid-auto-columns:minmax(280px,84vw);grid-auto-flow:column;margin:0 auto;padding:16px 0 14px;overflow:auto hidden}.art{height:180px}}@media (max-width:900px) and (min-width:641px){.intro{width:min(540px,100% - 220px)}.plant,.drop{left:28px}.loops{left:auto;right:26px}.cup{left:auto;right:20px}.eye{left:calc(50% + 80px)}}@media (max-width:760px){.experience-doodle{display:none}}@media (max-width:640px){nav{justify-content:space-between;gap:6px;width:calc(100% - 28px);padding:8px;top:14px}nav button{flex:1;width:auto;min-width:0;padding:0 8px;font-size:clamp(12px,3vw,13px)}nav .mark{background:#1f1f1f;border-radius:50%;width:36px;height:36px;margin-left:0;padding:7px 9px}.hero{min-height:720px;padding-top:160px}.intro{width:min(310px,100% - 82px);font-size:17px}.plant{width:42px;top:128px;left:8%}.loops{width:52px;top:140px;left:auto;right:8%}.cup{width:56px;top:520px;left:auto;right:8%}.drop{width:52px;top:520px;left:8%}.eye{display:none}.experience{min-height:auto;padding:70px 16px 105px}.experience-layout{width:100%}.resume{border-radius:16px;width:100%;margin:24px auto 22px}.resume article{padding:16px}.role-top{align-items:flex-start}.resume h3{font-size:14px}.resume time,.resume p{font-size:12px}.resume-link{font-size:14px}.projects{min-height:auto;padding:0 16px 75px}.project-grid{grid-template-columns:none;grid-auto-columns:minmax(280px,84vw);grid-auto-flow:column;gap:16px;max-width:none;overflow:auto hidden}footer{padding:64px 20px 56px}.thanks{gap:12px;font-size:28px}footer p{margin-top:18px;font-size:12px}h2{font-size:25px}}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transition:none;transform:none}.project-card,.project-card img{transition:none}}.experience-doodle.gold-bar{z-index:2}
