/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-duration:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}.visible{visibility:visible}.sr-only{clip-path:inset(50%)}.static{position:static}.sticky{position:sticky}.z-50{z-index:50}.container{width:100%}.mx-auto{margin-inline:auto}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.h-auto{height:auto}.w-full{width:100%}.max-w-none{max-width:none}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.overflow-hidden{overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-\[var\(--color-border\)\]{border-color:var(--color-border)}.bg-\[var\(--color-bg-primary\)\]{background-color:var(--color-bg-primary)}.object-cover{-o-object-fit:cover;object-fit:cover}.text-center{text-align:center}.text-wrap{text-wrap:wrap}.text-\[var\(--color-accent\)\]{color:var(--color-accent)}.text-\[var\(--color-text-primary\)\]{color:var(--color-text-primary)}.text-\[var\(--color-text-secondary\)\]{color:var(--color-text-secondary)}.text-\[var\(--color-text-tertiary\)\]{color:var(--color-text-tertiary)}.lowercase{text-transform:lowercase}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-300{--tw-duration:.3s;transition-duration:.3s}@media (hover:hover){.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:text-\[var\(--color-accent\)\]:hover{color:var(--color-accent)}.hover\:text-\[var\(--color-accent-dark\)\]:hover{color:var(--color-accent-dark)}.hover\:text-\[var\(--color-text-primary\)\]:hover{color:var(--color-text-primary)}}:root{--font-body:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-display:var(--font-body);--font-mono:"SF Mono","Monaco","Inconsolata","Fira Code","Droid Sans Mono","Source Code Pro",monospace;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.75;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-full:9999px;--color-bg-primary:#fff;--color-bg-secondary:#f9fafb;--color-bg-tertiary:#f3f4f6;--color-text-primary:#111827;--color-text-secondary:#6b7280;--color-text-tertiary:#9ca3af;--color-border-light:#f3f4f6;--color-border:#e5e7eb;--color-border-dark:#d1d5db;--color-accent:#f97316;--color-accent-light:#fb923c;--color-accent-dark:#ea580c;--background:var(--color-bg-primary);--foreground:var(--color-text-primary)}@media (prefers-color-scheme:dark){:root{--color-bg-primary:#0f172a;--color-bg-secondary:#1e293b;--color-bg-tertiary:#334155;--color-text-primary:#f1f5f9;--color-text-secondary:#94a3b8;--color-text-tertiary:#64748b;--color-border-light:#334155;--color-border:#475569;--color-border-dark:#64748b;--color-accent:#fb923c;--color-accent-light:#fdba74;--color-accent-dark:#f97316}}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);line-height:var(--line-height-normal);background-color:var(--color-bg-primary);transition:background-color .3s,color .3s}body,h1,h2,h3,h4,h5,h6{color:var(--color-text-primary)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:var(--line-height-tight);margin-bottom:var(--space-4)}h1{letter-spacing:-.02em;font-size:clamp(2rem,5vw,3rem);font-weight:700}h2{letter-spacing:-.01em;font-size:clamp(1.5rem,4vw,2.25rem)}h3{font-size:clamp(1.25rem,3vw,1.75rem)}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}p{margin-bottom:var(--space-4);color:var(--color-text-secondary)}a{color:var(--color-accent);text-decoration:none;transition:color .2s}a:hover{color:var(--color-accent-dark)}a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}b,strong{color:var(--color-text-primary);font-weight:600}em,i{font-style:italic}code{border-radius:var(--radius-sm);color:var(--color-text-primary);padding:.125rem .375rem;font-size:.875em}code,pre{font-family:var(--font-mono);background-color:var(--color-bg-secondary)}pre{padding:var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-6);border:1px solid var(--color-border);font-size:.875rem;overflow-x:auto}pre code{background-color:#0000;padding:0}blockquote{border-left:4px solid var(--color-accent);padding-left:var(--space-4);margin:var(--space-6)0;font-style:italic}blockquote,ol,ul{color:var(--color-text-secondary)}ol,ul{margin-bottom:var(--space-4);padding-left:var(--space-6)}li{margin-bottom:var(--space-2)}.container{max-width:1280px;padding:0 var(--space-6);margin:0 auto}@media (min-width:640px){.container{padding:0 var(--space-8)}}.container-narrow{max-width:768px}.container-narrow,.container-wide{padding:0 var(--space-6);margin:0 auto}.container-wide{max-width:1440px}main{min-height:calc(100vh - 200px);padding:var(--space-12)0}section{margin-bottom:var(--space-16)}.mt-auto{margin-top:auto}.mb-auto{margin-bottom:auto}.text-balance{text-wrap:balance}.text-gradient{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-light));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.focus-ring:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.card{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);transition:all .2s}.card:hover{border-color:var(--color-border-dark);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.btn{padding:var(--space-3)var(--space-6);border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;font-size:1rem;font-weight:500;line-height:1.5;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--color-accent);color:#fff}.btn-primary:hover{background-color:var(--color-accent-dark);color:#fff}.btn-secondary{background-color:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover{background-color:var(--color-bg-tertiary);border-color:var(--color-border-dark)}.tag{padding:var(--space-1)var(--space-3);background-color:var(--color-bg-secondary);color:var(--color-text-secondary);border-radius:var(--radius-full);font-size:.875rem;font-weight:500;transition:all .2s;display:inline-block}.tag:hover{background-color:var(--color-accent);color:#fff}.divider{background-color:var(--color-border);height:1px;margin:var(--space-8)0}.skip-to-main{z-index:999;padding:var(--space-4);background-color:var(--color-accent);color:#fff;text-decoration:none;position:absolute;top:0;left:-9999px}.skip-to-main:focus{left:0}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease-out}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.prose{max-width:65ch;line-height:var(--line-height-relaxed)}.prose img{border-radius:var(--radius-lg);margin:var(--space-8)0}.prose hr{background-color:var(--color-border);height:1px;margin:var(--space-12)0;border:none}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}