*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:#252525;font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #333;outline-offset:5px}.preview-bar{background:#f6f6f5;color:#777;padding:9px 28px;font-size:12px;display:flex;justify-content:space-between}.preview-bar a{text-decoration:none}.layout{max-width:1140px;margin:auto;padding:65px 40px;display:grid;grid-template-columns:220px minmax(0,660px);gap:100px}.sidebar{position:sticky;top:45px;align-self:start}.name{font-size:25px;letter-spacing:-.8px;text-decoration:none;line-height:1.2}.bio{font-size:14px;color:#737373;margin:18px 0 36px;max-width:200px}.filters{display:flex;flex-direction:column;gap:4px}.filters button{border:0;background:none;text-align:left;padding:8px 0;color:#777;display:flex;align-items:center;justify-content:space-between;font-size:15px}.filters button[aria-pressed=true]{color:#222;font-weight:600}.filters button span{font-size:12px;font-weight:400;color:#999}.secondary{display:flex;flex-direction:column;gap:10px;margin-top:40px;font-size:13px}.secondary a{text-decoration:none;color:#777}.feed-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}h1{font-size:19px;font-weight:500;margin:0}h2{font-size:27px;letter-spacing:-.65px;line-height:1.3;font-weight:500;margin:14px 0}h2 a{text-decoration:none}.search{border:0;border-bottom:1px solid #ddd;border-radius:0;padding:6px 0;width:165px;font-size:13px;background:#fff}.context{font-size:12px;color:#888;margin:0 0 36px;max-width:580px}.entry{padding:0 0 40px;margin-bottom:38px;border-bottom:1px solid #e9e9e9}.meta{font-size:12px;color:#858585}.entry p{margin:14px 0 20px;max-width:620px;font-size:16px}.tags{display:flex;gap:13px;flex-wrap:wrap;margin-top:20px}.tags button{border:0;background:none;padding:0;color:#7b7b7b;font-size:12px}.tags button:hover{color:#222;text-decoration:underline}.entry img{display:block;width:100%;max-height:340px;object-fit:cover;margin:25px 0 20px;border:1px solid #eee}.entry .read{font-size:13px}.example{color:#8c7250}.older{font-size:12px;color:#858585;margin:15px 0 30px}.empty{padding:35px 0;color:#777}.empty button{display:block;margin-top:20px;padding:0;border:0;background:none;text-decoration:underline}.post h1{font-size:37px;letter-spacing:-1px;line-height:1.2;margin:20px 0 30px}.post p{font-size:18px;margin:24px 0;line-height:1.75}.post img{width:100%;margin:15px 0}.back{display:inline-block;font-size:13px;margin-bottom:35px}.post footer{margin-top:45px;border-top:1px solid #eee;padding-top:20px;font-size:13px}.about{border-top:1px solid #eee;margin-top:35px;padding-top:25px;color:#777;font-size:14px}.about h2{font-size:17px;color:#333}.bottom{font-size:12px;color:#888;margin-top:40px}@media(max-width:760px){.layout{padding:35px 24px;grid-template-columns:1fr;gap:40px}.sidebar{position:static}.bio{max-width:none;margin:12px 0 25px}.filters{flex-direction:row;gap:22px;flex-wrap:wrap}.filters button{gap:8px}.secondary{flex-direction:row;gap:18px;margin-top:20px}.preview-bar{padding:9px 20px}.preview-bar span{display:none}.feed-header{flex-wrap:wrap}.search{width:150px}h2{font-size:25px}.context{margin-bottom:25px}.entry{margin-bottom:30px;padding-bottom:30px}.post h1{font-size:32px}.post p{font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Project entries use a dense image matrix, writing stays full-width. */
[data-feed]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 16px;align-items:start}[data-feed]>.entry,[data-feed]>.older,[data-feed]>.empty{grid-column:1/-1}[data-feed]>.entry{margin-bottom:10px}.older{margin:10px 0 0}.project-tile{min-width:0}.project-tile>a{display:block;text-decoration:none}.project-tile img{display:block;width:100%;aspect-ratio:1.4;object-fit:cover;border:1px solid #eee;background:#f6f6f6}.project-tile h2{font-size:15px;letter-spacing:-.2px;line-height:1.4;margin:11px 0 3px}.project-tile p{font-size:12px;line-height:1.5;color:#777;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-tile>a:hover h2{text-decoration:underline;text-underline-offset:3px}@media(max-width:1050px){[data-feed]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){[data-feed]{gap:24px 14px}.project-tile img{aspect-ratio:1.25}.project-tile h2{font-size:14px}.project-tile p{font-size:11px}}@media(max-width:340px){[data-feed]{grid-template-columns:1fr}}

.feed-header h1:empty{display:none}.feed-header:has(h1:empty){justify-content:flex-end}.meta:empty{display:none}.project-tile p{line-height:1.6}.layout{padding-top:60px}@media(max-width:760px){.layout{padding-top:35px}}

.filter-separator{height:14px}.project-tile h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:760px){.filter-separator{display:none}.filters{gap:7px 20px}}

/* Keep centered navigation stable when content toggles the scrollbar. */
html{overflow-y:scroll;scrollbar-gutter:stable}.feed-header:has(h1:empty){display:none}

.project-categories{display:flex;flex-direction:column;gap:4px;margin-top:12px;padding-left:14px;border-left:1px solid #e5e5e5}.project-categories[hidden]{display:none}@media(max-width:760px){.project-categories{flex-basis:100%;flex-direction:row;flex-wrap:wrap;gap:7px 20px;margin-top:5px;padding-left:0;border-left:0}}

/* Production: project-only index with progressive enhancement. */
[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:12px;left:12px;transform:translateY(-200%);background:white;padding:8px 12px;z-index:10}.skip-link:focus{transform:none}.project-categories{margin-top:4px}.filters button{min-height:36px}.project-tile a:focus-visible{outline-offset:5px}.project-tile h2{font-weight:500}

.project-tile img{height:auto}
