@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Outfit:wght@400;500;600;700&display=swap";:root{--bg:#161616;--bg-elevated:#18181b;--bg-glass:rgba(24,24,27,.72);--border:hsla(0,0%,100%,.06);--border-strong:hsla(0,0%,100%,.1);--text:#e4e4e7;--text-muted:#a1a1aa;--accent:#059669;--accent-soft:rgba(5,150,105,.14);--accent-hover:#10b981;--ease:cubic-bezier(.16,1,.3,1);--radius-lg:1.25rem;--shadow-diffuse:0 20px 40px -15px rgba(0,0,0,.35);font-synthesis:none}*,:after,:before{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:Outfit,system-ui,sans-serif;line-height:1.6;margin:0;-webkit-font-smoothing:antialiased}body:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cfilter id='a'%3E%3CfeTurbulence baseFrequency='.85' numOctaves='4' stitchTiles='stitch' type='fractalNoise'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");content:"";inset:0;opacity:.04;pointer-events:none;position:fixed;z-index:0}.site-shell{display:flex;flex-direction:column;min-height:100dvh;position:relative;z-index:1}.site-header{backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);background:var(--bg-glass);border-bottom:1px solid var(--border);box-shadow:inset 0 1px #ffffff0f,0 1px #0003;position:sticky;top:0;z-index:10}.wrapper{margin:0 auto;max-width:min(1400px,100%);padding:0 clamp(1rem,4vw,2rem)}.header-inner{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;padding:1rem 0}.brand{color:var(--text);font-family:JetBrains Mono,ui-monospace,monospace;font-size:.95rem;font-weight:500;letter-spacing:-.02em;text-decoration:none;transition:color .35s var(--ease)}.brand:hover{color:var(--accent-hover)}.menu{align-items:center;display:flex;flex-wrap:wrap;gap:.25rem 1.25rem;justify-content:flex-end}.menu a{border-bottom:1px solid transparent;color:var(--text-muted);font-size:.9375rem;font-weight:500;padding:.35rem 0;text-decoration:none;transition:color .35s var(--ease),border-color .35s var(--ease),transform .2s var(--ease)}.menu a:hover{color:var(--text)}.menu a:active{transform:translateY(1px) scale(.98)}.menu a.active{border-bottom-color:var(--accent);color:var(--text)}main{flex:1}.site-footer{background:#09090b8c;border-top:1px solid var(--border)}.footer-inner{align-items:center;gap:1rem 1.5rem;justify-content:space-between;padding:1.1rem 0 1.3rem}.footer-inner,.footer-menu{display:flex;flex-wrap:wrap}.footer-menu{gap:.4rem 1.15rem}.footer-menu a{border-bottom:1px solid transparent;color:var(--text-muted);font-size:.86rem;text-decoration:none;transition:color .25s var(--ease),border-color .25s var(--ease)}.footer-menu a:hover{border-bottom-color:#ffffff26;color:var(--text)}.home-content{margin:0 auto;max-width:min(1200px,100%);padding:clamp(2rem,6vw,4rem) clamp(1rem,4vw,2rem) clamp(4rem,10vw,6rem)}.hero{margin-bottom:clamp(3rem,8vw,5rem)}.hero-grid{align-items:start;display:grid;gap:clamp(2rem,5vw,3.5rem);grid-template-columns:1fr}@media(min-width:768px){.hero-grid{gap:clamp(2rem,6vw,4rem);grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}}.hero-kicker{color:var(--accent);font-family:JetBrains Mono,ui-monospace,monospace;font-size:.75rem;font-weight:500;letter-spacing:.12em;margin:0 0 1rem;text-transform:uppercase}.hero h1{color:var(--text);font-size:clamp(2.25rem,5vw,3.75rem);font-weight:700;letter-spacing:-.03em;line-height:1.05;margin:0 0 1.25rem}.hero-lede{color:var(--text-muted);font-size:1.0625rem;line-height:1.75;margin:0;max-width:38rem}.hero-aside{display:none}@media(min-width:768px){.hero-aside{background:linear-gradient(145deg,var(--bg-elevated) 0,rgba(24,24,27,.5) 100%);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-diffuse),inset 0 1px #ffffff0d;display:block;height:clamp(12rem,24vw,15rem);overflow:hidden;position:relative}.hero-aside img{display:block;height:100%;inset:0;-o-object-fit:contain;object-fit:contain;position:absolute;transform:scale(.9);transform-origin:center;width:100%}.hero-aside:after{background-image:linear-gradient(90deg,var(--border) 1px,transparent 1px),linear-gradient(var(--border) 1px,transparent 1px);background-size:24px 24px;content:"";inset:0;opacity:.35;pointer-events:none;position:absolute}}.posts-section{margin-top:.5rem}.posts-grid{display:grid;gap:1.25rem;grid-template-columns:1fr}@media(min-width:768px){.posts-grid{gap:1.25rem 1.75rem;grid-template-columns:1.4fr 1fr}}.card{background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-diffuse),inset 0 1px #ffffff0a;transition:border-color .35s var(--ease),box-shadow .35s var(--ease),transform .25s var(--ease)}.card:hover{border-color:#05966959;box-shadow:var(--shadow-diffuse),inset 0 1px #ffffff0f,0 0 0 1px #05966914}.card:active{transform:scale(.99)}.card a{align-items:start;color:inherit;display:grid;gap:1rem;grid-template-columns:200px 1fr;height:100%;padding:1.5rem 1.75rem;text-decoration:none}.card-media{width:200px}.card-cover{aspect-ratio:16/9;border:1px solid var(--border);border-radius:.6rem;display:block;-o-object-fit:cover;object-fit:cover;width:100%}.card-cover--placeholder{background:#ffffff08}.card-content{min-width:0}.card h2{color:var(--text);font-size:1.25rem;font-weight:600;letter-spacing:-.02em;line-height:1.3;margin:0 0 .5rem;transition:color .35s var(--ease)}.card:hover h2{color:var(--accent-hover)}.card-description{color:var(--text-muted);font-size:.9375rem;line-height:1.65;margin:0 0 .5rem;max-width:65ch}.card-date{color:#e4e4e794;font-size:.78rem;margin:0}@media(max-width:767px){.card a{grid-template-columns:1fr}.card-media{width:100%}}@media(min-width:768px){.posts-grid .card:nth-child(3n+1){grid-column:1/-1}}.home-content :deep(img),.home-content :deep(video){border-radius:.5rem;height:auto;max-width:100%}.home-content .article-figure:not([data-article-figure]){margin:1.75rem auto;max-width:100%;text-align:center}.home-content .article-figure:not([data-article-figure]) img{border-radius:.5rem;display:block;height:auto;margin-left:auto;margin-right:auto;max-width:min(50%,28rem);width:100%}.home-content .article-figure:not([data-article-figure]) figcaption{color:var(--text-muted);font-size:.875rem;line-height:1.5;margin-left:auto;margin-right:auto;margin-top:.65rem;max-width:42ch}.home-content :deep(pre){background:var(--bg);border:1px solid var(--border);border-radius:.75rem;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.875rem;max-width:100%;overflow-x:auto;padding:1rem 1.25rem}.home-content :deep(code){font-family:JetBrains Mono,ui-monospace,monospace;font-size:.9em}.home-content :deep(p){color:var(--text-muted);max-width:65ch}.home-content :deep(h1),.home-content :deep(h2),.home-content :deep(h3){color:var(--text);letter-spacing:-.02em}.home-content :deep(h1){font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;line-height:1.15;margin-top:0}.home-content :deep(blockquote a),.home-content :deep(li a),.home-content :deep(p a),.home-content :deep(td a){border-bottom:1px solid rgba(16,185,129,.35);color:var(--accent-hover);text-decoration:none;transition:border-color .25s var(--ease),color .25s var(--ease)}.home-content :deep(blockquote a:hover),.home-content :deep(li a:hover),.home-content :deep(p a:hover),.home-content :deep(td a:hover){border-bottom-color:var(--accent-hover)}.article-post{animation:fade-up .65s var(--ease) both}.article-ad{margin:1.5rem 0 2rem;padding:.5rem 0}.article-ad--middle{margin-top:2.75rem}.article-ad--bottom{margin-bottom:.5rem;margin-top:1.5rem}.adsense-block{background:#ffffff03;border:1px dashed hsla(0,0%,100%,.12);border-radius:.6rem;min-height:90px;width:100%}.home-content :deep(h2){border-bottom:1px solid var(--border);font-size:clamp(1.25rem,2.5vw,1.5rem);font-weight:600;line-height:1.25;margin:2.75rem 0 1rem;padding-bottom:.5rem}.home-content :deep(h2:first-of-type){margin-top:0}.home-content :deep(h3){color:var(--text);font-size:1.125rem;font-weight:600;margin:2rem 0 .75rem}.home-content :deep(h4){color:var(--text-muted);font-size:1rem;font-weight:600;margin:1.5rem 0 .5rem}.home-content :deep(h1 a),.home-content :deep(h2 a),.home-content :deep(h3 a),.home-content :deep(h4 a){border-bottom:none;color:inherit;text-decoration:none}.home-content :deep(h1 a:hover),.home-content :deep(h2 a:hover),.home-content :deep(h3 a:hover),.home-content :deep(h4 a:hover){border-bottom:none;color:inherit}.home-content :deep(h1 a[href]),.home-content :deep(h1>a),.home-content :deep(h2 a[href]),.home-content :deep(h2>a),.home-content :deep(h3 a[href]),.home-content :deep(h3>a),.home-content :deep(h4 a[href]),.home-content :deep(h4>a){border:0!important;box-shadow:none!important;color:inherit!important;text-decoration:none!important}.article-post h1 a,.article-post h2 a,.article-post h3 a,.article-post h4 a,.home-content h1 a,.home-content h2 a,.home-content h3 a,.home-content h4 a{border:0!important;box-shadow:none!important;color:inherit!important;text-decoration:none!important}.article-post h1 a:hover,.article-post h2 a:hover,.article-post h3 a:hover,.article-post h4 a:hover,.home-content h1 a:hover,.home-content h2 a:hover,.home-content h3 a:hover,.home-content h4 a:hover{border-bottom:0!important;color:inherit!important;text-decoration:none!important}.home-content blockquote a,.home-content li a,.home-content p a,.home-content td a{border-bottom:1px solid rgba(16,185,129,.35);color:var(--accent-hover);text-decoration:none;transition:border-color .25s var(--ease),color .25s var(--ease)}.home-content blockquote a:hover,.home-content li a:hover,.home-content p a:hover,.home-content td a:hover{border-bottom-color:var(--accent-hover)}.home-content :deep(hr){background:#ffffff14;border:none;height:1px;margin:1rem 0;opacity:.35}.article-post hr,.home-content hr{background:#ffffff14!important;border:0!important;height:1px!important;margin:2rem 0!important;opacity:.95!important}.home-content :deep(ol),.home-content :deep(ul){color:var(--text-muted);margin:1rem 0 1.25rem;max-width:65ch;padding-left:1.35rem}.home-content :deep(li){line-height:1.65;margin:.45rem 0}.home-content :deep(li)::marker{color:var(--accent)}.home-content :deep(blockquote){background:#18181ba6;border-left:3px solid rgba(5,150,105,.45);border-radius:0 .5rem .5rem 0;color:var(--text-muted);margin:1.5rem 0;padding:1rem 1.25rem}.home-content :deep(blockquote p){margin:0}.home-content :deep(table){background:var(--bg-elevated);border:1px solid var(--border-strong);border-collapse:collapse;border-radius:var(--radius-lg);box-shadow:var(--shadow-diffuse);font-size:.9375rem;margin:1.5rem 0;max-width:min(100%,52rem);overflow:hidden;width:100%}.home-content :deep(thead){background:#09090bd9}.home-content :deep(td),.home-content :deep(th){border-bottom:1px solid var(--border);padding:.75rem 1rem;text-align:left;vertical-align:top}.home-content :deep(th){color:var(--text-muted);font-family:JetBrains Mono,ui-monospace,monospace;font-size:.8125rem;font-weight:500;letter-spacing:.02em;text-transform:uppercase}.home-content :deep(td){color:var(--text-muted)}.home-content :deep(tbody tr:last-child td){border-bottom:none}.home-content :deep(tbody tr:hover td){background:#0596690a}.home-content :deep(pre code){background:none;border:none;display:block;font-size:inherit;line-height:1.6;padding:0}.home-content :deep(.shiki code span),.home-content :deep(.shiki code),.home-content :deep(.shiki),.home-content :deep(pre code span),.home-content :deep(pre code),.home-content :deep(pre){color:var(--text)!important}.home-content pre.shiki code .line,.home-content pre.shiki code .line>span,.home-content pre.shiki code span[class]{color:var(--text)!important}.home-content :deep(:not(pre)>code){background:var(--bg-elevated);border:1px solid var(--border);border-radius:.35rem;color:var(--accent-hover);font-size:.88em;padding:.12em .45em}.home-content :deep(strong){color:var(--text);font-weight:600}@keyframes fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.hero-grid{animation:fade-up .7s var(--ease) both}.card{animation:fade-up .65s var(--ease) both}.card:first-child{animation-delay:.05s}.card:nth-child(2){animation-delay:.12s}.card:nth-child(3){animation-delay:.19s}.card:nth-child(4){animation-delay:.26s}.card:nth-child(5){animation-delay:.33s}.card:nth-child(6){animation-delay:.4s}.card:nth-child(n+7){animation-delay:.45s}
