@font-face{font-family:Gambetta;src:url(/fonts/gambetta-300-normal.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Gambetta;src:url(/fonts/gambetta-300-italic.woff2)format("woff2");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Gambetta;src:url(/fonts/gambetta-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Gambetta;src:url(/fonts/gambetta-400-italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Gambetta;src:url(/fonts/gambetta-500-normal.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Literata;src:url(/fonts/literata-var-normal.woff2)format("woff2");font-weight:200 900;font-style:normal;font-display:swap}@font-face{font-family:Literata;src:url(/fonts/literata-var-italic.woff2)format("woff2");font-weight:200 900;font-style:italic;font-display:swap}:root{--paper:#eeece6;--paper-deep:#e5e2da;--ink:#17202c;--ink-soft:#4e5765;--line:#b3b0a7;--line-soft:#d2cfc7;--accent:#7e5b1c;--night:#131a24;--night-ink:#e5e1d6;--night-soft:#9ba2ac;--night-line:#323b49;--night-accent:#d2a85c;--font-display:"Gambetta", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-text:"Literata", "Iowan Old Style", Georgia, serif;--step--2:clamp(.72rem, .7rem + .08vw, .78rem);--step--1:clamp(.84rem, .81rem + .14vw, .92rem);--step-0:clamp(1.03rem, .98rem + .24vw, 1.19rem);--step-1:clamp(1.18rem, 1.08rem + .45vw, 1.48rem);--step-2:clamp(1.42rem, 1.22rem + .9vw, 2.05rem);--step-3:clamp(1.8rem, 1.42rem + 1.75vw, 3.1rem);--step-4:clamp(2.3rem, 1.6rem + 3.3vw, 4.9rem);--step-5:clamp(2.8rem, 1.2rem + 7.2vw, 9.6rem);--gutter:clamp(1.25rem, 4.5vw, 5.5rem);--col-gap:clamp(1rem, 2vw, 2rem);--section-space:clamp(4.5rem, 9vw, 7.5rem);--header-h:4.75rem;--ease:cubic-bezier(.22, 1, .36, 1);--slow:1.1s}*,:before,:after{box-sizing:border-box}*{margin:0}html,body{overscroll-behavior-x:none;touch-action:pan-y;overflow-x:clip}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 1rem);interpolate-size:allow-keywords}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background-color:var(--paper);min-height:100vh;color:var(--ink);font-family:var(--font-text);font-size:var(--step-0);font-kerning:normal;font-variant-ligatures:common-ligatures;font-optical-sizing:auto;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.2 0 0 0 0 0.22 0 0 0 0 0.26 0 0 0 0.05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");line-height:1.62}h1,h2,h3,h4{font-family:var(--font-display);text-wrap:balance;letter-spacing:-.015em;font-weight:300;line-height:1.08}p,li,dd{text-wrap:pretty;hyphens:manual}img,svg{max-width:100%;display:block}a{color:inherit;text-underline-offset:.24em;text-decoration-thickness:1px}button{font:inherit;color:inherit}[hidden]{display:none!important}::selection{background:var(--accent);color:var(--paper)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:1px}@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:.6s;animation-timing-function:var(--ease)}.wrap{width:100%;max-width:1680px;padding-inline:var(--gutter);margin-inline:auto}.grid{column-gap:var(--col-gap);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=900px){.grid{grid-template-columns:repeat(12,minmax(0,1fr))}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.nowrap{white-space:nowrap}.label{font-family:var(--font-text);font-size:var(--step--2);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-weight:500}.sec-num{font-size:var(--step--2);letter-spacing:.14em;color:var(--ink-soft);font-variant-numeric:tabular-nums lining-nums;grid-template-columns:2.5rem auto 1fr;align-items:center;gap:1rem;display:grid}.sec-num:before,.sec-num:after{content:"";background:var(--line);height:1px}.btn{background:var(--ink);min-height:3rem;color:var(--paper);box-shadow:inset 0 0 0 3px var(--btn-bg,var(--ink)), inset 0 0 0 4px color-mix(in srgb, var(--btn-fg,var(--paper)) 38%, transparent);font-family:var(--font-text);font-size:var(--step--1);letter-spacing:.01em;cursor:pointer;transition:background-color .5s var(--ease), color .5s var(--ease);border:0;border-radius:0;justify-content:center;align-items:center;gap:.75em;padding:.8rem 1.45rem;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{background:var(--accent);--btn-bg:var(--accent)}.btn--small{min-height:2.75rem;padding:.55rem 1.1rem}.btn--light{background:var(--night-ink);color:var(--night);--btn-bg:var(--night-ink);--btn-fg:var(--night)}.btn--light:hover{background:var(--night-accent);color:var(--night);--btn-bg:var(--night-accent)}.btn .arrow{transition:transform .6s var(--ease)}.btn:hover .arrow{transform:translate(.25em)}.link{min-height:2.75rem;font-size:var(--step--1);text-decoration:underline;text-decoration-color:var(--line);transition:text-decoration-color .5s var(--ease), color .5s var(--ease);align-items:center;display:inline-flex}.link:hover{text-decoration-color:var(--accent)}.todo{color:var(--accent);border-bottom:1px dashed;font-style:normal}[data-reveal] .rl{display:inline-block}.js [data-reveal] .rl{opacity:0;transition:opacity var(--slow) var(--ease) calc(var(--d,0) * 1ms), transform var(--slow) var(--ease) calc(var(--d,0) * 1ms);transform:translateY(.22em)}.js [data-reveal].is-in .rl{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js [data-reveal] .rl{opacity:1;transform:none}}
