:root{--paper:#f7f4ee;--ink:#181715;--muted:#4f4a43;--accent:#8a3d2d;--rule:#18171529;--serif:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;--sans:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;color:var(--ink);background:var(--paper);font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);min-width:320px;min-height:100vh;margin:0}a{color:inherit;text-decoration:none}main{width:min(100%,1040px);margin:0 auto;padding-inline:clamp(20px,5vw,56px)}.hero{flex-direction:column;justify-content:space-between;min-height:42vh;padding-top:24px;padding-bottom:clamp(36px,6vw,72px);display:flex}.site-nav{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:20px;padding-bottom:18px;font-size:.9rem;display:flex}.wordmark{letter-spacing:.01em;font-weight:600}.nav-links{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;gap:clamp(16px,2.5vw,28px);display:flex}.nav-links a{text-underline-offset:5px;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:color .16s,text-decoration-color .16s}.nav-links a:hover{color:var(--ink);text-decoration-color:currentColor}.hero-content{max-width:780px}.eyebrow,.section-kicker,.project-status{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:650}h1,h2,h3,p{margin-top:0}h1{font-family:var(--serif);letter-spacing:-.01em;margin-bottom:14px;font-size:clamp(2.2rem,5vw,4rem);font-weight:500;line-height:1.03}.lede{max-width:560px;color:var(--muted);margin:0;font-size:clamp(1.02rem,1.6vw,1.24rem);line-height:1.55}.section{border-top:1px solid var(--rule);grid-template-columns:minmax(120px,.26fr) minmax(0,1fr);gap:clamp(24px,5vw,64px);padding-block:clamp(30px,5vw,54px);display:grid}.section-header h2,.contact h2{max-width:560px;font-family:var(--serif);letter-spacing:-.005em;margin-bottom:0;font-size:clamp(1.45rem,2.8vw,2.35rem);font-weight:500;line-height:1.14}.section-header .section-kicker{margin-bottom:12px}.projects{align-items:start}.project-list{border-top:1px solid var(--rule)}.project-row{border-bottom:1px solid var(--rule);grid-template-columns:minmax(140px,.32fr) minmax(0,1fr);gap:clamp(20px,4vw,48px);padding:22px 0;display:grid}.project-heading h3{font-family:var(--serif);letter-spacing:-.005em;margin-bottom:6px;font-size:clamp(1.25rem,2vw,1.7rem);font-weight:500;line-height:1.12}.project-heading p,.project-body p:last-child{color:var(--muted);margin-bottom:0;font-size:clamp(.96rem,1.25vw,1.06rem);line-height:1.55}.project-status{margin-bottom:10px}.contact{align-items:end;padding-bottom:clamp(40px,6vw,72px)}.contact a{border-bottom:1px solid var(--ink);width:fit-content;color:var(--ink);font-family:var(--serif);margin-top:22px;font-size:clamp(1.3rem,2.4vw,1.95rem);font-weight:500;line-height:1.2;transition:color .16s,border-color .16s;display:inline-flex}.contact a:hover{color:var(--accent);border-color:var(--accent)}@media (width<=760px){.hero{min-height:38vh;padding-top:18px}.section,.project-row{grid-template-columns:1fr}.site-nav{flex-direction:column;align-items:flex-start}.nav-links{justify-content:flex-start}h1{font-size:clamp(2.3rem,12vw,3.3rem)}.section,.project-row{gap:14px}.contact a{overflow-wrap:anywhere}}
