:root{--bg-void: #08080a;--bg-base: #0c0c0e;--bg-surface: #131316;--bg-elevated: #1a1a1f;--bg-hover: #222228;--text-primary: #e8e6e3;--text-secondary: #9e9a93;--text-tertiary: #5e5b55;--text-ghost: #3a3835;--accent: #daa53a;--accent-bright: #edc05a;--accent-dim: #a47d2a;--accent-glow: rgba(218, 165, 58, .14);--accent-glow-strong: rgba(218, 165, 58, .28);--github: #e6edf3;--gitlab: #fc6d26;--border-subtle: rgba(255, 255, 255, .05);--border-default: rgba(255, 255, 255, .08);--border-accent: rgba(218, 165, 58, .32);--font-mono: "JetBrains Mono", ui-monospace, monospace;--font-body: "Libre Franklin", "Helvetica Neue", sans-serif;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--space-3xl: 6rem;--space-4xl: 10rem;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-body);font-weight:400;line-height:1.6;color:var(--text-primary);background-color:var(--bg-void);overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.03) 1px,transparent 0);background-size:32px 32px;pointer-events:none;z-index:0}body:after{content:"";position:fixed;inset:0;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px;pointer-events:none;z-index:0}body>*{position:relative;z-index:1}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{max-width:1200px;margin:0 auto;padding:0 var(--space-lg)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.btn{display:inline-flex;align-items:center;gap:var(--space-sm);font-family:var(--font-mono);font-size:.8125rem;font-weight:500;letter-spacing:.01em;border-radius:6px;padding:.5rem 1.125rem;transition:all .25s var(--ease-out-quart);cursor:pointer;border:none;white-space:nowrap;text-decoration:none}.btn-sm{padding:.4rem .875rem;font-size:.75rem}.btn-lg{padding:.75rem 1.5rem;font-size:.875rem}.btn-primary{background:var(--accent);color:var(--bg-void)}.btn-primary:hover{background:var(--accent-bright);box-shadow:0 0 24px var(--accent-glow-strong)}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border-default)}.btn-ghost:hover{color:var(--text-primary);border-color:var(--text-tertiary);background:var(--bg-surface)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease-out-expo),transform .8s var(--ease-out-expo)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.reveal-delay-5{transition-delay:.5s}.reveal-delay-6{transition-delay:.6s}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-void)}::-webkit-scrollbar-thumb{background:var(--bg-hover);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}::selection{background:var(--accent-glow-strong);color:var(--accent-bright)}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Regular.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Medium.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Libre Franklin;src:url(/fonts/LibreFranklin-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Libre Franklin;src:url(/fonts/LibreFranklin-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Libre Franklin;src:url(/fonts/LibreFranklin-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Libre Franklin;src:url(/fonts/LibreFranklin-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Libre Franklin;src:url(/fonts/LibreFranklin-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Libre Franklin;src:url(/fonts/LibreFranklin-LightItalic.woff2) format("woff2");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Libre Franklin;src:url(/fonts/LibreFranklin-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}.navbar[data-astro-cid-5blmo7yk]{position:fixed;top:0;left:0;right:0;z-index:100;padding:var(--space-lg) 0;transition:all .4s var(--ease-out-expo);background:transparent}.navbar--scrolled[data-astro-cid-5blmo7yk]{padding:var(--space-sm) 0;background:#08080ad9;backdrop-filter:blur(16px) saturate(1.5);-webkit-backdrop-filter:blur(16px) saturate(1.5);border-bottom:1px solid var(--border-subtle)}.navbar-inner[data-astro-cid-5blmo7yk]{display:flex;align-items:center;justify-content:space-between}.navbar-brand[data-astro-cid-5blmo7yk]{display:flex;align-items:center;gap:var(--space-xs);font-family:var(--font-mono);font-size:1.1rem;font-weight:500;letter-spacing:-.02em}.brand-wordmark[data-astro-cid-5blmo7yk]{height:1.25em;width:auto;display:block}.brand-logomark[data-astro-cid-5blmo7yk]{height:24px;width:auto;display:block}.navbar-links[data-astro-cid-5blmo7yk]{display:flex;gap:var(--space-xl);font-size:.875rem;color:var(--text-secondary)}.navbar-links[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk]{transition:color .2s}.navbar-links[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk]:hover{color:var(--text-primary)}@media(max-width:640px){.navbar-links[data-astro-cid-5blmo7yk]{display:none}}.footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--border-subtle);padding:var(--space-2xl) 0}.footer-inner[data-astro-cid-sz7xmlte]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-md)}.footer-brand[data-astro-cid-sz7xmlte]{display:flex;align-items:center}.footer-brand[data-astro-cid-sz7xmlte] .brand-wordmark[data-astro-cid-sz7xmlte]{height:1rem}.footer-links[data-astro-cid-sz7xmlte]{display:flex;gap:var(--space-xl);font-size:.8125rem;color:var(--text-secondary)}.footer-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--text-primary)}.footer-copy[data-astro-cid-sz7xmlte]{font-family:var(--font-mono);font-size:.6875rem;color:var(--text-ghost)}@media(max-width:640px){.footer-inner[data-astro-cid-sz7xmlte]{flex-direction:column;text-align:center}}
