:root{--ink:#1c1a17;--ink-soft:#3a3630;--muted:#545d6b;--accent:#b8471f;--accent-deep:#8f3414;--accent-wash:#f4e7df;--line:#e6e3dd;--line-soft:#efece5;--bg:#fbfaf7;--bg-alt:#f5f2ea;--card:#fff;--serif:Georgia,"Iowan Old Style","Palatino Linotype",Palatino,"Times New Roman",serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--fs-xs:clamp(.72rem,.7rem.1vw,.78rem);--fs-sm:clamp(.85rem,.82rem.16vw,.94rem);--fs-base:clamp(1.04rem,1rem.24vw,1.14rem);--fs-lg:clamp(1.14rem,1.04rem.42vw,1.32rem);--fs-h3:clamp(1.18rem,1.08rem.5vw,1.4rem);--fs-h2:clamp(1.42rem,1.2rem1.05vw,1.9rem);--fs-h1:clamp(2.05rem,1.55rem2.4vw,3rem);--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4rem;--measure:42rem;--radius:10px;--focus:0 0 0 2px var(--bg),0 0 0 4px var(--accent)}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--serif);font-size:var(--fs-base);color:var(--ink);background:var(--bg);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;line-height:1.7}.wrap{max-width:var(--measure);width:100%;margin:0 auto;padding:0 1.2rem}a:focus-visible,button:focus-visible{box-shadow:var(--focus);border-radius:3px;outline:none}header.site{border-bottom:1px solid var(--line);background:var(--card)}header.site .wrap{justify-content:space-between;align-items:center;gap:var(--sp-4);flex-wrap:wrap;max-width:64rem;padding:.9rem 1.2rem;display:flex}.logo{font-family:var(--sans);letter-spacing:-.01em;color:var(--ink);align-items:center;gap:.5rem;font-size:1.16rem;font-weight:700;line-height:1.1;text-decoration:none;display:inline-flex}.logo:before{content:"";background:var(--accent);width:.85rem;height:.85rem;box-shadow:0 0 0 3px var(--accent-wash);border-radius:50%;flex:none}header.site nav{flex-wrap:wrap;align-items:center;display:flex}nav a{font-family:var(--sans);color:var(--muted);font-size:var(--fs-sm);border-radius:6px;align-items:center;min-height:44px;margin-left:.2rem;padding:.55rem .7rem;line-height:1;text-decoration:none;transition:color .15s,background .15s;display:inline-flex}nav a:hover{color:var(--accent);background:var(--accent-wash)}h1{font-family:var(--serif);font-size:var(--fs-h1);letter-spacing:-.015em;margin:.4rem 0 var(--sp-4);font-weight:700;line-height:1.12}h2{font-family:var(--serif);font-size:var(--fs-h2);letter-spacing:-.01em;margin:var(--sp-7) 0 var(--sp-3);font-weight:700;line-height:1.2}h3{font-family:var(--serif);font-size:var(--fs-h3);margin:var(--sp-6) 0 var(--sp-2);font-weight:700;line-height:1.3}p{margin:0 0 var(--sp-4)}a{color:var(--accent);text-underline-offset:.14em;text-decoration-thickness:.06em}a:hover{color:var(--accent-deep)}strong{color:var(--ink);font-weight:700}.crumbs{font-family:var(--sans);font-size:var(--fs-xs);letter-spacing:.02em;color:var(--muted);margin:var(--sp-6) 0 0;text-transform:uppercase}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--accent)}.article-head{max-width:var(--measure);margin:var(--sp-4) 0 var(--sp-6);padding-bottom:var(--sp-5);border-bottom:1px solid var(--line)}.kicker{font-family:var(--sans);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 var(--sp-3);align-items:center;gap:.5rem;font-weight:700;display:inline-flex}.kicker:before{content:"";background:var(--accent);width:1.6rem;height:2px;display:inline-block}.article-head h1{margin:.1rem 0 var(--sp-3)}.article-meta{font-family:var(--sans);font-size:var(--fs-sm);color:var(--muted);flex-wrap:wrap;align-items:center;gap:.4rem .9rem;margin:0;display:flex}.article-meta .dot{background:var(--muted);opacity:.6;border-radius:50%;width:3px;height:3px}.prose{max-width:var(--measure);font-size:var(--fs-base)}.prose>h1:first-child{display:none}.prose li{margin:0 0 var(--sp-2)}.prose ul,.prose ol{margin:0 0 var(--sp-4);padding-left:1.4rem}.prose ul{padding-left:1.5rem;list-style:none}.prose ul>li{position:relative}.prose ul>li:before{content:"";background:var(--accent);border-radius:50%;width:.42rem;height:.42rem;position:absolute;top:.62em;left:-1.1rem}.prose ol{padding-left:1.6rem;list-style:decimal}.prose ol>li{padding-left:.2rem}.prose ol>li::marker{color:var(--accent);font-weight:700;font-family:var(--sans)}.prose hr{height:auto;margin:var(--sp-7) auto;text-align:center;border:0;width:100%}.prose hr:before{content:"§";color:var(--accent);opacity:.7;letter-spacing:.3em;font-size:1.2rem;display:block}.prose blockquote{margin:var(--sp-5) 0;padding:var(--sp-2) var(--sp-5);border-left:3px solid var(--accent);background:var(--accent-wash);border-radius:0 var(--radius) var(--radius) 0;color:var(--ink-soft);font-style:italic}.prose blockquote p:last-child{margin-bottom:0}.prose table{-webkit-overflow-scrolling:touch;border-collapse:collapse;width:auto;min-width:100%;margin:var(--sp-5) 0;font-family:var(--sans);font-size:var(--fs-sm);border:1px solid var(--line);border-radius:var(--radius);display:block;overflow-x:auto}.prose thead th{background:var(--bg-alt);color:var(--ink);text-align:left;letter-spacing:.01em;border-bottom:2px solid var(--line);font-weight:700}.prose th,.prose td{border-bottom:1px solid var(--line-soft);vertical-align:top;padding:.6rem .85rem}.prose td{font-variant-numeric:tabular-nums}.prose tbody tr:nth-child(2n){background:var(--bg-alt)}.prose tbody tr:last-child td{border-bottom:0}.prose code{background:var(--bg-alt);border-radius:4px;padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}.keepreading{max-width:var(--measure);margin:var(--sp-8) 0 0;border-top:1px solid var(--line);padding-top:var(--sp-5);font-family:var(--sans)}.keepreading h2{font-family:var(--sans);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 var(--sp-4);font-weight:700}.keepreading a{font-size:var(--fs-sm);color:var(--ink-soft);border-radius:8px;align-items:center;gap:.6rem;min-height:44px;margin:0 -.8rem;padding:.7rem .8rem;line-height:1.4;text-decoration:none;transition:background .15s,color .15s;display:flex}.keepreading a:before{content:"→";color:var(--accent);font-weight:700}.keepreading a:hover{background:var(--accent-wash);color:var(--accent-deep)}footer.site{border-top:1px solid var(--line);margin-top:var(--sp-8);background:var(--card)}footer.site .wrap{padding:var(--sp-6) 1.2rem;max-width:64rem;font-family:var(--sans);font-size:var(--fs-sm);color:var(--muted);line-height:1.6}.clusters{max-width:64rem}.home-hero{max-width:44rem;margin:0 auto var(--sp-7);text-align:center;padding:var(--sp-6) 0 var(--sp-2)}.home-hero .eyebrow{font-family:var(--sans);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 var(--sp-3);font-weight:700}.home-hero h1{margin:0 0 var(--sp-4)}.lede{font-size:var(--fs-lg);color:var(--muted);margin:0 auto var(--sp-5);max-width:38rem;line-height:1.55}.roadmap-cta-wrap{margin:0}.roadmap-cta{font-family:var(--sans);font-size:var(--fs-sm);color:#fff;background:var(--accent);border-radius:999px;align-items:center;gap:.55rem;min-height:44px;padding:.8rem 1.3rem;font-weight:700;text-decoration:none;transition:background .15s,transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 1px 2px #8f341440}.roadmap-cta:hover{background:var(--accent-deep);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #8f341447}.cluster-grid{gap:var(--sp-5);grid-template-columns:repeat(auto-fill,minmax(15.5rem,1fr));align-items:start;display:grid}.cluster{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:var(--sp-5);transition:border-color .15s,box-shadow .15s,transform .15s;position:relative;overflow:hidden}.cluster:before{content:"";background:var(--accent);height:3px;position:absolute;inset:0 0 auto}.cluster:hover{border-color:#dcd6cb;transform:translateY(-2px);box-shadow:0 8px 22px #1c1a170f}.cluster h2{font-family:var(--sans);letter-spacing:-.01em;margin:var(--sp-2) 0 var(--sp-3);color:var(--ink);border:0;padding:0;font-size:1.02rem;font-weight:700}.cluster ul{columns:auto;margin:0;padding:0;list-style:none}.cluster li{border-top:1px solid var(--line-soft);margin:0}.cluster li:first-child{border-top:0}.cluster li a{font-family:var(--sans);font-size:var(--fs-sm);color:var(--ink-soft);padding:.55rem 0;line-height:1.4;text-decoration:none;transition:color .15s,padding .15s;display:block}.cluster li a:hover{color:var(--accent);padding-left:.3rem}.cluster li a.has-thumb{align-items:center;gap:.65rem;padding:.5rem 0;display:flex}.cluster li a.has-thumb:hover{padding-left:.3rem}.cl-thumb{object-fit:cover;background:var(--bg-alt);border-radius:5px;flex:none;width:66px;height:37px;display:block}.cl-title{min-width:0}.hero-figure{margin:var(--sp-6) 0 var(--sp-7);border:1px solid var(--line);border-radius:var(--radius);aspect-ratio:16/9;background:var(--bg-alt);overflow:hidden;box-shadow:0 8px 22px #1c1a170f}.hero-figure img,.hero-figure video{object-fit:cover;width:100%;height:100%;display:block}.article-hero{max-width:var(--measure);margin:0 0 var(--sp-6);border:1px solid var(--line);border-radius:var(--radius);aspect-ratio:16/9;background:var(--bg-alt);overflow:hidden}.article-hero img{object-fit:cover;width:100%;height:100%;display:block}.listicle-figure{max-width:var(--measure);margin:var(--sp-4) 0 var(--sp-5);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-alt);overflow:hidden}.listicle-figure img{width:100%;height:auto;display:block}@media (max-width:640px){header.site .wrap{flex-direction:column;align-items:flex-start;gap:.4rem;padding:.8rem 1.2rem}header.site nav{margin-left:-.6rem}.home-hero{padding-top:var(--sp-4)}.cluster-grid{gap:var(--sp-4);grid-template-columns:1fr}}@media print{:root{--ink:#000;--ink-soft:#000;--muted:#333}body{color:#000;background:#fff;font-size:11.5pt;line-height:1.5}header.site,footer.site,.crumbs,.keepreading,.roadmap-cta-wrap{display:none!important}.wrap,.article-head,.prose,.clusters{max-width:100%}a{color:#000;text-decoration:underline}.prose a[href^=http]:after{content:" (" attr(href) ")";color:#555;word-break:break-all;font-size:.85em}.prose table,.cluster{break-inside:avoid}.article-head{border-color:#000}h1,h2,h3{page-break-after:avoid}}
