@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght,SOFT,WONK@9..144,300..900,0..100,0..1&family=Public+Sans:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--font-display: "Fraunces", "Iowan Old Style", "Apple Garamond", Georgia, serif;--font-body: "Public Sans", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", Menlo, Consolas, monospace;--paper: #f3eee3;--paper-tint: #ede6d4;--paper-deep: #e6dec8;--ink: #18160e;--ink-soft: #2a261a;--ink-mute: #5a513f;--ink-faint: #87795f;--rule: #cdc3aa;--rule-soft: #ddd2b6;--oxide: #b3422a;--oxide-deep: #8a3220;--steel: #3d4a5a;--steel-soft: #6f7c8e;--amber: #c08020;--moss: #4f6044;--hi: #f8f4ea;--selection: #f1d9aa;--measure-tight: 36rem;--measure: 44rem;--measure-wide: 64rem;--gutter: clamp(1.25rem, 2.5vw, 2.25rem);--ease: cubic-bezier(.2, .7, .2, 1)}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font-body);font-size:16.5px;line-height:1.55;color:var(--ink);background:var(--paper);font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{margin:0;background:radial-gradient(ellipse 80% 60% at 50% -10%,rgba(179,66,42,.04),transparent 70%),var(--paper);min-height:100vh;position:relative;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.35;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.09 0 0 0 0 0.08 0 0 0 0 0.05 0 0 0 0.06 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}::selection{background:var(--selection);color:var(--ink)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:380;font-feature-settings:"ss01","ss02";font-style:normal;letter-spacing:-.022em;color:var(--ink);margin:0;line-height:1.04}h1{font-size:clamp(3.2rem,8.5vw,7.5rem);font-variation-settings:"opsz" 144,"SOFT" 30,"WONK" 1;font-weight:320;line-height:.95;letter-spacing:-.035em}h2{font-size:clamp(2.2rem,4vw,3.5rem);font-variation-settings:"opsz" 96,"SOFT" 25;font-weight:360;letter-spacing:-.025em}h3{font-size:clamp(1.4rem,2vw,1.75rem);font-variation-settings:"opsz" 36,"SOFT" 20;font-weight:460;letter-spacing:-.014em;line-height:1.18}h4{font-size:1.1rem;font-family:var(--font-body);font-weight:600;letter-spacing:.01em;line-height:1.3}p{margin:0 0 1em}a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule);transition:color .18s var(--ease),border-color .18s var(--ease)}a:hover{color:var(--oxide);border-color:var(--oxide)}strong{font-weight:600}em{font-style:italic;color:var(--ink-soft)}ul,ol{padding-left:1.4em;margin:0 0 1em}li{margin:.35em 0}code,kbd,pre,samp{font-family:var(--font-mono);font-size:.86em;font-feature-settings:"ss02","ss20"}:not(pre)>code{background:var(--paper-deep);border:1px solid var(--rule-soft);padding:.08em .4em;border-radius:2px;color:var(--ink-soft);font-size:.84em;letter-spacing:-.01em}pre{background:var(--ink);color:#eae0c8;padding:1.4rem 1.5rem;border-radius:2px;overflow-x:auto;font-size:.82rem;line-height:1.55;position:relative;border:1px solid var(--ink);border-left:3px solid var(--oxide);margin:1.5em 0}pre code{background:none;border:0;padding:0;color:inherit;font-size:inherit}.eyebrow{font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--oxide)}.eyebrow--ink{color:var(--ink-mute)}.eyebrow--steel{color:var(--steel)}.label-mono{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-weight:500}.rule{border:0;border-top:1px solid var(--rule);margin:0}.rule-thick{border-top-width:2px;border-top-color:var(--ink)}.section{padding:clamp(4rem,9vw,8rem) var(--gutter);position:relative;z-index:2}.shell{max-width:78rem;margin:0 auto}.shell-narrow{max-width:64rem;margin:0 auto}.caps-num{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}.section-num{display:inline-block;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--oxide);border:1px solid var(--oxide);padding:.18rem .5rem .14rem;margin-right:.6rem;vertical-align:middle}.btn{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;padding:.85rem 1.25rem;border:1px solid var(--ink);background:var(--ink);color:var(--paper);text-decoration:none;border-bottom:1px solid var(--ink);transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease),transform .2s var(--ease)}.btn:hover{background:var(--oxide);border-color:var(--oxide);color:var(--paper);transform:translateY(-1px)}.btn--ghost{background:transparent;color:var(--ink)}.btn--ghost:hover{background:transparent;color:var(--oxide);border-color:var(--oxide)}.scaffold-bg{position:absolute;inset:0;pointer-events:none;z-index:0;background-image:linear-gradient(to right,var(--rule-soft) 1px,transparent 1px);background-size:8.333% 100%;opacity:.4;mask-image:linear-gradient(to bottom,transparent,black 8%,black 92%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,black 8%,black 92%,transparent)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes packet{0%{transform:translate(-100%);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translate(100%);opacity:0}}@keyframes blink{0%,60%{opacity:1}61%,to{opacity:0}}@keyframes type-line{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:720px){html{font-size:15.5px}pre{padding:1rem}}
