:root{--bg:#070808;--bg-1:#0d0e0e;--bg-2:#111313;--fg:#f0ead8;--fg-muted:#7a7468;--fg-dim:#3a3730;--green:#5c8f6a;--green-light:#7dba8e;--amber:#c49a52;--amber-light:#e0b96e;--ember:#c9562e;--border:#f0ead814;--border-hover:#f0ead82e;--font-display:"Cormorant Garamond", Georgia, serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--font-body:"Outfit", system-ui, sans-serif;--ease-out:cubic-bezier(.16, 1, .3, 1);--sp-section-y:7rem;--sp-x:3rem;--content-max:1100px;--prose-max:68ch}@media (width<=768px){:root{--sp-section-y:4rem;--sp-x:1.25rem}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-weight:300;line-height:1.7;overflow-x:hidden}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}a:hover{color:var(--fg)}::selection{background:#c49a5259}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--green);border-radius:4px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html{scroll-behavior:auto}}h1,h2,h3,h4{font-family:var(--font-display);font-weight:300;line-height:1.1}h1{font-size:clamp(3rem,7vw,5.5rem)}h2{font-size:clamp(2.2rem,4.5vw,3.6rem)}h3{font-size:clamp(1.5rem,2.5vw,2rem)}em.accent,.accent{color:var(--amber);font-style:italic}.section-label{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--green);align-items:center;gap:12px;margin-bottom:1.5rem;font-size:.68rem;display:flex}.section-label:before{content:"";background:var(--green);width:32px;height:1px;display:block}.mono{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-muted);font-size:.72rem}.lede{color:var(--fg-muted);max-width:52ch;font-size:1.1rem;line-height:1.8}.wrap{max-width:var(--content-max);padding:0 var(--sp-x);margin:0 auto}.section{padding:var(--sp-section-y) 0;border-top:1px solid var(--border)}.section:first-of-type{border-top:none}.grid-2{grid-template-columns:1fr 1fr;gap:4rem;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}@media (width<=860px){.grid-2,.grid-3{grid-template-columns:1fr;gap:2.5rem}}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2rem;margin-bottom:3rem;display:flex}.section-head h2{margin:0}.link{color:var(--fg-muted);border-bottom:1px solid #0000;transition:color .2s,border-color .2s}.link:hover{color:var(--fg);border-color:var(--amber)}.link-arrow:after{content:" →";color:var(--amber)}.btn{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--fg);border:1px solid var(--border-hover);cursor:pointer;background:0 0;padding:.9rem 1.6rem;font-size:.72rem;transition:border-color .2s,background .2s,color .2s;display:inline-block}.btn:hover{border-color:var(--amber);background:#c49a5214}.btn:disabled{opacity:.5;cursor:default}.tags{flex-wrap:wrap;gap:.5rem;display:flex}.tag{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted);border:1px solid var(--border);padding:.3rem .6rem;font-size:.66rem}.card{border:1px solid var(--border);background:var(--bg-1);transition:border-color .25s var(--ease-out), background .25s;padding:1.75rem;display:block}.card:hover{border-color:var(--border-hover);background:var(--bg-2)}.card h3{margin:.5rem 0 .75rem}.card p{color:var(--fg-muted);font-size:.95rem}.card .meta{flex-wrap:wrap;gap:1rem;margin-bottom:.25rem;display:flex}.card .tags{margin-top:1.25rem}.list{gap:1rem;display:grid}.prose{max-width:var(--prose-max);font-size:1.08rem;line-height:1.85}.prose>*+*{margin-top:1.4em}.prose h2{margin-top:2.6em;font-size:clamp(1.8rem,3vw,2.4rem)}.prose h3{margin-top:2em;font-size:1.5rem}.prose h4{font-family:var(--font-body);margin-top:1.8em;font-size:1.05rem;font-weight:500}.prose p,.prose li{color:#d6d0c0}.prose strong{color:var(--fg);font-weight:500}.prose em{font-style:italic}.prose a{color:var(--amber-light);border-bottom:1px solid #e0b96e59}.prose a:hover{border-color:var(--amber-light)}.prose ul,.prose ol{padding-left:1.4em}.prose li+li{margin-top:.4em}.prose blockquote{border-left:2px solid var(--amber);color:var(--fg-muted);font-family:var(--font-display);padding-left:1.25rem;font-size:1.3rem;line-height:1.5}.prose hr{background:var(--border);border:none;height:1px;margin:3em 0}.prose code{font-family:var(--font-mono);background:var(--bg-2);border-radius:3px;padding:.1em .4em;font-size:.85em}.prose pre{background:var(--bg-2);border:1px solid var(--border);padding:1.25rem;font-size:.85rem;line-height:1.6;overflow-x:auto}.prose pre code{font-size:inherit;background:0 0;padding:0}.prose table{border-collapse:collapse;width:100%;font-size:.92rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:.6rem .8rem}.prose th{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-muted);font-size:.68rem}.prose img{margin:0 auto}.site-header{z-index:50;backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#070808d9;position:sticky;top:0}.site-header .wrap{justify-content:space-between;align-items:center;height:64px;display:flex}.site-header .logo{font-family:var(--font-display);letter-spacing:.02em;font-size:1.25rem}.site-header .logo span{color:var(--amber)}.site-header nav{gap:2rem;display:flex}.site-header nav a{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--fg-muted);font-size:.7rem;transition:color .2s}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:var(--fg)}@media (width<=600px){.site-header nav{gap:1.1rem}.site-header nav a{letter-spacing:.1em;font-size:.62rem}}.site-footer{border-top:1px solid var(--border);padding:2.5rem 0}.site-footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:1rem;display:flex}.field{gap:.4rem;display:grid}.field label{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--fg-muted);font-size:.66rem}.field input,.field textarea{border:none;border-bottom:1px solid var(--border-hover);width:100%;color:var(--fg);font-family:var(--font-body);resize:vertical;caret-color:var(--amber);background:0 0;outline:none;padding:.6rem 0;font-size:1rem;font-weight:300;transition:border-color .2s}.field input:focus,.field textarea:focus{border-color:var(--amber)}.form-error{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ember);font-size:.72rem}
