@font-face{font-family:et-book;font-style:normal;font-weight:400;src:url(https://cdn.jsdelivr.net/gh/edwardtufte/et-book@gh-pages/et-book/et-book-roman-line-figures/et-book-roman-line-figures.woff)format("woff");font-display:swap}@font-face{font-family:et-book;font-style:italic;font-weight:400;src:url(https://cdn.jsdelivr.net/gh/edwardtufte/et-book@gh-pages/et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.woff)format("woff");font-display:swap}@font-face{font-family:et-book;font-style:normal;font-weight:700;src:url(https://cdn.jsdelivr.net/gh/edwardtufte/et-book@gh-pages/et-book/et-book-bold-line-figures/et-book-bold-line-figures.woff)format("woff");font-display:swap}:root{--background:#fafaf8;--foreground:#111;--muted:#6b7280;--card:#f4f4f2;--border:#e5e5e3;--font-display:"et-book", Palatino, Georgia, serif}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--background);color:var(--foreground);font-family:var(--font-display);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:24px}body{background:var(--background);color:var(--foreground)}::selection{color:var(--background);background:var(--foreground)}a{color:inherit;text-decoration:none}main{width:100%;max-width:1024px;margin:0 auto;padding:48px 20px}.hero{flex-direction:column-reverse;gap:32px;display:flex}.hero-copy{width:100%}.hero h1,.page-title{letter-spacing:-.025em;font-size:36px;font-weight:400;line-height:40px}.hero-bio{max-width:28rem;margin-top:20px;padding-left:20px;list-style:outside}.hero-bio li{margin-bottom:6px;font-size:15px;line-height:1.35}.hero-bio li::marker{color:var(--muted)}.portrait{border:1px solid var(--border);background:var(--card);border-radius:16px;flex-shrink:0;align-self:center;width:192px;height:208px;overflow:hidden}.portrait img{object-fit:cover;object-position:center 25%;width:100%;height:100%;display:block}.socials{color:var(--muted);align-items:center;gap:14px;margin-top:24px;display:flex}.socials a{transition:color .15s;display:inline-flex}.socials a:hover{color:var(--foreground)}.socials svg{fill:currentColor;width:20px;height:20px}.nav-links{color:var(--muted);margin-top:24px;font-size:14px}.nav-links a,.section-links a,.page-header a{text-underline-offset:2px;text-decoration:underline}.nav-links a:hover,.section-links a:hover,.page-header a:hover{color:var(--foreground)}.work-section{margin-top:40px}.section-heading{letter-spacing:-.025em;font-size:24px;font-weight:400;line-height:32px}.section-links{color:var(--muted);margin-top:6px;font-size:14px}.project-grid{grid-template-columns:1fr;gap:40px 24px;margin-top:32px;display:grid}.project-card{flex-direction:column;min-width:0;display:flex}.project-image-wrap{aspect-ratio:16/10;border:1px solid var(--border);background:var(--card);border-radius:8px;transition:opacity .15s;display:block;overflow:hidden}.project-image-wrap:hover{opacity:.8}.project-image-placeholder{width:100%;height:100%;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:20px;font-size:13px;display:flex;position:relative;overflow:hidden}.project-image-placeholder:before{content:"";background:var(--border);width:140%;height:1px;position:absolute;transform:rotate(-18deg)}.project-mark{width:42px;height:42px;color:var(--foreground);border:1px solid #d4d4d0;border-radius:50%;place-items:center;font-size:20px;display:grid;position:relative}.project-image-placeholder>span:last-child{max-width:90%;position:relative}.project-title{margin-top:12px;font-size:14px;font-weight:600;line-height:1.35}.project-title a:hover,.writing-card:hover .writing-title{text-underline-offset:2px;text-decoration:underline}.project-meta,.writing-meta{color:var(--muted);margin-top:4px;font-size:12px;line-height:16px}.project-desc,.writing-desc{color:var(--foreground);margin-top:8px;font-size:14px;line-height:1.6}.project-more{width:fit-content;color:var(--muted);text-underline-offset:3px;align-items:center;gap:5px;margin-top:12px;font-size:13px;text-decoration:underline;transition:color .15s,gap .15s;display:inline-flex}.project-more:hover{color:var(--foreground);gap:8px}.writing-list{grid-template-columns:1fr;gap:32px 24px;margin-top:32px;display:grid}.page-header{margin-bottom:32px;font-size:14px;font-weight:600}.page-intro{max-width:35rem;color:var(--muted);margin-top:8px;font-size:14px;line-height:20px}.writing-title{font-size:16px;font-weight:600;line-height:1.35}.project-detail{max-width:43rem}.project-detail .page-header{margin-bottom:48px}.project-detail h1{letter-spacing:-.035em;font-size:clamp(2rem,5vw,3rem);font-weight:400;line-height:1.05}.project-detail .project-kicker{color:var(--muted);margin-top:12px;font-size:13px}.project-detail .project-content{margin-top:32px;font-size:16px;line-height:1.65}.project-detail .project-content>p:first-child{font-size:20px;line-height:1.45}.project-detail .project-content h2{margin:36px 0 8px;font-size:22px;font-weight:400;line-height:1.2}.project-detail .project-content p{margin-top:16px}.project-detail .project-content ul{margin:16px 0 0 22px}.project-detail .project-content li{margin-top:6px}.project-detail .project-cta{text-underline-offset:3px;margin-top:36px;text-decoration:underline;display:inline-block}.footer{border-top:1px solid var(--border);color:var(--muted);margin-top:80px;padding-top:24px;font-size:13px}@media (width>=640px){main{padding:64px 32px}.hero{gap:40px}.portrait{width:256px;height:256px}.project-grid,.writing-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=768px){main{padding:96px 40px}.hero{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:48px}.hero-copy{max-width:36rem}.portrait{align-self:flex-start}.work-section{margin-top:64px}}@media (width>=1024px){.project-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
