.line-clamp-1{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.line-clamp-2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.date-pill.svelte-h2j25d{--pill-bg:color-mix( in oklab, var(--accent, color-mix(in oklab, canvas, black 6%)), transparent 85% );--pill-br:color-mix(in oklab, var(--accent, color-mix(in oklab, canvas, black 8%)), black 5%);padding:.25rem .5rem;border-radius:999px;border:1px solid var(--pill-br);background:var(--pill-bg);font-size:.75rem;line-height:1;white-space:nowrap;color:inherit}.snippet-html.svelte-h2j25d h1,.snippet-html.svelte-h2j25d h2,.snippet-html.svelte-h2j25d h3,.snippet-html.svelte-h2j25d h4{font-size:1em;font-weight:600;margin:0;line-height:1.4}.snippet-html.svelte-h2j25d p,.snippet-html.svelte-h2j25d ul,.snippet-html.svelte-h2j25d ol,.snippet-html.svelte-h2j25d blockquote{margin:0}.snippet-html.svelte-h2j25d code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;padding:.1em .3em;border-radius:.3rem;background:#f3f4f6;border:1px solid #e5e7eb}html.dark .snippet-html.svelte-h2j25d code{background:#111827;border-color:#1f2937}.snippet-raw.svelte-h2j25d{white-space:normal;word-break:break-word}.hero-animated-bg.svelte-h2j25d{background-size:300% 300%;animation:svelte-h2j25d-gradient-shift 6s ease infinite}@keyframes svelte-h2j25d-gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.fade-up.svelte-h2j25d{opacity:0;transform:translateY(10px);animation:svelte-h2j25d-fadeUp 1s ease-out forwards}@keyframes svelte-h2j25d-fadeUp{to{opacity:1;transform:translateY(0)}}.fade-in-section.svelte-h2j25d{animation:svelte-h2j25d-fadeIn 1s ease-out both}@keyframes svelte-h2j25d-fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.btn.svelte-h2j25d{transition:transform .2s ease,background-color .2s ease}.btn.svelte-h2j25d:hover{transform:scale(1.03)}.btn-bounce.svelte-h2j25d{animation:svelte-h2j25d-bounceIn .6s ease-out both}@keyframes svelte-h2j25d-bounceIn{0%{transform:scale(.9);opacity:0}60%{transform:scale(1.05);opacity:1}to{transform:scale(1)}}