@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/fc0a7394b875fa43-s.3zvkfbs08rnj_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/7ebf22b5a21034f8-s.p.3strvg7o-g5v2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ccf27e5a7366fb23-s.1wwzpfhzaj2r0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e41d5df559864f9e-s.p.2rlzm4mj5kw8e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif Fallback;src:local(Times New Roman);ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.0%;size-adjust:83.94%}.instrument_serif_6ef30231-module__vgqZGa__className{font-family:Instrument Serif,Instrument Serif Fallback;font-weight:400}.instrument_serif_6ef30231-module__vgqZGa__variable{--font-display:"Instrument Serif", "Instrument Serif Fallback"}
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.00az9qtie3ho1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.3j-a226dh71aj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.2gwoz23eiro2t.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0i3h3th1vs4m7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0zr6hhvz-h9nw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_ff61a596-module__UdeZcG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_ff61a596-module__UdeZcG__variable{--font-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.27spqqad3wyeo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.3f4zuumv8svu0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.34r5yzckw0h2s.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.2jyz_zw3a8jit.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.30bdpjkrtcces.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.1v5bejj26fx9h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_d85583d7-module__1dHVEa__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_d85583d7-module__1dHVEa__variable{--font-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--paper:#f3eee4;--paper-2:#ebe4d6;--ink:#1a1b24;--ink-2:#4f4e57;--ink-3:#86838a;--rule:#d8cfbf;--grain:.5;--c0:#2748b8;--c1:#e5484d;--c2:#e89a00;--c3:#0f9b8e;--accent:#d63c42;--gutter:clamp(20px, 5.5vw, 88px);--col:min(560px, 42vw);--head:60px;--display:var(--font-display), "Iowan Old Style", Georgia, serif;--sans:var(--font-sans), ui-sans-serif, system-ui, sans-serif;--mono:var(--font-mono), ui-monospace, "SF Mono", Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#111110;--paper-2:#1b1a17;--ink:#ece6da;--ink-2:#a9a6a0;--ink-3:#6d6b69;--rule:#2d2b27;--grain:.35;--c0:#ede6d6;--c1:#ff6a55;--c2:#f2b84b;--c3:#9fb8ad;--accent:#ff7a66;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#111110;--paper-2:#1b1a17;--ink:#ece6da;--ink-2:#a9a6a0;--ink-3:#6d6b69;--rule:#2d2b27;--grain:.35;--c0:#ede6d6;--c1:#ff6a55;--c2:#f2b84b;--c3:#9fb8ad;--accent:#ff7a66;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.6;transition:background-color .4s,color .4s;overflow-x:hidden}body:before{content:"";z-index:20;pointer-events:none;opacity:var(--grain);mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}:root[data-theme=dark] body:before{mix-blend-mode:screen;filter:invert()}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) body:before{mix-blend-mode:screen;filter:invert()}}::selection{background:var(--c0);color:var(--paper)}a{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}em{font-style:italic}.field{z-index:1;pointer-events:none;position:fixed;inset:0}@media (max-width:959px){.field{z-index:6}}main,.colophon{z-index:2;position:relative}.masthead{z-index:10;height:var(--head);padding:0 var(--gutter);font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);background:var(--paper);justify-content:space-between;align-items:center;gap:24px;font-size:11.5px;transition:background-color .4s;display:flex;position:fixed;inset:0 0 auto}.masthead:after{content:"";background:linear-gradient(var(--paper), transparent);pointer-events:none;height:28px;position:absolute;inset:100% 0 auto}.mark{color:var(--ink);white-space:nowrap;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.mark-dot{background:var(--c1);width:7px;height:7px;box-shadow:3px 1px 0 var(--c0);border-radius:50%}.masthead-chapter{color:var(--ink);margin:0;display:none}@media (max-width:859px){.masthead-chapter{display:block}}.masthead ol{gap:clamp(14px,2.2vw,32px);margin:0;padding:0;list-style:none;display:flex}.masthead nav a{color:var(--ink-3);gap:6px;text-decoration:none;transition:color .2s;display:inline-flex}.masthead nav a:hover,.masthead nav a[aria-current]{color:var(--ink)}.nav-num{color:var(--ink-3)}.masthead nav a[aria-current] .nav-num{color:var(--accent)}.masthead-end{white-space:nowrap;align-items:center;gap:18px;display:flex}.clock time{color:var(--ink);font-variant-numeric:tabular-nums}.theme-toggle{border:1px solid var(--rule);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:30px;height:30px;padding:0;transition:border-color .2s;display:grid}.theme-toggle:hover{border-color:var(--ink-3)}.theme-toggle span{border:1.5px solid var(--ink);background:linear-gradient(90deg, var(--ink) 50%, transparent 50%);border-radius:50%;width:12px;height:12px}@media (max-width:859px){.masthead nav{display:none}}@media (max-width:520px){.clock{display:none}}.caption{z-index:3;pointer-events:none;width:42vw;margin:0;position:fixed;bottom:5vh;left:53vw}.caption .print{pointer-events:auto}.caption figcaption{border-top:1px solid var(--rule);font-family:var(--mono);letter-spacing:.02em;color:var(--ink-3);gap:16px;padding-top:12px;font-size:11px;line-height:1.55;animation:.8s both caption-in;display:flex}.caption-num{color:var(--accent);text-transform:uppercase;letter-spacing:.06em;flex:none}@keyframes caption-in{0%{opacity:0;transform:translateY(6px)}}@media (max-width:959px){.caption{display:none}}.hero{min-height:100svh;padding:0 var(--gutter);position:relative}.hero-name{top:30vh;left:var(--gutter);font-family:var(--display);letter-spacing:-.01em;margin:0;font-size:clamp(4rem,16vw,15rem);font-weight:400;line-height:.86;transition:opacity .6s;position:absolute}.hero-name em{padding-left:.5em;display:block}.field-on .hero-name{opacity:0}.hero-foot{left:var(--gutter);right:var(--gutter);justify-content:space-between;align-items:flex-end;gap:40px;display:flex;position:absolute;bottom:9vh}.hero-lede{max-width:30ch;font-family:var(--display);text-wrap:balance;margin:0;font-size:clamp(1.35rem,2.1vw,1.9rem);line-height:1.2}.hero-meta{font-family:var(--mono);letter-spacing:.03em;text-transform:uppercase;gap:6px;margin:0;font-size:11.5px;display:grid}.hero-meta div{grid-template-columns:64px auto;display:grid}.hero-meta dt{color:var(--ink-3)}.hero-meta dd{margin:0}.hero-cue{left:var(--gutter);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);align-items:center;gap:12px;margin:0;font-size:10.5px;display:flex;position:absolute;bottom:3.2vh}.cue-line{background:var(--rule);width:44px;height:1px;position:relative;overflow:hidden}.cue-line:after{content:"";background:var(--accent);animation:2.4s ease-in-out infinite cue;position:absolute;inset:0;transform:translate(-100%)}@keyframes cue{60%,to{transform:translate(100%)}}@media (max-width:759px){.hero-foot{flex-direction:column;align-items:flex-start;gap:24px;bottom:11vh}.hero-name{top:24vh}}.chapter{padding:18vh 0 8vh}.col{margin-left:var(--gutter);width:var(--col)}@media (max-width:959px){:root{--col:auto}.col{margin-right:var(--gutter)}}.ch-head{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:14px;margin-bottom:36px;font-size:11.5px;display:flex}.ch-num{color:var(--accent)}.ch-rule{background:var(--ink-3);width:48px;height:1px}.ch-label{color:var(--ink-2)}.ch-title{font-family:var(--display);letter-spacing:-.012em;text-wrap:balance;margin:0 0 32px;font-size:clamp(2.6rem,4.6vw,4.4rem);font-weight:400;line-height:1}.ch-title em{color:var(--ink-2)}.ch-note,.prose p{color:var(--ink-2);text-wrap:pretty;max-width:52ch;margin:0 0 18px}.prose p:first-child:first-letter{float:left;font-family:var(--display);color:var(--ink);padding:6px 10px 0 0;font-size:4.1em;line-height:.82}.out{text-decoration:underline;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule);text-underline-offset:4px;gap:4px;text-decoration-thickness:1px;transition:text-decoration-color .2s,color .2s;display:inline-flex}.out:hover{color:var(--c0);-webkit-text-decoration-color:var(--c0);text-decoration-color:var(--c0)}.out span{font-family:var(--mono);font-size:.85em}.stats{border-top:1px solid var(--rule);grid-template-columns:repeat(3,1fr);margin:44px 0 36px;display:grid}.stats div{border-bottom:1px solid var(--rule);padding:18px 16px 18px 0}.stats div:not(:last-child){border-right:1px solid var(--rule)}.stats div:not(:first-child){padding-left:18px}.stats dt{font-family:var(--display);font-size:2.8rem;line-height:1}.stats div:first-child dt{color:var(--c0)}.stats div:nth-child(2) dt{color:var(--c1)}.stats div:nth-child(3) dt{color:var(--c3)}.stats div:nth-child(4) dt{color:var(--c0)}.stats dd{color:var(--ink-2);margin:6px 0 0;font-size:13.5px;line-height:1.4}.now{background:var(--paper-2);border-left:3px solid var(--c3);color:var(--ink-2);margin:0;padding:20px 22px;font-size:15px}.now-label{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);align-items:center;gap:8px;margin-bottom:6px;font-size:11px;display:flex}.pulse{background:var(--c3);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.25}}.projects,.jobs{margin:0;padding:0;list-style:none}.project{border-bottom:1px solid var(--rule);padding:16vh 0 10vh}.project:first-child{padding-top:12vh}.project-meta,.job-when{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);flex-wrap:wrap;gap:6px 18px;margin:0 0 18px;font-size:11px;display:flex}.project-meta span:first-child{color:var(--ink);align-items:center;gap:8px;display:inline-flex}.project-meta span:first-child:before{content:"";background:var(--p);width:9px;height:9px}.project-title{transition:text-shadow .35s}.project:hover .project-title{text-shadow:4px 3px 0 color-mix(in srgb, var(--p) 55%, transparent)}.project-title{font-family:var(--display);letter-spacing:-.015em;margin:0;font-size:clamp(2.8rem,5vw,4.6rem);font-weight:400;line-height:.95}.project-summary{font-family:var(--display);color:var(--ink-2);margin:14px 0 20px;font-size:clamp(1.3rem,1.8vw,1.6rem);font-style:italic;line-height:1.25}.project-detail{max-width:54ch;color:var(--ink-2);text-wrap:pretty;margin:0 0 20px}.tags{font-family:var(--mono);color:var(--ink-3);letter-spacing:.02em;margin:0 0 16px;font-size:11.5px}.links{flex-wrap:wrap;gap:8px 22px;margin:0;font-size:15px;display:flex}.archive{padding:16vh 0 4vh}.archive-title{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);margin:0 0 18px;font-size:11.5px;font-weight:400}.archive ul{border-top:1px solid var(--rule);margin:0 0 24px;padding:0;list-style:none}.archive li a{border-bottom:1px solid var(--rule);grid-template-columns:9.5rem 1fr auto;align-items:baseline;gap:16px;padding:13px 0;text-decoration:none;transition:padding .25s,color .2s;display:grid}.archive li a:hover{color:var(--accent);padding-left:10px}.archive-name{font-family:var(--display);font-size:1.35rem;line-height:1.1}.archive-note{color:var(--ink-3);font-size:14px}@media (max-width:520px){.archive li a{grid-template-columns:1fr auto}.archive-note{grid-area:2/1;margin-top:-12px}}.job{border-bottom:1px solid var(--rule);padding:12vh 0 8vh}.job-company{font-family:var(--display);margin:0;font-size:clamp(2.3rem,3.8vw,3.4rem);font-weight:400;line-height:1}.job-role{font-family:var(--display);color:var(--ink-2);margin:8px 0 20px;font-size:1.3rem;font-style:italic}.job-points{margin:0 0 18px;padding:0;list-style:none}.job-points li{color:var(--ink-2);text-wrap:pretty;margin-bottom:8px;padding-left:22px;font-size:15.5px;position:relative}.job-points li:before{content:"";background:var(--ink-3);width:10px;height:1px;position:absolute;top:.8em;left:0}.toolkit{grid-template-columns:repeat(2,1fr);gap:32px 28px;margin-top:12px;display:grid}.toolkit>div:first-child{--t:var(--c0)}.toolkit>div:nth-child(2){--t:var(--c1)}.toolkit>div:nth-child(3){--t:var(--c3)}.toolkit>div:nth-child(4){--t:var(--c2)}.toolkit h3{border-bottom:1px solid var(--rule);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);border-bottom:2px solid var(--t);margin:0 0 8px;padding-bottom:8px;font-size:11px;font-weight:400}.toolkit p{font-family:var(--display);margin:0;font-size:1.3rem;line-height:1.35}@media (max-width:520px){.toolkit{grid-template-columns:1fr}}.contact{padding-bottom:14vh}.contact-title{font-size:clamp(2.8rem,5.4vw,5.2rem)}.email{flex-wrap:wrap;align-items:baseline;gap:14px;margin:36px 0 40px;display:flex}.email a{font-family:var(--display);text-underline-offset:6px;text-decoration:underline;text-decoration-thickness:2px;-webkit-text-decoration-color:var(--c1);text-decoration-color:var(--c1);overflow-wrap:anywhere;font-size:clamp(1.4rem,2.6vw,2.1rem)}.copy,.form button{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;font-size:11px}.copy{border:1px solid var(--rule);color:var(--ink-2);background:0 0;border-radius:99px;padding:5px 10px}.copy:hover{border-color:var(--ink-3);color:var(--ink)}.form{gap:22px;margin-bottom:40px;display:grid}.form-row{grid-template-columns:1fr 1fr;gap:22px;display:grid}@media (max-width:520px){.form-row{grid-template-columns:1fr}}.form label{gap:4px;display:grid}.form label span{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);font-size:10.5px}.form input,.form textarea{border:0;border-bottom:1px solid var(--rule);width:100%;color:var(--ink);font:inherit;resize:vertical;background:0 0;border-radius:0;padding:8px 0;font-size:16px;transition:border-color .2s}.form input:focus,.form textarea:focus{border-bottom-color:var(--c0);outline:none}.hp{width:1px;height:1px;position:absolute;left:-9999px}.form-foot{justify-content:space-between;align-items:center;gap:16px;display:flex}.form-error{color:var(--accent);margin:0;font-size:13.5px}.form button{background:var(--ink);color:var(--paper);border:0;border-radius:99px;flex:none;padding:13px 20px;transition:background-color .2s}.form button:hover{background:var(--c0);color:#fff}.form button:disabled{opacity:.6;cursor:progress}.form-sent{border-left:2px solid var(--accent);background:var(--paper-2);font-family:var(--display);margin:0 0 40px;padding:20px 22px;font-size:1.4rem}.elsewhere{font-size:15px}.colophon{padding:28px var(--gutter) 36px;border-top:1px solid var(--rule);background:var(--paper);font-family:var(--mono);letter-spacing:.03em;color:var(--ink-3);grid-template-columns:auto auto 1fr auto;align-items:baseline;gap:12px 40px;font-size:11px;display:grid}.colophon p{margin:0}.colophon a{text-decoration:none}.colophon a:hover{color:var(--accent)}@media (max-width:859px){.colophon{grid-template-columns:1fr}}.colophon-inks i{vertical-align:0;width:8px;height:8px;margin:0 5px 0 2px;display:inline-block}.colour-bar{vertical-align:-1px;grid-template-columns:repeat(8,12px);height:12px;display:inline-grid}.reg{border:1px solid var(--ink-3);pointer-events:none;border-radius:50%;width:22px;height:22px;position:absolute}.reg:before,.reg:after{content:"";background:var(--ink-3);position:absolute}.reg:before{width:1px;top:-6px;bottom:-6px;left:50%}.reg:after{height:1px;top:50%;left:-6px;right:-6px}.reg-hero-l,.reg-hero-r{margin-top:-11px;top:50%}.reg-hero-l{left:calc(var(--gutter) / 2 - 11px)}.reg-hero-r{right:calc(var(--gutter) / 2 - 11px)}@media (max-width:959px){.reg-hero-l,.reg-hero-r{display:none}}.hero-index{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0 0 18px;font-size:11px;display:flex}.hero-index-label{color:var(--ink-3);margin-right:4px}.hero-word{color:var(--ink-3);font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;padding:2px 0;transition:color .25s;position:relative}.hero-word:after{content:"";background:var(--ink);transform-origin:0;height:2px;position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}.hero-word:hover{color:var(--ink)}.hero-word:before{content:"";background:var(--w);opacity:.35;width:7px;height:7px;margin-right:6px;transition:opacity .25s;display:inline-block}.hero-word[aria-pressed=true]:before{opacity:1}.hero-word[aria-pressed=true]{color:var(--ink)}.hero-word[aria-pressed=true]:after{background:var(--w);animation:3.4s linear forwards hero-word}.hero-word:first-of-type[aria-pressed=true]:after{animation-duration:7s}@keyframes hero-word{to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.hero-word[aria-pressed=true]:after{animation:none;transform:scaleX(1)}}.viewer{display:none}@media (max-width:959px){.viewer{z-index:3;height:44svh;min-height:280px;margin:0 var(--gutter) 36px;background:var(--paper);display:block;position:relative}.viewer--sticky{top:var(--head);height:38svh;min-height:250px;position:sticky}.viewer--sticky:after{content:"";background:linear-gradient(var(--paper), transparent);height:32px;position:absolute;top:100%;left:0;right:0}.viewer-frame{position:absolute;inset:8px 0 34px}.viewer-frame,.viewer-cap{transition:opacity .5s}.viewer:not([data-on]) .viewer-frame,.viewer:not([data-on]) .viewer-cap{opacity:.25}.viewer-frame .reg{border:0;border-radius:0;width:14px;height:14px}.viewer-frame .reg:before,.viewer-frame .reg:after{background:var(--ink-3)}.viewer-frame .reg:before{height:14px;top:0;bottom:auto;left:0}.viewer-frame .reg:after{width:14px;top:0;left:0;right:auto}.reg-tl{top:0;left:0}.reg-tr{top:0;right:0;transform:scaleX(-1)}.reg-bl{bottom:0;left:0;transform:scaleY(-1)}.reg-br{bottom:0;right:0;transform:scale(-1)}.viewer-cap{border-top:1px solid var(--rule);font-family:var(--mono);color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;gap:12px;margin:0;padding-top:8px;font-size:10px;line-height:1.4;animation:.6s both caption-in;display:flex;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.viewer-cap span:last-child{text-overflow:ellipsis;overflow:hidden}.chapter{padding-top:12vh}.project{padding:9vh 0 7vh}.project:first-child{padding-top:6vh}.job{padding:8vh 0 6vh}}.gathering,.gathering *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.print{border:1px solid var(--rule);background:var(--paper);color:var(--ink-2);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;cursor:pointer;border-radius:99px;flex:none;margin-left:auto;padding:3px 9px;font-size:10px;transition:border-color .2s,color .2s}.print:hover{border-color:var(--c1);color:var(--ink)}.hero-index .print{margin-left:6px}.live{flex-wrap:wrap;gap:4px 0;display:flex}.live span:not(:last-child):after{content:"·";color:var(--rule);margin:0 10px}.live span:first-child{color:var(--c1)}.steps{margin:0;padding:0;list-style:none}.step{border-bottom:1px solid var(--rule);padding:14vh 0 8vh}.step-title{font-family:var(--display);letter-spacing:-.01em;margin:0 0 16px;font-size:clamp(2.2rem,3.8vw,3.4rem);font-weight:400;line-height:1}.trace-block{padding:16vh 0 4vh}.trace{border:1px solid var(--rule);background:var(--paper-2);font-family:var(--mono);margin-top:24px;padding:18px 18px 14px;font-size:11.5px;line-height:1.5}.trace-head{border-bottom:1px solid var(--rule);color:var(--ink-2);align-items:center;gap:12px;padding-bottom:12px;display:flex}.trace-title{color:var(--ink)}.trace-status{background:color-mix(in srgb, var(--c2) 25%, transparent);text-transform:uppercase;letter-spacing:.06em;border-radius:99px;padding:1px 8px;font-size:10px}.trace-status[data-done]{background:color-mix(in srgb, var(--c3) 25%, transparent)}.trace-clock{font-variant-numeric:tabular-nums}.trace-head .print{margin-left:auto}.trace-request{font-family:var(--display);color:var(--ink);margin:12px 0 14px;font-size:1.25rem;font-style:italic}.trace-spans{margin:0;padding:0;list-style:none}.trace-spans li{border-bottom:1px dashed color-mix(in srgb, var(--rule) 70%, transparent);opacity:.35;grid-template-columns:8.5rem 1fr 5.5rem;grid-template-areas:"name track stage""detail detail detail";align-items:center;gap:2px 10px;padding:5px 0;transition:opacity .3s;display:grid}.trace-spans li[data-shown]{opacity:1}.span-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;grid-area:name;overflow:hidden}.span-track{background:color-mix(in srgb, var(--rule) 45%, transparent);grid-area:track;height:8px;position:relative}.span-track i{min-width:2px;position:absolute;top:0;bottom:0}li[data-active] .span-track i{animation:.9s ease-in-out infinite pulse}.span-stage{color:var(--ink-3);text-align:right;text-transform:uppercase;letter-spacing:.06em;grid-area:stage;font-size:9.5px}.span-detail{min-height:1.5em;color:var(--ink-2);grid-area:detail}li[data-kind=verdict] .span-detail{color:var(--c1);font-weight:600}li[data-kind=human] .span-detail{color:var(--c3)}li[data-kind=event] .span-name{color:var(--c2)}.trace-note{color:var(--ink-3);margin:12px 0 0;font-size:10.5px}@media (max-width:520px){.trace-spans li{grid-template-columns:7rem 1fr;grid-template-areas:"name track""detail detail"}.span-stage{display:none}}.job-company a{text-decoration:none}.job-company a:hover{text-underline-offset:6px;text-decoration:underline;text-decoration-thickness:1px}.writing li a{grid-template-columns:1fr auto auto}.writing-title{font-family:var(--display);text-wrap:balance;font-size:1.45rem;line-height:1.15}.archive.writing+.archive{padding-top:8vh}.press{position:relative}.press-toggle{border:1px solid var(--rule);height:30px;color:var(--ink);font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border-radius:99px;align-items:center;gap:8px;padding:0 12px 0 10px;transition:border-color .2s;display:inline-flex}.press-toggle:hover,.press-toggle[aria-expanded=true]{border-color:var(--ink-3)}.press-dots{grid-template-columns:repeat(2,5px);gap:2px;display:grid}.press-dots i{border-radius:50%;width:5px;height:5px}.press-dots i:first-child{background:var(--c0)}.press-dots i:nth-child(2){background:var(--c1)}.press-dots i:nth-child(3){background:var(--c2)}.press-dots i:nth-child(4){background:var(--c3)}.press-changed{background:var(--c1);border-radius:50%;width:6px;height:6px}@media (max-width:520px){.press-label{display:none}.press-toggle{padding:0 9px}}.press-panel{z-index:50;border:1px solid var(--rule);background:var(--paper);width:min(310px,100vw - 32px);color:var(--ink);text-transform:none;letter-spacing:.02em;gap:16px;padding:16px;animation:.25s both caption-in;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 18px 40px -20px #00000059}.press-head{border-bottom:1px solid var(--rule);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;align-items:baseline;margin:0;padding-bottom:10px;display:flex}.press-head span{color:var(--ink-3);text-transform:none;letter-spacing:.02em;font-size:10px}.press-panel fieldset{border:0;min-width:0;margin:0;padding:0}.press-panel legend,.press-range span{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:10px;display:block}.press-inks{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.press-inks button,.press-seg button,.press-reset{border:1px solid var(--rule);color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:7px 6px;font-size:10.5px;transition:border-color .2s,color .2s}.press-inks button{justify-items:center;gap:6px;display:grid}.press-inks button:hover,.press-seg button:hover{color:var(--ink);border-color:var(--ink-3)}.press-inks button[aria-pressed=true],.press-seg button[aria-pressed=true]{border-color:var(--ink);color:var(--ink)}.press-swatch{gap:2px;display:flex}.press-swatch i{background:var(--l);border-radius:50%;width:9px;height:9px}:root[data-theme=dark] .press-swatch i{background:var(--d)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .press-swatch i{background:var(--d)}}.press-seg{text-transform:capitalize;grid-auto-columns:1fr;grid-auto-flow:column;gap:6px;display:grid}.press-range{display:block}.press-range input{width:100%;accent-color:var(--c1)}.press-reset{text-transform:uppercase;letter-spacing:.06em;width:100%}.press-reset:disabled{opacity:.4;cursor:default}
