.btn,.btn:hover{color:var(--btn-fg)!important}.hero,.hero-art,.row-link{overflow:hidden}.card-meta,.row-content .row-meta{letter-spacing:.09em;text-transform:uppercase;font-family:var(--font-ui)}.chapters a,.hero,.hero-inner{position:relative}.btn,.card-foot,.card-meta,.chapters a::before,.chip,.row-content .row-meta{font-family:var(--font-ui)}.chapters strong,.row-content h3{font-family:var(--font-display);font-weight:600}.hero::after,.site-footer::before{content:"";position:absolute;pointer-events:none}.chapters,.rows,.search-results,.tags{list-style:none}.back-to-top,.btn,.chip{cursor:pointer}.btn{--btn-fg:var(--paper);--btn-bg:var(--ink);--btn-bd:var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-size:.93rem;font-weight:600;line-height:1.2;padding:.68rem 1.15rem;border-radius:999px;text-decoration:none!important;border:1px solid var(--btn-bd);background:var(--btn-bg);transition:transform .16s,background-color .16s,color .16s,border-color .16s}.btn:hover{transform:translateY(-1px);background:var(--btn-bg-h,var(--ink-soft));border-color:var(--btn-bd-h,var(--btn-bd))}.prose a.btn,.prose a.btn:visited{color:var(--paper)!important;text-decoration:none!important}.prose a.btn:focus-visible,.prose a.btn:hover{color:var(--paper)!important;text-decoration:none!important}.btn.btn-ghost{--btn-fg:var(--ink);--btn-bg:transparent;--btn-bd:var(--line-strong);--btn-bg-h:var(--paper-2);--btn-bd-h:var(--ink)}.btn.btn-ghost.f-ghost,.btn.btn-ghost.on-dark{--btn-fg:var(--paper);--btn-bg:transparent;--btn-bd:color-mix(in srgb, var(--paper) 45%, transparent);--btn-bg-h:color-mix(in srgb, var(--paper) 12%, transparent);--btn-bd-h:var(--paper)}.btn.btn-ghost.on-tint{--btn-fg:var(--accent-2);--btn-bg:transparent;--btn-bd:var(--accent-2);--btn-bg-h:color-mix(in srgb, var(--accent-2) 10%, transparent);--btn-bd-h:var(--accent-2)}.prose a.btn.btn-ghost,.prose a.btn.btn-ghost:focus-visible,.prose a.btn.btn-ghost:hover,.prose a.btn.btn-ghost:visited{color:var(--ink)!important;text-decoration:none!important}.card-meta,.chapters a::before,.chapters a:hover strong,.footer-bottom-actions>a:hover,.row-link:hover .row-content h3{color:var(--accent)}.prose a.btn.btn-ghost:focus-visible,.prose a.btn.btn-ghost:hover{background:var(--paper-2);border-color:var(--ink)}.btn-accent{--btn-fg:#fff;--btn-bg:var(--accent);--btn-bd:var(--accent);--btn-bg-h:var(--accent)}.btn-row{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.hero{padding-block:var(--sp-5) var(--sp-5);border-bottom:1px solid var(--line)}.hero::after{inset:0;background-image:url("/assets/img/noise.svg");opacity:.5}.hero-inner{z-index:1;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-4);min-width:0}.hero h1{font-size:var(--step-5);max-width:16ch}.hero .lede{max-width:54ch}.hero-art{width:100%;min-width:0;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card)}.hero-art img{display:block;width:100%;max-width:100%;height:auto}.card,.row-link{flex-direction:column;background:var(--card);text-decoration:none}.cards{display:grid;gap:var(--sp-4);grid-template-columns:1fr}@media (min-width:640px){.cards-2,.cards-3,.prevnext{grid-template-columns:1fr 1fr}.prevnext .next{text-align:right}}@media (min-width:900px){.hero-inner{grid-template-columns:1.15fr .85fr;align-items:center;gap:var(--sp-5)}.cards-3{grid-template-columns:repeat(3,1fr)}}.card{display:flex;gap:var(--sp-2);border:1px solid var(--line);border-radius:var(--radius);padding:var(--sp-4);transition:border-color .18s,transform .18s}a.card:hover{border-color:var(--line-strong);transform:translateY(-2px)}.card h3{margin:0;font-size:var(--step-1)}.card p{margin:0;color:var(--muted);font-size:.96rem}.card-meta{font-size:.74rem}.card-foot{margin-top:auto;font-size:.8rem;color:var(--muted)}.rows,.rows li{margin:0;min-width:0}.pillar-card{border-left:3px solid var(--accent)}.pillar-card:nth-child(2){border-left-color:var(--accent-2)}.pillar-card:nth-child(3){border-left-color:var(--warn)}.rows{padding:0;display:grid;grid-template-columns:1fr;gap:var(--sp-4)}.row-link{display:flex;height:100%;min-width:0;padding:0;border:1px solid var(--line);border-radius:var(--radius-lg);transition:transform .2s,border-color .2s,box-shadow .2s}.prose pre,.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.footer-brand,.footer-cta-link{text-decoration:none!important}.row-link:hover{transform:translateY(-3px);border-color:var(--line-strong);box-shadow:0 12px 30px rgba(27,26,23,.08)}.row-image{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--paper-2);border-bottom:1px solid var(--line);transition:transform .35s}.chip,.newsletter input[type=email]{border:1px solid var(--line-strong)}.row-link:hover .row-image{transform:scale(1.015)}.row-content{display:flex;flex-direction:column;flex:1;min-width:0;padding:var(--sp-3) var(--sp-4) var(--sp-4)}.row-content .row-meta{display:block;margin-bottom:.65rem;font-size:.72rem;font-weight:650;line-height:1.4;color:var(--accent)}.row-content h3{margin:0 0 .65rem;font-size:var(--step-1);line-height:1.3;color:var(--ink);transition:color .2s}.row-content p{margin:0;color:var(--muted);font-size:.94rem;line-height:1.6;max-width:60ch}@media (min-width:700px){.rows{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.rows{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-4)}}.prose iframe,.prose img,.prose video{max-width:100%;height:auto}.prose pre{max-width:100%}.prose code,.prose pre{overflow-wrap:anywhere}.table-wrap{width:100%;max-width:100%;min-width:0;overflow-y:hidden}.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:var(--sp-4)}.chip{font-size:.84rem;padding:.38rem .85rem;border-radius:999px;background:var(--card);color:var(--ink-soft)}.chip[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.chapters li,.search-results li{border-bottom:1px solid var(--line)}.chapters{margin:var(--sp-4) 0 var(--sp-5);padding:0;counter-reset:chapter;border-top:1px solid var(--line-strong);min-width:0}.chapters li{margin:0;min-width:0}.chapters a{display:grid;grid-template-columns:3.5rem minmax(0,1fr);column-gap:var(--sp-3);row-gap:.35rem;padding:var(--sp-4) var(--sp-2);margin-inline:calc(var(--sp-2) * -1);text-decoration:none;align-items:start;border-radius:var(--radius);transition:background-color .2s,padding-left .2s,padding-right .2s;min-width:0}.chapters span,.chapters strong{grid-column:2;display:block;margin:0;min-width:0}.chapters a::before{counter-increment:chapter;content:counter(chapter,decimal-leading-zero);grid-column:1;grid-row:1/span 2;font-size:.76rem;font-weight:700;letter-spacing:.08em;padding-top:.28rem}.chapters strong{grid-row:1;font-size:var(--step-1);line-height:1.3;color:var(--ink);transition:color .2s}.chapters span{grid-row:2;max-width:62ch;color:var(--muted);font-family:var(--font-body);font-size:.95rem;line-height:1.6}.chapters a:hover{background:var(--paper-2);padding-left:var(--sp-3);padding-right:var(--sp-3)}.chapters a:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.newsletter{background:var(--accent-2-soft);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--sp-5) var(--sp-4)}.newsletter h2{font-size:var(--step-2);margin-bottom:var(--sp-2)}.newsletter p{color:var(--ink-soft);max-width:56ch}.newsletter form{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:var(--sp-3)}.newsletter input[type=email]{flex:1 1 240px;padding:.7rem .9rem;border-radius:999px;background:var(--card);font-family:var(--font-ui);font-size:.94rem}.newsletter small{display:block;margin-top:var(--sp-2);color:var(--muted);font-family:var(--font-ui)}.search-modal{position:fixed;inset:0;z-index:100;display:none;background:color-mix(in srgb,var(--ink) 45%,transparent);padding:8vh var(--sp-3) var(--sp-3)}.search-modal.is-open{display:block}.search-panel{max-width:640px;margin-inline:auto;background:var(--card);border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden}.search-panel input[type=search]{width:100%;padding:1rem 1.1rem;border:0;border-bottom:1px solid var(--line);background:0 0;font-family:var(--font-ui);font-size:1.05rem}.search-results{margin:0;padding:0;max-height:52vh;overflow-y:auto}.search-results li{margin:0}.search-results a{display:block;padding:.8rem 1.1rem;text-decoration:none}.search-results a:focus,.search-results a:hover{background:var(--paper-2)}.search-results strong{display:block;font-family:var(--font-display);font-size:1.02rem}.search-empty,.search-foot,.search-results span,.tag{font-family:var(--font-ui);color:var(--muted)}.search-results span{display:block;font-size:.78rem}.search-empty{padding:1rem 1.1rem;font-size:.92rem}.search-foot{padding:.6rem 1.1rem;border-top:1px solid var(--line);font-size:.76rem;display:flex;justify-content:space-between}.tags{display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0}.badge,.tag{display:inline-block}.footer-bottom p,.site-footer .footer-col li,.tags li{margin:0}.tag{font-size:.78rem;padding:.28rem .7rem;border:1px solid var(--line-strong);border-radius:999px}.badge,.prevnext span{font-family:var(--font-ui);font-size:.72rem;text-transform:uppercase}.badge,.error-code{color:var(--accent)}.badge{letter-spacing:.08em;padding:.22rem .6rem;border-radius:999px;background:var(--accent-soft);font-weight:650}.prevnext,.rule-top{border-top:1px solid var(--line);padding-top:var(--sp-4)}.paper-block,.site-footer{background:var(--paper-2)}.prevnext{display:grid;gap:var(--sp-3);margin-top:var(--sp-5)}.prevnext a{display:block;text-decoration:none;padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}.prevnext span{display:block;letter-spacing:.1em;color:var(--muted);margin-bottom:.25rem}.prevnext strong{font-family:var(--font-display);font-weight:600}.form-field{display:grid;gap:.35rem;margin-bottom:var(--sp-3)}.form-field label{font-family:var(--font-ui);font-size:.85rem;font-weight:600}.form-field input,.form-field select,.form-field textarea{padding:.7rem .85rem;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--card);font-family:var(--font-ui);font-size:.95rem;max-width:100%}.form-field textarea{min-height:160px;resize:vertical}.error-page{text-align:center;padding-block:var(--sp-7)}.error-code{font-family:var(--font-display);font-size:clamp(4rem,
      18vw,
      9rem);line-height:1;margin:0}.paper-block{border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--sp-4)}[data-theme=dark] .btn{background:var(--ink);border-color:var(--ink);color:var(--paper)!important}[data-theme=dark] .btn:focus-visible,[data-theme=dark] .btn:hover{background:var(--ink-soft);border-color:var(--ink-soft);color:var(--paper)!important}[data-theme=dark] .prose a.btn.btn-ghost,[data-theme=dark] .prose a.btn.btn-ghost:focus-visible,[data-theme=dark] .prose a.btn.btn-ghost:hover,[data-theme=dark] .prose a.btn.btn-ghost:visited{color:var(--ink)!important;text-decoration:none!important}.site-footer{position:relative;margin-top:clamp(4rem,8vw,7rem);border-top:1px solid var(--line-strong);overflow:hidden}.site-footer::before{top:0;left:0;width:min(260px,30vw);height:2px;background:var(--accent)}.footer-main{display:grid;grid-template-columns:minmax(240px,1.6fr) repeat(3,minmax(120px,1fr));gap:clamp(2rem,5vw,5rem);padding-block:clamp(3rem,7vw,5.5rem) clamp(2.5rem,5vw,4rem)}.footer-brand-col,.footer-cta>div,.site-footer .footer-col{min-width:0}.footer-brand{display:inline-flex;align-items:center;gap:.75rem;padding:.65rem .8rem;margin:-.65rem -.8rem .9rem;border:1px solid transparent;border-radius:12px;background:0 0;color:var(--ink);transition:background-color .18s,border-color .18s,transform .18s}.footer-brand:hover{background:var(--card);border-color:var(--line);color:var(--ink);transform:translateY(-1px)}.footer-brand:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.footer-brand-mark{width:38px;height:38px;flex:0 0 auto;color:var(--accent)}.footer-brand-text{display:flex;flex-direction:column;line-height:1.05}.footer-brand-text strong{font-family:var(--font-display);font-size:1.45rem;letter-spacing:-.025em;color:var(--ink)}.footer-brand-text em{margin-top:.22rem;font-family:var(--font-ui);font-size:.59rem;font-style:normal;letter-spacing:.105em;text-transform:uppercase;color:var(--muted)}.footer-description{max-width:31ch;margin:0;color:var(--muted);font-size:.96rem;line-height:1.65}.site-footer .footer-col h3{margin:.15rem 0 1rem;font-family:var(--font-ui);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.site-footer .footer-col ul{display:grid;gap:.58rem;margin:0;padding:0;list-style:none}.site-footer .footer-col a{display:inline-block;color:var(--ink-soft);font-family:var(--font-ui);font-size:.88rem;line-height:1.45;text-decoration:none;transition:color .16s,transform .16s}.site-footer .footer-col a:hover{color:var(--accent);transform:translateX(3px)}.footer-cta{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:1.7rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.footer-cta-kicker{display:block;margin-bottom:.35rem;color:var(--accent);font-family:var(--font-ui);font-size:.66rem;font-weight:700;letter-spacing:.14em}.back-to-top,.footer-cta-link{font-family:var(--font-ui);font-weight:650}.footer-cta strong{display:block;font-family:var(--font-display);font-size:clamp(1.2rem,
      2.2vw,
      1.55rem);line-height:1.2;color:var(--ink)}.footer-cta p{margin:.35rem 0 0;color:var(--muted);font-size:.88rem}.footer-cta-link{display:inline-flex;align-items:center;gap:.65rem;flex:0 0 auto;padding:.7rem 1rem;border:1px solid var(--line-strong);border-radius:999px;background:var(--card);color:var(--ink)!important;font-size:.84rem;transition:border-color .16s,background-color .16s,transform .16s}.footer-cta-link:hover{border-color:var(--ink);background:var(--paper);color:var(--ink)!important;transform:translateY(-1px)}.footer-cta-link>span:last-child{font-size:1.05rem;line-height:1;transition:transform .16s}.footer-cta-link:hover>span:last-child{transform:translateX(3px)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem 2rem;padding-block:1.1rem 1.35rem;font-family:var(--font-ui);font-size:.76rem;color:var(--muted)}.footer-bottom-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.75rem 1rem}.footer-bottom-actions>a{color:var(--muted);text-decoration:none;transition:color .16s}.back-to-top{display:inline-flex;align-items:center;gap:.45rem;margin-left:.25rem;padding:.42rem .62rem .42rem .78rem;border:1px solid var(--line-strong);border-radius:999px;background:0 0;color:var(--ink-soft);font-size:.72rem;opacity:0;visibility:hidden;transform:translateY(5px);transition:opacity .2s,visibility .2s,transform .2s,background-color .16s,border-color .16s,color .16s}.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:var(--card);border-color:var(--ink);color:var(--ink)}.back-to-top:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.back-to-top svg{width:15px;height:15px;flex:0 0 auto}@media (max-width:899px){.footer-main{grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(110px,1fr))}.footer-brand-col{grid-column:1/-1}}@media (max-width:639px){.rows{gap:var(--sp-3)}.row-content{padding:var(--sp-3)}.row-content h3{font-size:1.12rem}.row-content p{font-size:.92rem}.chapters,.chapters a,.row-content,.row-link,.rows{min-width:0;max-width:100%}.btn-row,.row-image{max-width:100%}.chapters a{grid-template-columns:2.5rem minmax(0,1fr);column-gap:var(--sp-2);padding-block:var(--sp-3)}.chapters strong{font-size:1.08rem}.chapters span{font-size:.9rem;line-height:1.55}.footer-main{grid-template-columns:1fr 1fr;gap:2.4rem 1.5rem;padding-block:3rem 2.5rem}.footer-brand-col{grid-column:1/-1}.footer-description{max-width:40ch}.footer-cta{align-items:flex-start;flex-direction:column;gap:1.2rem;padding-block:1.6rem}.footer-cta-link{width:100%;justify-content:space-between}.footer-bottom{align-items:flex-start;flex-direction:column;padding-block:1rem 1.5rem}.footer-bottom-actions{width:100%;justify-content:flex-start}.back-to-top{margin-left:auto}}@media (prefers-reduced-motion:reduce){.back-to-top,.footer-brand,.footer-cta-link,.footer-cta-link>span:last-child,.row-content h3,.row-image,.row-link,.site-footer .footer-col a{transition:none}.row-link:hover,.row-link:hover .row-image{transform:none}}