@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff")}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-serif-4-latin-600-normal-DouSKlru.woff2) format("woff2"),url(/assets/source-serif-4-latin-600-normal-DeJomR3S.woff) format("woff")}:root{font-family:Inter,Arial,sans-serif;color:#29251f;background:#f5f2e9;font-synthesis:none;--ink: #29251f;--muted: #59594f;--accent: #6a421f;--rule: #cfc4b2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;min-width:320px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}a:hover{color:var(--accent)}a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px;border-radius:2px}p{margin:0 0 16px;line-height:1.55}h1,h2,h3{margin:0}h1,.text-section h2,.project-copy h3,.story-body h2,.not-found h1{font-family:"Source Serif 4",Georgia,serif;font-weight:600;letter-spacing:-.035em}.wrap{width:84%;max-width:1200px;margin-inline:auto}.site-header{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:17px 0;border-bottom:1px solid var(--rule)}.identity{font-size:21px;font-weight:600;letter-spacing:-.04em;text-decoration:none}nav{display:flex;gap:32px;font-size:15px}nav a{padding:9px 0;text-decoration:none}nav a:hover{text-decoration:underline}.skip-link{position:absolute;left:12px;top:-100px;z-index:3;padding:12px 18px;background:var(--ink);color:#fff}.skip-link:focus{top:12px}.eyebrow{font-family:Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.19em;font-size:11px;font-weight:600;line-height:1.5;color:var(--muted);margin:0 0 15px}.hero{padding:44px 0 28px}.hero h1{font-size:clamp(46px,6.4vw,84px);line-height:1.04;max-width:1050px;margin-bottom:22px;color:#171713}.intro{max-width:720px;font-size:22px;line-height:1.45;margin-bottom:12px}.secondary-intro{max-width:680px;color:var(--muted);font-size:17px;line-height:1.5}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;background:#4b3019;color:#fffaf0;padding:15px 23px;border:1px solid #4b3019;border-radius:2px;text-decoration:none;font-size:16px;font-weight:500;margin-top:10px;min-height:48px}.button:hover{background:#624121;color:#fff}.button svg,.text-link svg,.email svg{flex-shrink:0}.work{border-top:1px solid var(--rule)}.section-label{padding-top:25px;margin-bottom:0}.project-row{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:50px;padding:30px 0;min-height:228px;border-bottom:1px solid var(--rule)}.project-row:first-of-type{padding-top:15px}.project-copy h3{font-size:clamp(28px,3.2vw,38px);line-height:1.12;margin-bottom:12px;max-width:790px}.project-copy h3 a{text-decoration:none}.project-copy h3 a:hover{text-decoration:underline}.project-copy p{color:var(--muted);font-size:17px;line-height:1.5;max-width:710px;margin-bottom:10px}.text-link{display:inline-flex;align-items:center;gap:15px;color:var(--accent);font-size:17px;font-weight:500;min-height:44px;text-decoration:none}.text-link:hover{text-decoration:underline}.workflow-frame{position:relative;width:220px;height:132px;overflow:hidden}.workflow{display:block;position:absolute;width:310px;max-width:none;height:155px;object-fit:contain;top:50%;left:50%;transform:translate(-50%,-50%);mix-blend-mode:darken}.text-section{padding:30px 0;border-bottom:1px solid var(--rule)}.text-section .eyebrow{margin-bottom:9px}.text-section h2{font-size:clamp(28px,3vw,36px);line-height:1.15;margin-bottom:13px}.text-section>p:not(.eyebrow){font-size:17px;color:var(--muted);max-width:930px;line-height:1.55}.text-section>p:last-child{margin-bottom:0}.technical{margin-top:24px;border-block:1px solid var(--rule)}.technical summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:25px;list-style:none;font-size:17px;padding:18px 0;color:var(--accent)}.technical summary::-webkit-details-marker{display:none}.technical summary svg{flex-shrink:0;transition:transform .15s ease}.technical[open] summary svg{transform:rotate(45deg)}.detail-kicker{display:block;font-size:9px;margin-bottom:5px}.technical-content{padding:0 0 18px;max-width:790px;color:var(--muted);font-size:17px}.technical-content p{margin-bottom:0}.personal .technical{border-bottom:0;margin-top:18px}.personal .technical summary{padding-bottom:0}.personal .technical[open] summary{padding-bottom:18px}.footer{display:grid;grid-template-columns:1.1fr 1fr;gap:42px;padding:28px 0 32px}.footer .eyebrow{margin-bottom:9px}.footer p{font-size:14px;color:var(--muted);line-height:1.55;margin-bottom:8px}.contact{border-left:1px solid var(--rule);padding-left:35px}.email{display:inline-flex;align-items:center;gap:10px;font-weight:500;color:var(--accent);font-size:15px;text-decoration:none;overflow-wrap:anywhere;min-height:40px}.email:hover{text-decoration:underline}.footer .location{font-size:12px;margin-top:8px}.story{padding-top:30px}.back-link{font-size:14px}.story-header{padding:35px 0 32px;border-bottom:1px solid var(--rule)}.story-header h1{font-size:clamp(40px,5vw,67px);line-height:1.08;max-width:1030px;margin-bottom:24px}.story-intro{font-size:21px;max-width:820px;color:var(--muted)}.story-body{padding-top:35px}.story-body>section{max-width:790px;margin-bottom:32px}.story-body>.story-outcome{max-width:1050px;display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:36px;align-items:center}.story-workflow{justify-self:end}.story-body h2{font-size:29px;margin-bottom:12px}.story-body p{font-size:18px;color:var(--muted);line-height:1.7}.story-body .technical{max-width:790px;margin-top:35px;margin-bottom:35px}.next-story{border-block:1px solid var(--rule);padding:25px 0;margin-top:20px}.next-story .eyebrow{margin-bottom:6px}.next-story .text-link{max-width:820px;font-size:20px;line-height:1.4}.not-found{padding-block:80px;min-height:65vh}.not-found h1{max-width:750px;font-size:55px;margin-bottom:30px}@media(min-width:1250px){.hero{padding-block:65px 50px}.project-row{padding-block:35px}}@media(max-width:760px){.wrap{width:88%}.site-header{flex-wrap:wrap;gap:12px;padding:20px 0 15px}.identity{font-size:19px}nav{font-size:14px;gap:25px}.hero{padding:36px 0 30px}.hero h1{font-size:clamp(39px,7.2vw,54px);line-height:1.08}.intro{font-size:19px}.secondary-intro{font-size:16px}.project-row{grid-template-columns:minmax(0,1fr) 130px;gap:20px;min-height:210px}.project-copy h3{font-size:29px}.workflow-frame{width:130px;height:85px}.workflow{width:190px;height:95px}.project-copy p{font-size:16px}.text-section>p:not(.eyebrow){font-size:16px}.text-section h2{font-size:29px}.footer{grid-template-columns:1fr;gap:25px}.contact{border-left:0;border-top:1px solid var(--rule);padding:24px 0 0}.story-header h1{font-size:43px}.story-intro{font-size:19px}.story-body>.story-outcome{display:block}.story-workflow{margin:12px 0 0}}@media(max-width:520px){.site-header{gap:8px}nav{width:100%;gap:28px}.project-row{display:block;padding:26px 0 24px}.project-copy h3{font-size:28px;max-width:100%}.workflow-frame{width:120px;height:60px;margin:10px 0 0}.workflow{width:175px;height:87.5px}.hero h1{font-size:42px;letter-spacing:-.04em}.eyebrow{font-size:10px}.text-section h2{font-size:28px}.story-header h1{font-size:38px}.story-body h2{font-size:27px}.story-body p{font-size:17px}.not-found h1{font-size:39px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.technical summary svg{transition:none}}
