PageSourceSearch

https://pedroneves.info/research

html pedroneves.info collected 2026-10-05 07:10:05 UTC 99,943 bytes, 3 lines download raw bytes

1<!DOCTYPE html><html class="light" lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/assets/globals-Dd9Qnygj.css" data-precedence="default"/><title>Research | Pedro Neves</title><meta name="theme-color" content="#ffffff"/><meta name="description" content="Pedro Neves"/><meta name="robots" content="index, follow"/><meta property="og:title" content="Research | Pedro Neves"/><meta property="og:description" content="Pedro Neves"/><meta property="og:url" content="http://localhost:3001/research"/><meta property="og:type" content="article"/><meta property="og:site_name" content="Pedro Neves"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="Research | Pedro Neves"/><meta name="twitter:description" content="Pedro Neves"/><link rel="modulepreload" href="/assets/index-BevVM60l.js"/><link rel="modulepreload" href="/assets/jsx-runtime-61oo8qHm.js"/><link rel="modulepreload" href="/assets/sanity-awaCFjpo.js"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DZP7Ga-F.js"/><link rel="modulepreload" href="/assets/link-BGHVHzFt.js"/><link rel="modulepreload" href="/assets/public-routes-DL9MFELF.js"/><link rel="modulepreload" href="/assets/_frontend-BAEUmrLB.js"/><link rel="modulepreload" href="/assets/_frontend-B_J9IQCk.js"/><link rel="modulepreload" href="/assets/research-DkwOj5HA.js"/><link rel="modulepreload" href="/assets/internal-route-link-bMIfa5ap.js"/><link rel="modulepreload" href="/assets/portable-text-BdfqlKqE.js"/><link rel="icon" href="/favicon.ico" type="image/x-icon"/><link rel="icon" href="/icon.svg" type="image/svg+xml"/><link rel="apple-touch-icon" href="/apple-touch-icon.png"/><link rel="manifest" href="/manifest.json"/><link rel="canonical" href="http://localhost:3001/research"/>
1<script type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"http://localhost:3001"},{"@type":"ListItem","position":2,"name":"Research","item":"http://localhost:3001/research"}]}</script>
1</head><body><div><!--$--><!--$--><div class="flex flex-col font-sans text-base md:text-lg min-h-screen md:h-screen md:overflow-hidden "><header class="sticky top-0 z-50 flex h-14 w-full items-center px-3 py-3 font-mono text-base [view-transition-name:site-header]"><div class="flex w-full items-center justify-between gap-3 md:justify-end"><a class="pointer-events-auto md:hidden" href="/">PMN</a><div class="pointer-events-auto hidden md:contents"><nav aria-label="Breadcrumb" class="pt-0.5"><ol class="flex items-center gap-3"><li><span aria-current="page">Research</span></li><li aria-hidden="true">←</li><li><a href="/">PMN</a></li></ol></nav></div><nav class="pointer-events-auto flex items-center gap-3"><a aria-label="Projects" class="group size-8" href="/projects"><span class="block size-full origin-center animate-[spin_1.5s_linear_infinite] [animation-play-state:paused] motion-reduce:animate-none group-hover:[animation-play-state:running]"><svg fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="text-federal-blue size-full transition-colors duration-100 ease-out group-hover:text-copper group-data-[status=active]:text-copper" aria-label="Projects Icon"><path d="M12 1.2v21.6M1.2 12h21.6M4.363 4.363l15.274 15.274M4.363 19.637 19.637 4.363" fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="1.5"></path></svg></span></a><a aria-label="Research" class="group size-8 active" href="/research" data-status="active" aria-current="page"><span class="block size-full origin-center animate-[spin_2s_linear_infinite] [animation-play-state:paused] motion-reduce:animate-none group-hover:[animation-play-state:running]"><svg fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="text-federal-blue size-full group-hover:text-copper group-data-[status=active]:text-copper" aria-label="Research Icon"><path d="M16.564 2.212a10.8 10.8 0 0 0-14.352 14.352M7.436 21.788A10.8 10.8 0 0 0 21.788 7.436" fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="1.5"></path><circle cx="12" cy="12" r="3.6"></circle></svg></span></a><a aria-label="About" class="group size-8" href="/about"><span class="block size-full origin-center animate-[spin_2s_linear_infinite] [animation-play-state:paused] motion-reduce:animate-none group-hover:[animation-play-state:running]"><svg fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="text-federal-blue size-full group-hover:text-copper group-data-[status=active]:text-copper" aria-label="About Icon"><circle cx="12" cy="12" fill="none" r="10.8" stroke="currentColor" stroke-dasharray="9.048 7.9166" stroke-linecap="round" stroke-width="1.5" transform="rotate(30 12 12)"></circle><circle cx="12" cy="1.2" r="0.75"></circle><circle cx="22.8" cy="12" r="0.75"></circle><circle cx="12" cy="22.8" r="0.75"></circle><circle cx="1.2" cy="12" r="0.75"></circle></svg></span></a></nav></div></header><!--$--><main class="main-base flex flex-col space-y-12 px-0! pb-0! md:min-h-0 md:flex-1"><h1 class="sr-only">Research</h1><div class="flex flex-col gap-3 mx-auto max-w-prose px-3 text-center text-base md:text-lg lg:max-w-200 lg:px-0 lg:text-xl"><p class="mx-auto w-full max-w-200 empty:min-h-[1lh] whitespace-pre-line">My research and teaching are inseparable from my professional practice and creative activity. These different areas of investigation and experimentation demonstrate how low-stakes experiments and classroom explorations often engage with my work as a designer. They also show that the boundaries between the classroom, experimental practice, and professional work do not really exist. Instead, they come together in ways that are exploratory, engaging, and mutually reinforcing.</p></div><div class="flex flex-col border-copper border-t md:hidden"><a class="group block w-full" href="/research/speculative-design"><div class="w-full border-copper border-b transition-opacity duration-300 ease-out hover:opacity-100!" data-book="true"><div class="flex items-center gap-3 px-3 py-4 transition-opacity duration-300 ease-out"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0" aria-label="Other">
1<path d="M16.95 4.7a.75.75 0 0 1 .75.75v5.396a6.124 6.124 0 0 1 5.4 6.104 6.127 6.127 0 0 1-6.15 6.15 6.13 6.13 0 0 1-6.15-6.15 6.125 6.125 0 0 1 5.4-6.104V5.45a.75.75 0 0 1 .75-.75m0 7.6a4.63 4.63 0 0 0-4.65 4.65 4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65 4.63 4.63 0 0 0-4.65-4.65M6.15 0a6.13 6.13 0 0 1 6.15 6.15 6.123 6.123 0 0 1-5.4 6.103v5.397a.75.75 0 0 1-1.5 0v-5.397A6.123 6.123 0 0 1 0 6.15 6.13 6.13 0 0 1 6.15 0m0 1.5A4.63 4.63 0 0 0 1.5 6.15a4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65A4.63 4.63 0 0 0 6.15 1.5" fill="#000"></path></svg><h2 class="text-lg">Speculative Design</h2></div></div></a><a class="group block w-full" href="/research/expressive-typography"><div class="w-full border-copper border-b transition-opacity duration-300 ease-out hover:opacity-100!" data-book="true"><div class="flex items-center gap-3 px-3 py-4 transition-opacity duration-300 ease-out"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="text-lg">Expressive Typography </h2></div></div></a><a class="group block w-full" href="/research/letterform-design"><div class="w-full border-copper border-b transition-opacity duration-300 ease-out hover:opacity-100!" data-book="true"><div class="flex items-center gap-3 px-3 py-4 transition-opacity duration-300 ease-out"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="text-lg">Letterform Design</h2></div></div></a><a class="group block w-full" href="/research/code-to-print"><div class="w-full border-copper border-b transition-opacity duration-300 ease-out hover:opacity-100!" data-book="true"><div class="flex items-center gap-3 px-3 py-4 transition-opacity duration-300 ease-out"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="text-lg">Code To Print ();</h2></div></div></a><a class="group block w-full" href="/research/scripting-typography"><div class="w-full border-copper border-b transition-opacity duration-300 ease-out hover:opacity-100!" data-book="true"><div class="flex items-center gap-3 px-3 py-4 transition-opacity duration-300 ease-out"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="text-lg">Typography &amp; Code</h2></div></div></a><a class="group block w-full" href="/research/creative-coding"><div class="w-full border-copper border-b transition-opacity duration-300 ease-out hover:opacity-100!" data-book="true"><div class="flex items-center gap-3 px-3 py-4 transition-opacity duration-300 ease-out"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="text-lg">
1Creative Coding</h2></div></div></a></div><!--$?--><template id="B:0"></template><!--/$--></main><!--/$--><footer class="text-xs md:hidden"><div class="flex w-full flex-col gap-8 p-3"><div class="flex flex-col justify-between gap-1.5 md:flex-row md:gap-6 md:items-centerborder-copper border-t pt-3"><p>© <!-- -->2026<!-- --> PEDRO NEVES</p><div class="flex flex-col gap-6 md:flex-row md:gap-12"><ul class="flex items-center gap-3"><li><a class="transition-colors hover:text-muted-foreground" href="https://instagram.com/pm.neves" rel="noopener noreferrer" target="_blank">Instagram</a></li><li><a class="transition-colors hover:text-muted-foreground" href="https://linkedin.com/in/pedroneves" rel="noopener noreferrer" target="_blank">LinkedIn</a></li><li><a class="transition-colors hover:text-foreground" data-domain="uic.edu" data-user="pneves2" href="#contact" rel="noopener noreferrer">Email</a></li></ul><p><a class="transition-colors hover:text-muted-foreground" href="https://andreazaccuri.com/" rel="noopener noreferrer" target="_blank">Website by AZ</a></p></div></div></div></footer></div><!--/$--><!--/$--></div><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false" data-react-aria-top-layer="true"></section>
1<script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-BevVM60l.js","/assets/jsx-runtime-61oo8qHm.js","/assets/sanity-awaCFjpo.js","/assets/lazyRouteComponent-DZP7Ga-F.js","/assets/link-BGHVHzFt.js","/assets/public-routes-DL9MFELF.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-BevVM60l.js"}}]},"/_frontend":$R[8]={preloads:$R[9]=["/assets/_frontend-BAEUmrLB.js","/assets/_frontend-B_J9IQCk.js"]},"/_frontend/research/":$R[10]={preloads:$R[11]=["/assets/research-DkwOj5HA.js","/assets/internal-route-link-bMIfa5ap.js","/assets/portable-text-BdfqlKqE.js"]}}},matches:$R[12]=[$R[13]={i:"__root__�",u:1791184204578,s:"success",ssr:!0},$R[14]={i:"�_frontend�",u:1791184204611,s:"success",l:$R[15]={sanityRuntime:$R[16]={mode:"public",perspective:"published",useCdn:!0,stegaEnabled:!1,visualEditingEnabled:!1,invalidationMode:"none",previewUnavailableReason:"not-development",studioUrl:"https://pedroneves.sanity.studio"},siteSettings:$R[17]={_id:"siteSettings",email:"[email protected]",fullName:"Pedro Neves",githubUrl:null,instagramUrl:"https://instagram.com/pm.neves",isMaintenanceEnabled:!1,jobTitle:"Designer & Educator",linkedinUrl:"https://linkedin.com/in/pedroneves",maintenanceMessage:"New Website Coming Soon",sameAs:null,siteName:"Pedro Neves"}},ssr:!0},$R[18]={i:"�_frontend�research��research�",u:1791184204769,s:"success",l:$R[19]={classes:$R[20]=[$R[21]={_id:"e67cb59c-66f6-4f31-81fb-bc4a3beaf05d",dateTaught:null,description:"Why does Design always need to be necessary and useful?",icon:"other",image:null,name:"Speculative Design",provider:null,seo:$R[22]={seoDescription:null,seoImage:null,seoRobots:"index, follow",seoTitle:null},slug:$R[23]={_type:"slug",current:"speculative-design"}},$R[24]={_id:"eda8f9eb-40c7-4f7e-975b-bcea3c038991",dateTaught:null,description:"Exploring tools, gestures and surfaces. ",icon:"graphic-design",image:null,name:"Expressive Typography ",provider:null,seo:$R[25]={seoDescription:null,seoImage:null,seoRobots:"index, follow",seoTitle:null},slug:$R[26]={_type:"slug",current:"expressive-typography"}},$R[27]={_id:"yVZ25wDQ9QtdhtpMGBlIsO",dateTaught:null,description:"What makes an \"A\"... an \"A\"?",icon:"graphic-design",image:null,name:"Letterform Design",provider:null,seo:$R[28]={seoDescription:null,seoImage:null,seoRobots:"index, follow",seoTitle:null},slug:$R[29]={_type:"slug",current:"letterform-design"}},$R[30]={_id:"yVZ25wDQ9QtdhtpMGBlIu1",dateTaught:null,description:"When numbers leave the screen and are translated onto paper.",icon:"graphic-design",image:null,name:"Code To Print ();",provider:null,seo:$R[31]={seoDescription:null,seoImage:null,seoRobots:"index, follow",seoTitle:null},slug:$R[32]={_type:"slug",current:"code-to-print"}},$R[33]={_id:"yVZ25wDQ9QtdhtpMGBlIve",dateTaught:null,description:"When two unexpected worlds meet.",icon:"computer-science",image:null,name:"Typography & Code",provider:null,seo:$R[34]={seoDescription:null,seoImage:null,seoRobots:"index, follow",seoTitle:null},slug:$R[35]={_type:"slug",current:"scripting-typography"}},$R[36]={_id:"yVZ25wDQ9QtdhtpMGBlIxH",dateTaught:null,description:"To code or not to code... that's never the question.",icon:"computer-science",image:null,name:"Creative Coding",provider:null,seo:$R[37]={seoDescription:null,seoImage:null,seoRobots:"index, follow",seoTitle:null},slug:$R[38]={_type:"slug",current:"creative-coding"}}],researchPage:$R[39]={_id:"researchPage",description:$R[40]=[$R[41]={_key:"80498fbd3b47",_type:"block",children:$R[42]=[$R[43]={_key:"188397648700",_type:"span",marks:$R[44]=[],text:"My research and teaching are inseparable from my professional practice and creative activity. These different areas of investigation and experimentation demonstrate how low-stakes experiments and classroom explorations often engage with my work as a designer. They also show that the boundaries between the classroom, experimental practice, and professional work do not really exist. Instead, they come together in ways that are exploratory, engaging, and mutually reinforcing."}],markDefs:$R[45]=[],style:"normal"}],hideStatements:!0,seo:$R[46]={seoDescription:null,seoImage:null,seoRobots:"index, follow",seoTitle:null}},home:$R[47]={_id:"home",backgroundImage:$R[48]={alt:null,asset:$R[49]={_id:"image-46c5caec2c70f7c6d5907f57c6dbfcdc814b606b-3433x2575-jpg",metadata:$R[50]={dimensions:$R[51]={height:2575,width:3433},lqip:"data:image/jpeg;base64,/9j/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAAPABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAQFB//EACMQAAICAQIGAwAAAAAAAAAAAAEDAgQABREGEiEiMUFCYXH/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/8QAFBEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8A3qrwiuPEo1645zLi1lcO7pynr4xvWtUjT0duoLQ1kVeYCPcfwZSo1LSb9pjrMmV5neED8frG2wBEhsDv6OBJ02yL1BFkKmoNiJcjBtKO/o4YixPEJnIwnSjHfoCCdhhgf//Z"},url:"https://cdn.sanity.io/images/2riox97l/production/46c5caec2c70f7c6d5907f57c6dbfcdc814b606b-3433x2575.jpg"},crop:null,hotspot:null},finderWindowTitle:"Workfolio",homeLinks:$R[52]=[$R[53]={_key:"49ecb45abd95",externalUrl:null,iconColor:"#2b6fde",iconLetter:"P",internalPage:$R[54]={_type:"projectsPage",slug:null},linkType:"internal",title:"projects.docs"},$R[55]={_key:"a5077fc66a4d",externalUrl:null,iconColor:"#9a9ea3",iconLetter:".",internalPage:$R[56]={_type:"researchPage",slug:null},linkType:"internal",title:"research-and-creative-activity.txt"},$R[57]={_key:"b0e34f7ec2a7",externalUrl:null,iconColor:"#e74c3c",iconLetter:"A",internalPage:$R[58]={_t
1ype:"about",slug:null},linkType:"internal",title:"about.csv"}],seoDescription:"Pedro Neves",seoImage:$R[59]={alt:"Pedro Neves",asset:null,crop:null,hotspot:null},seoTitle:"Pedro Neves",sketchCameraAccess:!1,sketchLibraries:null,sketchSource:"let img; \n\nasync function setup() {\n\tcreateCanvas(windowWidth, windowHeight)\t\n\timg = await loadImage(\"https://cdn.sanity.io/images/2riox97l/production/078246517094d9c2fe14548416c6d99d0f01d592-1080x1080.jpg\");\n\tbackground(200)\n}\n\nfunction draw() {\n\tfill(200)\n\timageMode(CENTER)\n\timage(img,mouseX,mouseY,100,100,50,50);\n\t//rect(mouseX, mouseY, 200)\t\n}",visualMode:"sketch"}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script>
1<script type="module" async="" src="/assets/index-BevVM60l.js"></script>
1<script>document.currentScript.remove();/*$tsr-stream-boundary*/</script>
1<script id="_R_">requestAnimationFrame(function(){$RT=performance.now()});</script>
1<div hidden id="S:0"><div class="hidden min-h-0 flex-1 overflow-hidden border-b border-b-copper [container-type:size] md:block [&amp;:has([data-book]:hover)_[data-book]]:opacity-40 [&amp;_.ticker-item:has([data-book]:hover)]:z-10"><div class="h-full" style="overflow-x:clip;display:flex;position:relative"><ul style="display:flex;position:relative;list-style-type:none;padding:0;margin:0;justify-content:flex-start;flex-direction:row;gap:0px;opacity:0;align-items:flex-end;width:100%;height:100%;max-height:100%;max-width:100%;transform:translateX(NaNpx)"><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="1" aria-setsize="48"><a class="group flex items-end" href="/research/speculative-design"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(596.88px, 91.82769230769232cqh);--spine-right-edge-height:max(0px, calc(min(596.88px, 91.82769230769232cqh) - min(596.88px, 91.82769230769232cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Other"><path d="M16.95 4.7a.75.75 0 0 1 .75.75v5.396a6.124 6.124 0 0 1 5.4 6.104 6.127 6.127 0 0 1-6.15 6.15 6.13 6.13 0 0 1-6.15-6.15 6.125 6.125 0 0 1 5.4-6.104V5.45a.75.75 0 0 1 .75-.75m0 7.6a4.63 4.63 0 0 0-4.65 4.65 4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65 4.63 4.63 0 0 0-4.65-4.65M6.15 0a6.13 6.13 0 0 1 6.15 6.15 6.123 6.123 0 0 1-5.4 6.103v5.397a.75.75 0 0 1-1.5 0v-5.397A6.123 6.123 0 0 1 0 6.15 6.13 6.13 0 0 1 6.15 0m0 1.5A4.63 4.63 0 0 0 1.5 6.15a4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65A4.63 4.63 0 0 0 6.15 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Speculative Design">Speculative Design</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="2" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(596.88px, 91.82769230769232cqh);--spine-right-edge-height:max(0px, calc(min(596.88px, 91.82769230769232cqh) - min(610.52px, 93.92615384615385cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Other"><path d="M16.95 4.7a.75.75 0 0 1 .75.75v5.396a6.124 6.124 0 0 1 5.4 6.104 6.127 6.127 0 0 1-6.15 6.15 6.13 6.13 0 0 1-6.15-6.15 6.125 6.125 0 0 1 5.4-6.104V5.45a.75.75 0 0 1 .75-.75m0 7.6a4.63 4.63 0 0 0-4.65 4.65 4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65 4.63 4.63 0 0 0-4.65-4.65M6.15 0a6.13 6.13 0 0 1 6.15 6.15 6.123 6.123 0 0 1-5.4 6.103v5.397a.75.75 0 0 1-1.5 0v-5.397A6.123 6.123 0 0 1 0 6.15 6.13 6.13 0 0 1 6.15 0m0 1.5A4.63 4.63 0 0 0 1.5 6.15a4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65A4.63 4.63 0 0 0 6.15 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Speculative Design">Speculative Design</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="3" aria-setsize="48"><a class="group flex items-end" href="/research/expressive-typography"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(610.52px, 93.92615384615385cqh);--spine-right-edge-height:max(0px, calc(min(610.52px, 93.92615384615385cqh) - min(610.52px, 93.92615384615385cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 
16.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Expressive Typography ">Expressive Typography </h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="4" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(610.52px, 93.92615384615385cqh);--spine-right-edge-height:max(0px, calc(min(610.52px, 93.92615384615385cqh) - min(570.88px, 87.8276923076923cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Expressive Typography ">Expressive Typography </h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="5" aria-setsize="48"><a class="group flex items-end" href="/research/letterform-design"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(570.88px, 87.8276923076923cqh);--spine-right-edge-height:max(0px, calc(min(570.88px, 87.8276923076923cqh) - min(570.88px, 87.8276923076923cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Letterform Design">Letterform Design</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="6" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(570.88px, 87.8276923076923cqh);--spine-right-edge-height:max(0px, calc(min(570.88px, 87.8276923076923cqh) - min(618.72px, 95.1876923076923cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 
16.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Letterform Design">Letterform Design</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="7" aria-setsize="48"><a class="group flex items-end" href="/research/code-to-print"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(618.72px, 95.1876923076923cqh);--spine-right-edge-height:max(0px, calc(min(618.72px, 95.1876923076923cqh) - min(618.72px, 95.1876923076923cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Code To Print ();">Code To Print ();</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="8" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(618.72px, 95.1876923076923cqh);--spine-right-edge-height:max(0px, calc(min(618.72px, 95.1876923076923cqh) - min(611.36px, 94.05538461538463cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Code To Print ();">Code To Print ();</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="9" aria-setsize="48"><a class="group flex items-end" href="/research/scripting-typography"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(611.36px, 94.05538461538463cqh);--spine-right-edge-height:max(0px, calc(min(611.36px, 94.05538461538463cqh) - min(611.36px, 94.05538461538463cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Typography &amp; Code">Typography &amp; Code</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="10" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(611.36px, 94.05538461538463cqh);--spine-right-edge-height:max(0px, calc(min(611.36px, 94.05538461538463cqh) - min(548.8px, 84.43076923076922cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Typography &amp; Code">Typography &amp; Code</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="11" aria-setsize="48"><a class="group flex items-end" href="/research/creative-coding"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(548.8px, 84.43076923076922cqh);--spine-right-edge-height:max(0px, calc(min(548.8px, 84.43076923076922cqh) - min(548.8px, 84.43076923076922cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg>
1<h2 class="min-h-0 truncate text-base" title="Creative Coding">Creative Coding</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="12" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(548.8px, 84.43076923076922cqh);--spine-right-edge-height:max(0px, calc(min(548.8px, 84.43076923076922cqh) - min(611.36px, 94.05538461538463cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Creative Coding">Creative Coding</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="13" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(611.36px, 94.05538461538463cqh);--spine-right-edge-height:max(0px, calc(min(611.36px, 94.05538461538463cqh) - min(610.52px, 93.92615384615385cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Typography &amp; Code">Typography &amp; Code</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="14" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(610.52px, 93.92615384615385cqh);--spine-right-edge-height:max(0px, calc(min(610.52px, 93.92615384615385cqh) - min(596.88px, 91.82769230769232cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 
16.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Expressive Typography ">Expressive Typography </h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="15" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(596.88px, 91.82769230769232cqh);--spine-right-edge-height:max(0px, calc(min(596.88px, 91.82769230769232cqh) - min(618.72px, 95.1876923076923cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Other"><path d="M16.95 4.7a.75.75 0 0 1 .75.75v5.396a6.124 6.124 0 0 1 5.4 6.104 6.127 6.127 0 0 1-6.15 6.15 6.13 6.13 0 0 1-6.15-6.15 6.125 6.125 0 0 1 5.4-6.104V5.45a.75.75 0 0 1 .75-.75m0 7.6a4.63 4.63 0 0 0-4.65 4.65 4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65 4.63 4.63 0 0 0-4.65-4.65M6.15 0a6.13 6.13 0 0 1 6.15 6.15 6.123 6.123 0 0 1-5.4 6.103v5.397a.75.75 0 0 1-1.5 0v-5.397A6.123 6.123 0 0 1 0 6.15 6.13 6.13 0 0 1 6.15 0m0 1.5A4.63 4.63 0 0 0 1.5 6.15a4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65A4.63 4.63 0 0 0 6.15 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Speculative Design">Speculative Design</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="16" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(618.72px, 95.1876923076923cqh);--spine-right-edge-height:max(0px, calc(min(618.72px, 95.1876923076923cqh) - min(611.36px, 94.05538461538463cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Code To Print ();">Code To Print ();</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="17" aria-setsize="48"><a class="group flex items-end" href="/research/scripting-typography"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(611.36px, 94.05538461538463cqh);--spine-right-edge-height:max(0px, calc(min(611.36px, 94.05538461538463cqh) - min(548.8px, 84.43076923076922cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Typography &amp; Code">Typography &amp; Code</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="18" aria-setsize="48"><a class="group flex items-end" href="/research/creative-coding"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(548.8px, 84.43076923076922cqh);--spine-right-edge-height:max(0px, calc(min(548.8px, 84.43076923076922cqh) - min(548.8px, 84.43076923076922cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg>
1<h2 class="min-h-0 truncate text-base" title="Creative Coding">Creative Coding</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="19" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(548.8px, 84.43076923076922cqh);--spine-right-edge-height:max(0px, calc(min(548.8px, 84.43076923076922cqh) - min(596.88px, 91.82769230769232cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Creative Coding">Creative Coding</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="20" aria-setsize="48"><a class="group flex items-end" href="/research/speculative-design"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(596.88px, 91.82769230769232cqh);--spine-right-edge-height:max(0px, calc(min(596.88px, 91.82769230769232cqh) - min(618.72px, 95.1876923076923cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Other"><path d="M16.95 4.7a.75.75 0 0 1 .75.75v5.396a6.124 6.124 0 0 1 5.4 6.104 6.127 6.127 0 0 1-6.15 6.15 6.13 6.13 0 0 1-6.15-6.15 6.125 6.125 0 0 1 5.4-6.104V5.45a.75.75 0 0 1 .75-.75m0 7.6a4.63 4.63 0 0 0-4.65 4.65 4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65 4.63 4.63 0 0 0-4.65-4.65M6.15 0a6.13 6.13 0 0 1 6.15 6.15 6.123 6.123 0 0 1-5.4 6.103v5.397a.75.75 0 0 1-1.5 0v-5.397A6.123 6.123 0 0 1 0 6.15 6.13 6.13 0 0 1 6.15 0m0 1.5A4.63 4.63 0 0 0 1.5 6.15a4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65A4.63 4.63 0 0 0 6.15 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Speculative Design">Speculative Design</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="21" aria-setsize="48"><a class="group flex items-end" href="/research/code-to-print"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(618.72px, 95.1876923076923cqh);--spine-right-edge-height:max(0px, calc(min(618.72px, 95.1876923076923cqh) - min(570.88px, 87.8276923076923cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 
16.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Code To Print ();">Code To Print ();</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="22" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(570.88px, 87.8276923076923cqh);--spine-right-edge-height:max(0px, calc(min(570.88px, 87.8276923076923cqh) - min(570.88px, 87.8276923076923cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Letterform Design">Letterform Design</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="23" aria-setsize="48"><a class="group flex items-end" href="/research/letterform-design"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(570.88px, 87.8276923076923cqh);--spine-right-edge-height:max(0px, calc(min(570.88px, 87.8276923076923cqh) - min(610.52px, 93.92615384615385cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Letterform Design">Letterform Design</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="24" aria-setsize="48"><a class="group flex items-end" href="/research/expressive-typography"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(610.52px, 93.92615384615385cqh);--spine-right-edge-height:max(0px, calc(min(610.52px, 93.92615384615385cqh) - min(611.36px, 94.05538461538463cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 
16.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Expressive Typography ">Expressive Typography </h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="25" aria-setsize="48"><a class="group flex items-end" href="/research/scripting-typography"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(611.36px, 94.05538461538463cqh);--spine-right-edge-height:max(0px, calc(min(611.36px, 94.05538461538463cqh) - min(618.72px, 95.1876923076923cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Typography &amp; Code">Typography &amp; Code</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="26" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(618.72px, 95.1876923076923cqh);--spine-right-edge-height:max(0px, calc(min(618.72px, 95.1876923076923cqh) - min(610.52px, 93.92615384615385cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Code To Print ();">Code To Print ();</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="27" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(610.52px, 93.92615384615385cqh);--spine-right-edge-height:max(0px, calc(min(610.52px, 93.92615384615385cqh) - min(570.88px, 87.8276923076923cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 
16.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Expressive Typography ">Expressive Typography </h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="28" aria-setsize="48"><a class="group flex items-end" href="/research/letterform-design"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(570.88px, 87.8276923076923cqh);--spine-right-edge-height:max(0px, calc(min(570.88px, 87.8276923076923cqh) - min(548.8px, 84.43076923076922cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Letterform Design">Letterform Design</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="29" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(548.8px, 84.43076923076922cqh);--spine-right-edge-height:max(0px, calc(min(548.8px, 84.43076923076922cqh) - min(611.36px, 94.05538461538463cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Creative Coding">Creative Coding</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="30" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(611.36px, 94.05538461538463cqh);--spine-right-edge-height:max(0px, calc(min(611.36px, 94.05538461538463cqh) - min(596.88px, 91.82769230769232cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Typography &amp; Code">Typography &amp; Code</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="31" aria-setsize="48"><a class="group flex items-end" href="/research/speculative-design"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(596.88px, 91.82769230769232cqh);--spine-right-edge-height:max(0px, calc(min(596.88px, 91.82769230769232cqh) - min(548.8px, 84.43076923076922cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Other">
1<path d="M16.95 4.7a.75.75 0 0 1 .75.75v5.396a6.124 6.124 0 0 1 5.4 6.104 6.127 6.127 0 0 1-6.15 6.15 6.13 6.13 0 0 1-6.15-6.15 6.125 6.125 0 0 1 5.4-6.104V5.45a.75.75 0 0 1 .75-.75m0 7.6a4.63 4.63 0 0 0-4.65 4.65 4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65 4.63 4.63 0 0 0-4.65-4.65M6.15 0a6.13 6.13 0 0 1 6.15 6.15 6.123 6.123 0 0 1-5.4 6.103v5.397a.75.75 0 0 1-1.5 0v-5.397A6.123 6.123 0 0 1 0 6.15 6.13 6.13 0 0 1 6.15 0m0 1.5A4.63 4.63 0 0 0 1.5 6.15a4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65A4.63 4.63 0 0 0 6.15 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Speculative Design">Speculative Design</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="32" aria-setsize="48"><a class="group flex items-end" href="/research/creative-coding"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(548.8px, 84.43076923076922cqh);--spine-right-edge-height:max(0px, calc(min(548.8px, 84.43076923076922cqh) - min(618.72px, 95.1876923076923cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Creative Coding">Creative Coding</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="33" aria-setsize="48"><a class="group flex items-end" href="/research/code-to-print"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(618.72px, 95.1876923076923cqh);--spine-right-edge-height:max(0px, calc(min(618.72px, 95.1876923076923cqh) - min(596.88px, 91.82769230769232cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Code To Print ();">Code To Print ();</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="34" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(596.88px, 91.82769230769232cqh);--spine-right-edge-height:max(0px, calc(min(596.88px, 91.82769230769232cqh) - min(570.88px, 87.8276923076923cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Other">
1<path d="M16.95 4.7a.75.75 0 0 1 .75.75v5.396a6.124 6.124 0 0 1 5.4 6.104 6.127 6.127 0 0 1-6.15 6.15 6.13 6.13 0 0 1-6.15-6.15 6.125 6.125 0 0 1 5.4-6.104V5.45a.75.75 0 0 1 .75-.75m0 7.6a4.63 4.63 0 0 0-4.65 4.65 4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65 4.63 4.63 0 0 0-4.65-4.65M6.15 0a6.13 6.13 0 0 1 6.15 6.15 6.123 6.123 0 0 1-5.4 6.103v5.397a.75.75 0 0 1-1.5 0v-5.397A6.123 6.123 0 0 1 0 6.15 6.13 6.13 0 0 1 6.15 0m0 1.5A4.63 4.63 0 0 0 1.5 6.15a4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65A4.63 4.63 0 0 0 6.15 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Speculative Design">Speculative Design</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="35" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(570.88px, 87.8276923076923cqh);--spine-right-edge-height:max(0px, calc(min(570.88px, 87.8276923076923cqh) - min(610.52px, 93.92615384615385cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Letterform Design">Letterform Design</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="36" aria-setsize="48"><a class="group flex items-end" href="/research/expressive-typography"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(610.52px, 93.92615384615385cqh);--spine-right-edge-height:max(0px, calc(min(610.52px, 93.92615384615385cqh) - min(570.88px, 87.8276923076923cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Expressive Typography ">Expressive Typography </h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="37" aria-setsize="48"><a class="group flex items-end" href="/research/letterform-design"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(570.88px, 87.8276923076923cqh);--spine-right-edge-height:max(0px, calc(min(570.88px, 87.8276923076923cqh) - min(570.88px, 87.8276923076923cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 
16.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Letterform Design">Letterform Design</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="38" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(570.88px, 87.8276923076923cqh);--spine-right-edge-height:max(0px, calc(min(570.88px, 87.8276923076923cqh) - min(548.8px, 84.43076923076922cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Letterform Design">Letterform Design</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="39" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(548.8px, 84.43076923076922cqh);--spine-right-edge-height:max(0px, calc(min(548.8px, 84.43076923076922cqh) - min(596.88px, 91.82769230769232cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Creative Coding">Creative Coding</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="40" aria-setsize="48"><a class="group flex items-end" href="/research/speculative-design"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(596.88px, 91.82769230769232cqh);--spine-right-edge-height:max(0px, calc(min(596.88px, 91.82769230769232cqh) - min(596.88px, 91.82769230769232cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Other">
1<path d="M16.95 4.7a.75.75 0 0 1 .75.75v5.396a6.124 6.124 0 0 1 5.4 6.104 6.127 6.127 0 0 1-6.15 6.15 6.13 6.13 0 0 1-6.15-6.15 6.125 6.125 0 0 1 5.4-6.104V5.45a.75.75 0 0 1 .75-.75m0 7.6a4.63 4.63 0 0 0-4.65 4.65 4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65 4.63 4.63 0 0 0-4.65-4.65M6.15 0a6.13 6.13 0 0 1 6.15 6.15 6.123 6.123 0 0 1-5.4 6.103v5.397a.75.75 0 0 1-1.5 0v-5.397A6.123 6.123 0 0 1 0 6.15 6.13 6.13 0 0 1 6.15 0m0 1.5A4.63 4.63 0 0 0 1.5 6.15a4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65A4.63 4.63 0 0 0 6.15 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Speculative Design">Speculative Design</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="41" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(596.88px, 91.82769230769232cqh);--spine-right-edge-height:max(0px, calc(min(596.88px, 91.82769230769232cqh) - min(611.36px, 94.05538461538463cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Other"><path d="M16.95 4.7a.75.75 0 0 1 .75.75v5.396a6.124 6.124 0 0 1 5.4 6.104 6.127 6.127 0 0 1-6.15 6.15 6.13 6.13 0 0 1-6.15-6.15 6.125 6.125 0 0 1 5.4-6.104V5.45a.75.75 0 0 1 .75-.75m0 7.6a4.63 4.63 0 0 0-4.65 4.65 4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65 4.63 4.63 0 0 0-4.65-4.65M6.15 0a6.13 6.13 0 0 1 6.15 6.15 6.123 6.123 0 0 1-5.4 6.103v5.397a.75.75 0 0 1-1.5 0v-5.397A6.123 6.123 0 0 1 0 6.15 6.13 6.13 0 0 1 6.15 0m0 1.5A4.63 4.63 0 0 0 1.5 6.15a4.63 4.63 0 0 0 4.65 4.65 4.627 4.627 0 0 0 4.65-4.65A4.63 4.63 0 0 0 6.15 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Speculative Design">Speculative Design</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="42" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(611.36px, 94.05538461538463cqh);--spine-right-edge-height:max(0px, calc(min(611.36px, 94.05538461538463cqh) - min(548.8px, 84.43076923076922cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Typography &amp; Code">Typography &amp; Code</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="43" aria-setsize="48"><a class="group flex items-end" href="/research/creative-coding"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(548.8px, 84.43076923076922cqh);--spine-right-edge-height:max(0px, calc(min(548.8px, 84.43076923076922cqh) - min(610.52px, 93.92615384615385cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg>
1<h2 class="min-h-0 truncate text-base" title="Creative Coding">Creative Coding</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="44" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(610.52px, 93.92615384615385cqh);--spine-right-edge-height:max(0px, calc(min(610.52px, 93.92615384615385cqh) - min(618.72px, 95.1876923076923cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Expressive Typography ">Expressive Typography </h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="45" aria-setsize="48"><div aria-hidden="true" class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;]" data-book="true" data-empty-spine="true" style="height:min(618.72px, 95.1876923076923cqh);--spine-right-edge-height:max(0px, calc(min(618.72px, 95.1876923076923cqh) - min(611.36px, 94.05538461538463cqh)))"><div class="invisible flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Code To Print ();">Code To Print ();</h2></div></div></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="46" aria-setsize="48"><a class="group flex items-end" href="/research/scripting-typography"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(611.36px, 94.05538461538463cqh);--spine-right-edge-height:max(0px, calc(min(611.36px, 94.05538461538463cqh) - min(618.72px, 95.1876923076923cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Computer Science"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06L12.61 11.55l10.27 10.27a.75.75 0 1 1-1.06 1.06L11.55 12.61 1.28 22.88a.75.75 0 1 1-1.06-1.06l10.27-10.27L.22 1.28A.75.75 0 1 1 1.28.22l10.27 10.27zM11.55 15.1a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75m-4.3-4.3a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zm14.8 0a.75.75 0 0 1 0 1.5h-6.2a.75.75 0 0 1 0-1.5zM11.55.3a.75.75 0 0 1 .75.75v6.2a.75.75 0 1 1-1.5 0v-6.2a.75.75 0 0 1 .75-.75" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Typography &amp; Code">Typography &amp; Code</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="47" aria-setsize="48"><a class="group flex items-end" href="/research/code-to-print"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(618.72px, 95.1876923076923cqh);--spine-right-edge-height:max(0px, calc(min(618.72px, 95.1876923076923cqh) - min(610.52px, 93.92615384615385cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 
16.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Code To Print ();">Code To Print ();</h2></div></div></a></li><li class="ticker-item" style="flex-grow:0;flex-shrink:0;position:relative;height:fit-content;transform:none" aria-hidden="false" aria-posinset="48" aria-setsize="48"><a class="group flex items-end" href="/research/expressive-typography"><div class="-ml-px relative flex items-end border-copper border-t border-r border-r-transparent border-l px-3 py-6 after:-top-px after:-right-px after:pointer-events-none after:absolute after:h-[var(--spine-right-edge-height)] after:border-copper after:border-r after:content-[&#x27;&#x27;] transition-opacity duration-300 hover:opacity-100! group-hover:after:h-[calc(100%+1px)]" data-book="true" style="height:min(610.52px, 93.92615384615385cqh);--spine-right-edge-height:max(0px, calc(min(610.52px, 93.92615384615385cqh) - min(596.88px, 91.82769230769232cqh)))"><div class="flex max-h-full min-h-0 rotate-180 items-center gap-3 [writing-mode:vertical-lr] md:gap-4 xl:gap-6"><svg fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="size-4 shrink-0 md:size-5 xl:size-6 2xl:size-8" aria-label="Graphic Design"><path d="M21.82.22a.75.75 0 0 1 1.06 1.06l-2.64 2.64a11.52 11.52 0 0 1 2.86 7.63c0 6.415-5.136 11.55-11.55 11.55-2.936 0-5.6-1.077-7.631-2.859L1.28 22.88a.75.75 0 1 1-1.06-1.06l2.638-2.64A11.52 11.52 0 0 1 0 11.55C0 5.136 5.136 0 11.55 0c2.935 0 5.6 1.078 7.63 2.858zM4.98 19.178a10.02 10.02 0 0 0 6.57 2.422c5.586 0 10.05-4.464 10.05-10.05 0-2.521-.911-4.812-2.422-6.569zM11.55 1.5A10.005 10.005 0 0 0 1.5 11.55c0 2.52.911 4.81 2.422 6.566L18.116 3.922A10.02 10.02 0 0 0 11.55 1.5" fill="#000"></path></svg><h2 class="min-h-0 truncate text-base" title="Expressive Typography ">Expressive Typography </h2></div></div></a></li></ul></div> </div></div>
1<script>$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if("/$"===d||"/&"===d)if(0===h)break;else h--;else"$"!==d&&"$?"!==d&&"$~"!==d&&"$!"!==d&&"&"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data="$";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0};
2$RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data="$~",$RB.push(a,b),2===$RB.length&&("number"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};$RC("B:0","S:0")</script>
2<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"2b617691f6914b7a9f453125538637b6","r":1,"spa":2}' crossorigin="anonymous"></script>
2
3</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.