:root{--bg:#fdf8f2;--ink:#2a2420;--ink-soft:#3a332d;--muted:#6b6256;--muted-2:#7b7164;--faint:#a19484;--faint-2:#9a8e80;--line:#efe3d2;--line-2:#ecdfce;--coral:#d9694a;--coral-deep:#c4583b;--coral-light:#e88b6f;--rust:#b5663e;--cream-chip:#fbeedf;--chip-border:#f1ddc4;--font-display:"Bricolage Grotesque", sans-serif;--font-body:"Hanken Grotesk", sans-serif;--font-serif:"Newsreader", serif;--font-mono:"JetBrains Mono", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0}::selection{color:#2a2420;background:#f2c6a6}a{color:inherit}.article-body{color:var(--ink-soft);font-size:18.5px;line-height:1.75}.article-body>:first-child{margin-top:0}.article-body p{margin:0 0 24px}.article-body em{font-style:italic}.article-body h2{font-family:var(--font-display);letter-spacing:-.02em;margin:44px 0 16px;font-size:30px;font-weight:700;line-height:1.15}.article-body a{color:var(--coral);font-weight:600;text-decoration:none}.article-body a:hover{text-decoration:underline}.article-body blockquote{border-left:4px solid var(--coral);margin:36px 0;padding:6px 0 6px 28px}.article-body blockquote p{font-family:var(--font-serif);color:var(--ink);margin:0;font-size:25px;font-style:italic;line-height:1.45}.article-body ul{margin:0 0 24px;padding-left:22px}.article-body li{margin-bottom:10px}.article-body pre{background:#2a2420;border-radius:16px;margin:32px 0;padding:24px 26px;overflow-x:auto}.article-body pre code{font-family:var(--font-mono);color:#e8dfd3;white-space:pre;background:0 0;font-size:14px;line-height:1.7}.article-body code{font-family:var(--font-mono);color:var(--rust);background:#fbeedf;border-radius:6px;padding:2px 6px;font-size:.92em}.nav-link{color:#5c5247;font-size:15px;font-weight:500;text-decoration:none;transition:color .15s}.nav-link:hover{color:var(--coral)}.nav-link[data-active=true]{color:var(--coral);font-weight:600}.foot-link{color:var(--muted-2);font-size:14px;font-weight:500;text-decoration:none;transition:color .15s}.foot-link:hover{color:var(--coral)}.btn-dark{transition:background .15s}.btn-dark:hover{background:var(--coral)!important}.btn-coral{transition:background .15s}.btn-coral:hover{background:var(--coral-deep)!important}.btn-coral-light{transition:background .15s}.btn-coral-light:hover{background:var(--coral-light)!important}.btn-outline{transition:border-color .15s,color .15s}.btn-outline:hover{border-color:var(--coral)!important;color:var(--coral)!important}.btn-outline-dark{transition:border-color .15s}.btn-outline-dark:hover{border-color:#fdf8f2!important}.card-lift{transition:transform .2s,box-shadow .2s}.card-lift:hover{transform:translateY(-4px);box-shadow:0 18px 40px #b4663e29}.card-lift-lg:hover{transform:translateY(-4px);box-shadow:0 22px 46px #b4663e29}.app-card{transition:border-color .15s}.app-card:hover{border-color:#e8a53d!important}.row-card{transition:border-color .15s}.row-card:hover{border-color:var(--coral)!important}.back-link{transition:color .15s}.back-link:hover{color:var(--coral)!important}.icon-btn{transition:color .15s,border-color .15s}.icon-btn:hover{color:var(--coral);border-color:var(--coral)}.all-posts{transition:gap .15s}.all-posts:hover{gap:11px}@media (width<=860px){.blog-grid-2,.blog-grid-3,.blog-hero,.blog-featured{grid-template-columns:1fr!important}.blog-display-xl{font-size:40px!important}.blog-display-lg{font-size:34px!important}.blog-nav-links{gap:18px!important}.blog-hide-sm{display:none!important}}@media (width<=560px){.blog-grid-3{grid-template-columns:1fr!important}}
